Providers API


Acceptable RDS flavors

GET /providers/:provider_id/database-server/flavors

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "flavors": [
          
            ]
          }
            
          








Acceptable RDS options

GET /providers/:provider_id/database-server

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "database_server": {
              "flavors": [
          
              ],
              "engine_versions": {
                "mysql": [
                  "5.6.22",
                  "5.6.23",
                  "5.6.27",
                  "5.6.29",
                  "5.6.34",
                  "5.6.35",
                  "5.7.11",
                  "5.7.16",
                  "5.7.17"
                ],
                "postgres": [
                  "9.4.7",
                  "9.4.9",
                  "9.4.11",
                  "9.4.12",
                  "9.5.2",
                  "9.5.4",
                  "9.5.6",
                  "9.5.7",
                  "9.6.3"
                ],
                "aurora": [
                  "5.6.10a"
                ]
              }
            }
          }
            
          








Acceptable RDS versions

GET /providers/:provider_id/database-server/versions

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "versions": {
              "mysql": [
                "5.6.22",
                "5.6.23",
                "5.6.27",
                "5.6.29",
                "5.6.34",
                "5.6.35",
                "5.7.11",
                "5.7.16",
                "5.7.17"
              ],
              "postgres": [
                "9.4.7",
                "9.4.9",
                "9.4.11",
                "9.4.12",
                "9.5.2",
                "9.5.4",
                "9.5.6",
                "9.5.7",
                "9.6.3"
              ],
              "aurora": [
                "5.6.10a"
              ]
            }
          }
            
          








Discover a provider's accessible locations

PUT /providers/:provider/locations/discover

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "request": {
              "type": "discover_provider_locations",
              "id": "891cc15f-c0e3-4b06-8cdc-90fc358094a9",
              "created_at": "2018-04-12T18:04:49+00:00",
              "started_at": "2018-04-12T18:05:07+00:00",
              "finished_at": "2018-04-12T18:14:44+00:00",
              "message": null,
              "request_status": "Finished: Discover provider locations (891cc15f-c0e3-4b06-8cdc-90fc358094a9) (less than a minute ago)",
              "successful": true,
              "updated_at": "2018-04-12T18:14:50+00:00",
              "read_channel": null,
              "stage": "discover_locations",
              "dependencies": "https://api.engineyard.com/requests/891cc15f-c0e3-4b06-8cdc-90fc358094a9/dependencies",
              "stages": "https://api.engineyard.com/requests/891cc15f-c0e3-4b06-8cdc-90fc358094a9/stages",
              "account": "https://api.engineyard.com/accounts/e4f3143f-3e74-4032-adc0-0fa9ba338022",
              "requester": "https://api.engineyard.com/requests/891cc15f-c0e3-4b06-8cdc-90fc358094a9/requester",
              "messages": "https://api.engineyard.com/requests/891cc15f-c0e3-4b06-8cdc-90fc358094a9/messages",
              "callback_url": "https://api.engineyard.com/requests/891cc15f-c0e3-4b06-8cdc-90fc358094a9/callback",
              "progress": false,
              "resource": "https://api.engineyard.com/providers/45"
            }
          }
            
          








Discover locations in a known location id

PUT /providers/:provider/locations/:location/discover

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "request": {
              "type": "discover_provider_location",
              "id": "e83d5956-b399-4970-9b37-01b89ef380b5",
              "created_at": "2018-04-12T18:04:53+00:00",
              "started_at": "2018-04-12T18:05:13+00:00",
              "finished_at": "2018-04-12T18:08:36+00:00",
              "message": null,
              "request_status": "Finished: Discover provider location (e83d5956-b399-4970-9b37-01b89ef380b5) (less than a minute ago)",
              "successful": true,
              "updated_at": "2018-04-12T18:08:41+00:00",
              "read_channel": null,
              "stage": "persist",
              "dependencies": "https://api.engineyard.com/requests/e83d5956-b399-4970-9b37-01b89ef380b5/dependencies",
              "stages": "https://api.engineyard.com/requests/e83d5956-b399-4970-9b37-01b89ef380b5/stages",
              "account": "https://api.engineyard.com/accounts/bb37c784-de9d-47f8-b8f5-1e89fca24542",
              "requester": "https://api.engineyard.com/requests/e83d5956-b399-4970-9b37-01b89ef380b5/requester",
              "messages": "https://api.engineyard.com/requests/e83d5956-b399-4970-9b37-01b89ef380b5/messages",
              "callback_url": "https://api.engineyard.com/requests/e83d5956-b399-4970-9b37-01b89ef380b5/callback",
              "progress": false,
              "resource": "https://api.engineyard.com/provider-locations/c861e35e-d3ed-4b3d-b94e-6cbc38ba2276"
            }
          }
            
          








List all providers

GET /accounts/:account_id/providers

Parameters

type
required: false
Type of provider. One of ["aws", "azure"]

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "providers": [
              {
                "id": 38,
                "account": "https://api.engineyard.com/accounts/a81fa88b-6b72-4049-88e6-0e60ec4e9eda",
                "cancelled_at": null,
                "created_at": "2018-04-12T18:03:54+00:00",
                "database_server_snapshots": "https://api.engineyard.com/providers/38/database-server-snapshots",
                "provider_locations": "https://api.engineyard.com/providers/38/locations",
                "provisioned_id": "9636106676",
                "servers": "https://api.engineyard.com/providers/38/servers",
                "shared": false,
                "storages": "https://api.engineyard.com/providers/38/storages",
                "type": "aws",
                "untracked_servers": "https://api.engineyard.com/providers/38/untracked-servers",
                "updated_at": "2018-04-12T18:03:54+00:00"
              }
            ]
          }
            
          








List an AWS provider's flavors

GET /providers/:provider/flavors/compute

Parameters

architecture
required: false
Filter flavors by architecture (64 or 32)

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "flavors": [
              {
                "id": "m3_medium",
                "api_name": "m3.medium",
                "dedicated": false,
                "description": "General Purpose (M3) Medium",
                "volume_optimized": false,
                "architecture": 64,
                "name": "m3_medium"
              },
              {
                "id": "m3_large",
                "api_name": "m3.large",
                "dedicated": false,
                "description": "General Purpose (M3) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "m3_large"
              },
              {
                "id": "m3_xlarge",
                "api_name": "m3.xlarge",
                "dedicated": false,
                "description": "General Purpose (M3) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "m3_xlarge"
              },
              {
                "id": "c4_large",
                "api_name": "c4.large",
                "dedicated": false,
                "description": "Compute Optimized (C4) Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "c4_large"
              },
              {
                "id": "c4_xlarge",
                "api_name": "c4.xlarge",
                "dedicated": false,
                "description": "Compute Optimized (C4) Extra Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "c4_xlarge"
              },
              {
                "id": "c3_large",
                "api_name": "c3.large",
                "dedicated": false,
                "description": "Compute Optimized (C3) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "c3_large"
              },
              {
                "id": "c3_xlarge",
                "api_name": "c3.xlarge",
                "dedicated": false,
                "description": "Compute Optimized (C3) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "c3_xlarge"
              },
              {
                "id": "r3_large",
                "api_name": "r3.large",
                "dedicated": false,
                "description": "Memory Optimized (R3) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "r3_large"
              },
              {
                "id": "r3_xlarge",
                "api_name": "r3.xlarge",
                "dedicated": false,
                "description": "Memory Optimized (R3) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "r3_xlarge"
              },
              {
                "id": "t2_micro",
                "api_name": "t2.micro",
                "dedicated": false,
                "description": "General Purpose (T2) Micro",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_micro"
              },
              {
                "id": "t2_small",
                "api_name": "t2.small",
                "dedicated": false,
                "description": "General Purpose (T2) Small",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_small"
              },
              {
                "id": "t2_medium",
                "api_name": "t2.medium",
                "dedicated": false,
                "description": "General Purpose (T2) Medium",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_medium"
              },
              {
                "id": "t2_large",
                "api_name": "t2.large",
                "dedicated": false,
                "description": "General Purpose (T2) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_large"
              },
              {
                "id": "t2_xlarge",
                "api_name": "t2.xlarge",
                "dedicated": false,
                "description": "General Purpose (T2) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_xlarge"
              },
              {
                "id": "m4_large",
                "api_name": "m4.large",
                "dedicated": false,
                "description": "General Purpose (M4) Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "m4_large"
              },
              {
                "id": "m4_xlarge",
                "api_name": "m4.xlarge",
                "dedicated": false,
                "description": "General Purpose (M4) Extra Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "m4_xlarge"
              },
              {
                "id": "r4_large",
                "api_name": "r4.large",
                "dedicated": false,
                "description": "Memory Optimized (R4) Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "r4_large"
              },
              {
                "id": "r4_xlarge",
                "api_name": "r4.xlarge",
                "dedicated": false,
                "description": "Memory Optimized (R4) Extra Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "r4_xlarge"
              }
            ]
          }
            
          








List an AWS provider's locations

GET /providers/:provider/locations

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "locations": [
              {
                "id": "us-east-1",
                "name": "US East (N. Virginia)"
              },
              {
                "id": "us-east-2",
                "name": "US East (Ohio)"
              },
              {
                "id": "us-west-1",
                "name": "US West (N. California)"
              },
              {
                "id": "us-west-2",
                "name": "US West (Oregon)"
              },
              {
                "id": "ca-central-1",
                "name": "Canada (Central)"
              },
              {
                "id": "sa-east-1",
                "name": "South America (Sao Paulo)"
              },
              {
                "id": "eu-west-1",
                "name": "EU (Ireland)"
              },
              {
                "id": "eu-west-2",
                "name": "EU (London)"
              },
              {
                "id": "eu-central-1",
                "name": "EU (Frankfurt)"
              },
              {
                "id": "ap-southeast-1",
                "name": "Asia Pacific (Singapore)"
              },
              {
                "id": "ap-southeast-2",
                "name": "Asia Pacific (Sydney)"
              },
              {
                "id": "ap-northeast-1",
                "name": "Asia Pacific (Tokyo)"
              },
              {
                "id": "ap-northeast-2",
                "name": "Asia Pacific (Seoul)"
              },
              {
                "id": "ap-south-1",
                "name": "Asia Pacific (Mumbai)"
              }
            ]
          }
            
          








List Deis specific AWS flavors

GET /providers/:provider/flavors/compute

Parameters

architecture
required: false
Filter flavors by architecture (64 or 32)

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "flavors": [
              {
                "id": "m3_medium",
                "api_name": "m3.medium",
                "dedicated": false,
                "description": "General Purpose (M3) Medium",
                "volume_optimized": false,
                "architecture": 64,
                "name": "m3_medium"
              },
              {
                "id": "m3_large",
                "api_name": "m3.large",
                "dedicated": false,
                "description": "General Purpose (M3) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "m3_large"
              },
              {
                "id": "m3_xlarge",
                "api_name": "m3.xlarge",
                "dedicated": false,
                "description": "General Purpose (M3) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "m3_xlarge"
              },
              {
                "id": "c4_large",
                "api_name": "c4.large",
                "dedicated": false,
                "description": "Compute Optimized (C4) Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "c4_large"
              },
              {
                "id": "c4_xlarge",
                "api_name": "c4.xlarge",
                "dedicated": false,
                "description": "Compute Optimized (C4) Extra Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "c4_xlarge"
              },
              {
                "id": "c3_large",
                "api_name": "c3.large",
                "dedicated": false,
                "description": "Compute Optimized (C3) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "c3_large"
              },
              {
                "id": "c3_xlarge",
                "api_name": "c3.xlarge",
                "dedicated": false,
                "description": "Compute Optimized (C3) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "c3_xlarge"
              },
              {
                "id": "r3_large",
                "api_name": "r3.large",
                "dedicated": false,
                "description": "Memory Optimized (R3) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "r3_large"
              },
              {
                "id": "r3_xlarge",
                "api_name": "r3.xlarge",
                "dedicated": false,
                "description": "Memory Optimized (R3) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "r3_xlarge"
              },
              {
                "id": "t2_micro",
                "api_name": "t2.micro",
                "dedicated": false,
                "description": "General Purpose (T2) Micro",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_micro"
              },
              {
                "id": "t2_small",
                "api_name": "t2.small",
                "dedicated": false,
                "description": "General Purpose (T2) Small",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_small"
              },
              {
                "id": "t2_medium",
                "api_name": "t2.medium",
                "dedicated": false,
                "description": "General Purpose (T2) Medium",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_medium"
              },
              {
                "id": "t2_large",
                "api_name": "t2.large",
                "dedicated": false,
                "description": "General Purpose (T2) Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_large"
              },
              {
                "id": "t2_xlarge",
                "api_name": "t2.xlarge",
                "dedicated": false,
                "description": "General Purpose (T2) Extra Large",
                "volume_optimized": false,
                "architecture": 64,
                "name": "t2_xlarge"
              },
              {
                "id": "m4_large",
                "api_name": "m4.large",
                "dedicated": false,
                "description": "General Purpose (M4) Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "m4_large"
              },
              {
                "id": "m4_xlarge",
                "api_name": "m4.xlarge",
                "dedicated": false,
                "description": "General Purpose (M4) Extra Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "m4_xlarge"
              },
              {
                "id": "r4_large",
                "api_name": "r4.large",
                "dedicated": false,
                "description": "Memory Optimized (R4) Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "r4_large"
              },
              {
                "id": "r4_xlarge",
                "api_name": "r4.xlarge",
                "dedicated": false,
                "description": "Memory Optimized (R4) Extra Large",
                "volume_optimized": true,
                "architecture": 64,
                "name": "r4_xlarge"
              }
            ]
          }
            
          








List only AWS providers

GET /accounts/:account_id/providers

Parameters

type
required: false
Type of provider. One of ["aws", "azure"]

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "providers": [
              {
                "id": 39,
                "account": "https://api.engineyard.com/accounts/4a853b64-39dc-428c-b092-9dd1462b0d93",
                "cancelled_at": null,
                "created_at": "2018-04-12T18:03:56+00:00",
                "database_server_snapshots": "https://api.engineyard.com/providers/39/database-server-snapshots",
                "provider_locations": "https://api.engineyard.com/providers/39/locations",
                "provisioned_id": "7929478131",
                "servers": "https://api.engineyard.com/providers/39/servers",
                "shared": false,
                "storages": "https://api.engineyard.com/providers/39/storages",
                "type": "aws",
                "untracked_servers": "https://api.engineyard.com/providers/39/untracked-servers",
                "updated_at": "2018-04-12T18:03:56+00:00"
              }
            ]
          }
            
          








Show an AWS provider

GET /providers/:provider

Request

          Content-Type: application/json
          Accept: application/vnd.engineyard.v3+json
          
            
          {
          }
            
          

Response

          Status: 200 OK
          Content-Type: application/json; charset=utf-8
          
            
          {
            "provider": {
              "id": 40,
              "account": "https://api.engineyard.com/accounts/7f14b670-07c6-4d36-8f8d-28b5f1bc1715",
              "cancelled_at": null,
              "created_at": "2018-04-12T18:03:58+00:00",
              "database_server_snapshots": "https://api.engineyard.com/providers/40/database-server-snapshots",
              "provider_locations": "https://api.engineyard.com/providers/40/locations",
              "provisioned_id": "3426371162",
              "servers": "https://api.engineyard.com/providers/40/servers",
              "shared": false,
              "storages": "https://api.engineyard.com/providers/40/storages",
              "type": "aws",
              "untracked_servers": "https://api.engineyard.com/providers/40/untracked-servers",
              "updated_at": "2018-04-12T18:03:58+00:00"
            }
          }