{"id":20521641,"url":"https://github.com/tedivm/ec2details","last_synced_at":"2025-04-14T02:37:09.375Z","repository":{"id":28948631,"uuid":"119785366","full_name":"tedivm/ec2details","owner":"tedivm","description":"API providing AWS EC2 Instance Type Data","archived":false,"fork":false,"pushed_at":"2022-11-22T00:23:43.000Z","size":17275,"stargazers_count":40,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-05-01T21:37:38.917Z","etag":null,"topics":["api","aws-ec2"],"latest_commit_sha":null,"homepage":"https://tedivm.github.io/ec2details/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tedivm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-02-01T05:02:38.000Z","updated_at":"2024-04-02T17:40:50.000Z","dependencies_parsed_at":"2023-01-14T14:00:25.997Z","dependency_job_id":null,"html_url":"https://github.com/tedivm/ec2details","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tedivm%2Fec2details","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tedivm%2Fec2details/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tedivm%2Fec2details/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tedivm%2Fec2details/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tedivm","download_url":"https://codeload.github.com/tedivm/ec2details/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224853249,"owners_count":17380679,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","aws-ec2"],"created_at":"2024-11-15T22:30:42.726Z","updated_at":"2024-11-15T22:32:14.026Z","avatar_url":"https://github.com/tedivm.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ec2details\n\nThis service is the easiest way to get a list of AWS EC2 Instance Types with metadata and prices.\n\n## The API\n\nThe API currently serves the data in two formats, with each using the same data structure.\n\n- json: [https://tedivm.github.io/ec2details/api/ec2instances.json](https://tedivm.github.io/ec2details/api/ec2instances.json)\n\n- yaml: [https://tedivm.github.io/ec2details/api/ec2instances.yaml](https://tedivm.github.io/ec2details/api/ec2instances.yaml)\n\nIn both cases the instance type is the key, with attributes existing under that. Not every instance will have every attribute (as an example, only the `p` and `g` families have a `gpu` field), so it is important to check for both the existence of the field as well as the value.\n\nPricing is in USD and is broken down by region, operating system (Linux, RHEL, SUSE, or Windows), and tenancy (Dedicated or Shared).\n\n```yaml\na1.2xlarge:\n  clockSpeed: 2.3 GHz\n  currentGeneration: true\n  dedicatedEbsThroughput: Up to 3500 Mbps\n  enhancedNetworkingSupported: true\n  memory: 16 GiB\n  networkPerformance: Up to 10 Gigabit\n  normalizationSizeFactor: 16\n  physicalProcessor: AWS Graviton Processor\n  prices:\n    Linux:\n      ap-northeast-1:\n        Dedicated: 0.2743\n        Shared: 0.2568\n      ap-south-1:\n        Dedicated: 0.217\n        Shared: 0.204\n      ap-southeast-1:\n        Dedicated: 0.2501\n        Shared: 0.2352\n      ap-southeast-2:\n        Dedicated: 0.2825\n        Shared: 0.2664\n      eu-central-1:\n        Dedicated: 0.248\n        Shared: 0.2328\n      eu-west-1:\n        Dedicated: 0.2454\n        Shared: 0.2304\n      us-east-1:\n        Dedicated: 0.2162\n        Shared: 0.204\n      us-east-2:\n        Dedicated: 0.2162\n        Shared: 0.204\n      us-west-2:\n        Dedicated: 0.2162\n        Shared: 0.204\n    RHEL:\n      ap-northeast-1:\n        Dedicated: 0.4043\n        Shared: 0.3868\n      ap-south-1:\n        Dedicated: 0.347\n        Shared: 0.334\n      ap-southeast-1:\n        Dedicated: 0.3801\n        Shared: 0.3652\n      ap-southeast-2:\n        Dedicated: 0.4125\n        Shared: 0.3964\n      eu-central-1:\n        Dedicated: 0.378\n        Shared: 0.3628\n      eu-west-1:\n        Dedicated: 0.3754\n        Shared: 0.3604\n      us-east-1:\n        Dedicated: 0.3462\n        Shared: 0.334\n      us-east-2:\n        Dedicated: 0.3462\n        Shared: 0.334\n      us-west-2:\n        Dedicated: 0.3462\n        Shared: 0.334\n    RHEL_HA:\n      ap-northeast-1:\n        Dedicated: 0.4372\n        Shared: 0.4218\n      ap-south-1:\n        Dedicated: 0.3812\n        Shared: 0.369\n      ap-southeast-1:\n        Dedicated: 0.4143\n        Shared: 0.4002\n      ap-southeast-2:\n        Dedicated: 0.4474\n        Shared: 0.4314\n      eu-central-1:\n        Dedicated: 0.4118\n        Shared: 0.3978\n      eu-west-1:\n        Dedicated: 0.4092\n        Shared: 0.3954\n      us-east-1:\n        Dedicated: 0.3812\n        Shared: 0.369\n      us-east-2:\n        Dedicated: 0.3812\n        Shared: 0.369\n      us-west-2:\n        Dedicated: 0.3812\n        Shared: 0.369\n    SUSE:\n      ap-northeast-1:\n        Dedicated: 0.4243\n        Shared: 0.4068\n      ap-south-1:\n        Dedicated: 0.367\n        Shared: 0.354\n      ap-southeast-1:\n        Dedicated: 0.4001\n        Shared: 0.3852\n      ap-southeast-2:\n        Dedicated: 0.4325\n        Shared: 0.4164\n      eu-central-1:\n        Dedicated: 0.398\n        Shared: 0.3828\n      eu-west-1:\n        Dedicated: 0.3954\n        Shared: 0.3804\n      us-east-1:\n        Dedicated: 0.3662\n        Shared: 0.354\n      us-east-2:\n        Dedicated: 0.3662\n        Shared: 0.354\n      us-west-2:\n        Dedicated: 0.3662\n        Shared: 0.354\n  regions:\n    - ap-southeast-2\n    - ap-northeast-1\n    - ap-southeast-1\n    - us-west-2\n    - us-east-2\n    - us-east-1\n    - ap-south-1\n    - eu-central-1\n    - eu-west-1\n  storage: EBS only\n  vcpu: 8\n```\n\n\n## How it's Generated\n\nThe data is generated from the EC2 services published in the [AWS Bulk API](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/using-ppslong.html), which is a giant (\u003e2.8G) json file that gets updated anytime there's a change in the EC2 service (new instances, price reductions, additional regions, etc).\n\nBesides being huge, this file is that it is horribly obtuse (requiring [custom tools](http://blog.tedivm.com/open-source/2017/05/introducing-jsonsmash-work-with-large-json-files-easily/) simply to read it). This service uses takes the data in that file and converts it into a simpler data structure.\n\nThe data is regenerated four times a day using a scheduled [CircleCI job](https://circleci.com/gh/tedivm/ec2details) and published using [Github pages](https://tedivm.github.io/ec2details/). During each run the scheduled CircleCI job regenerates the static API files and, if there is a change, pushes those files back up to the master branch of the git repository to update the Github Pages site.\n\nThe resulting files are less than 0.1% of the size of the original, and are much easier to parse. Since the files are static and served over the Github CDN they are also quick to download.\n\n\n## About\n\nThis project is [hosted on Github](https://github.com/tedivm/ec2details) under the [MIT License](https://github.com/tedivm/ec2details/blob/master/LICENSE).\n\nIt was created by [Robert Hafner](https://blog.tedivm.com/), who you can find on [Github](https://github.com/tedivm) and [Twitter](https://twitter.com/tedivm).\n\n\n\u003cscript defer data-domain=\"tedivm.github.io/ec2details\" src=\"https://plausible.io/js/plausible.js\"\u003e\u003c/script\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftedivm%2Fec2details","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftedivm%2Fec2details","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftedivm%2Fec2details/lists"}