Setup
Get Device Types
GET /ne/v1/deviceTypes | |
---|---|
Method | GET |
URL or End Point | /ne/v1/deviceTypes |
Headers | Authorization, Content-Type |
Query Parameters | deviceTypeCode, category, offset, limit |
Body | Not applicable |
Returns device types (e.g., routers and firewalls) you can launch on the Network Edge platform. You will learn about the metro regions where virtual devices are available, vendors of devices, available software packages, and all possible licensing and throughput options.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/deviceTypes"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameters:
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
deviceTypeCode | No | string | C8000V | Device type code. | |
category | No | string | ROUTER | "ROUTER", "FIREWALL", "SDWAN" |
Device category. |
offset | No | integer | 0 | Specifies where to start a page. It is the starting point of the collection returned from the server. | |
limit | No | integer | 100 | Specifies the page size. |
Sample response:
{
"pagination": {
"offset": 0,
"limit": 20,
"total": 9
},
"data": [
{
"deviceTypeCode": "VSRX",
"name": "vSRX",
"description": "The [Juniper vSRX Virtual Firewall|https://www.juniper.net/us/en/products-services/security/srx-series/vsrx/] provides scalable, secure protection across private, public, and hybrid clouds. The vSRX offers the same features as our physical SRX Series firewalls but in a virtualized form factor. It offers the same features as the SRX appliance, including core firewall, robust networking, full next-gen capabilities, and automated life-cycle management.",
"vendor": "Juniper Networks",
"category": "FIREWALL",
"maxInterfaceCount": 16,
"defaultInterfaceCount": 10,
"clusterMaxInterfaceCount": 8,
"clusterDefaultInterfaceCount": 8,
"availableMetros": [
{
"metroCode": "DA",
"metroDescription": "Dallas",
"region": "AMER",
"clusterSupported": false
},
{
"metroCode": "SY",
"metroDescription": "Sydney",
"region": "APAC",
"clusterSupported": false
}
],
"softwarePackages": [
{
"packageCode": "STD",
"name": "Standard",
"versionDetails": [
{
"version": "15.1X49-D142.1",
"imageName": "vsrx-15.1X49-D142.1",
"versionDate": "2019-01-01",
"status": "ACTIVE",
"stableVersion": true,
"supportedLicenseTypes": [
"SUB",
"BYOL"
],
"allowedUpgradableVersions": [
"18.4R2-S1.4",
"19.1R1.6"
],
"upgradeAllowed": false,
"releaseNotesLink": "https://www.juniper.net/documentation/product/en_US/vsrx"
},
{
"version": "18.4R2-S1.4",
"imageName": "vsrx-18.4R2-S1.4",
"versionDate": "2020-01-01",
"status": "ACTIVE",
"stableVersion": true,
"supportedLicenseTypes": [
"SUB",
"BYOL"
],
"allowedUpgradableVersions": [
"15.1X49-D142.1",
"19.1R1.6"
],
"upgradeAllowed": false,
"releaseNotesLink": "https://www.juniper.net/documentation/product/en_US/vsrx"
},
{
"version": "18.4R3-S2",
"imageName": "vsrx-18.4R3-S2",
"versionDate": "2020-07-23",
"status": "ACTIVE",
"stableVersion": true,
"upgradeAllowed": false,
"releaseNotesLink": "https://www.juniper.net/documentation/product/en_US/vsrx"
},
{
"version": "19.1R1.6",
"imageName": "vsrx-19.1R1.6",
"versionDate": "2020-01-01",
"status": "ACTIVE",
"stableVersion": true,
"supportedLicenseTypes": [
"SUB",
"BYOL"
],
"allowedUpgradableVersions": [
"15.1X49-D142.1",
"18.4R2-S1.4"
],
"upgradeAllowed": false,
"releaseNotesLink": "https://www.juniper.net/documentation/product/en_US/vsrx"
},
{
"version": "19.2R2.7",
"imageName": "vsrx-19.2R2.7",
"versionDate": "2020-07-23",
"status": "ACTIVE",
"stableVersion": true,
"supportedLicenseTypes": [
"SUB",
"BYOL"
],
"upgradeAllowed": false,
"releaseNotesLink": "https://www.juniper.net/documentation/product/en_US/vsrx"
}
]
}
],
"deviceManagementTypes": {
"EQUINIX-CONFIGURED": {
"type": "EQUINIX-CONFIGURED",
"licenseOptions": {
"SUB": {
"type": "Sub",
"name": "Subscription",
"cores": [
{
"core": 2,
"memory": 4,
"unit": "GB",
"flavor": "small",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
},
{
"core": 5,
"memory": 8,
"unit": "GB",
"flavor": "medium",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
},
{
"core": 9,
"memory": 16,
"unit": "GB",
"flavor": "large",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
}
],
"supported": true
},
"BYOL": {
"type": "BYOL",
"name": "Bring Your Own License",
"cores": [
{
"core": 2,
"memory": 4,
"unit": "GB",
"flavor": "small",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
},
{
"core": 5,
"memory": 8,
"unit": "GB",
"flavor": "medium",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
},
{
"core": 9,
"memory": 16,
"unit": "GB",
"flavor": "large",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
}
],
"supported": true
}
},
"supportedServices": [
{
"name": "CLOUD_PROFILE",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "ACL",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "Additional Bandwidth",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "Console Access",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "VPN",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "INTERFACE_OVERLAY",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "BGP",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "SSH",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "Upgrade Device Version",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
}
],
"supported": true,
"clusteringDetails": {
"clusteringEnabled": false,
"maxAllowedNodes": 2
}
},
"SELF-CONFIGURED": {
"type": "SELF-CONFIGURED",
"licenseOptions": {
"SUB": {
"type": "Sub",
"name": "Subscription",
"cores": [],
"supported": false
},
"BYOL": {
"type": "BYOL",
"name": "Bring Your Own License",
"cores": [
{
"core": 2,
"memory": 4,
"unit": "GB",
"flavor": "small",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"18.4R2-S1.4"
],
"excludedClusterVersions": [
"18.4R2-S1.4",
"19.1R1.6",
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
},
{
"core": 5,
"memory": 8,
"unit": "GB",
"flavor": "medium",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"18.4R2-S1.4"
],
"excludedClusterVersions": [
"18.4R2-S1.4",
"19.1R1.6",
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
},
{
"core": 9,
"memory": 16,
"unit": "GB",
"flavor": "large",
"packageCodes": [
{
"packageCode": "STD",
"excludedVersions": [
"18.4R2-S1.4"
],
"excludedClusterVersions": [
"18.4R2-S1.4",
"19.1R1.6",
"15.1X49-D142.1"
],
"supported": true
}
],
"supported": true
}
],
"supported": true
}
},
"supportedServices": [
{
"name": "ACL",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": true
},
{
"name": "Additional Bandwidth",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": true
},
{
"name": "CLOUD_PROFILE",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": true
},
{
"name": "INTERFACE_OVERLAY",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": true
},
{
"name": "Console Access",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": true
},
{
"name": "SSH Interface Selection",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": false
},
{
"name": "SSH",
"required": false,
"packageCodes": [
"STD"
],
"supportedForClustering": true
}
],
"defaultAcls": {
"dnsServers": [
"8.8.8.8",
"8.8.4.4"
],
"ntpServers": [
"216.239.35.0/28"
]
},
"supported": true,
"clusteringDetails": {
"clusteringEnabled": true,
"maxAllowedNodes": 2
}
}
}
}
]
}
Response payload:
Field Name | Type | Example Values | Description |
---|---|---|---|
pagination | object | An object with the pagination information. | |
offset | integer | 0 | It is the starting point of the collection returned from the server. |
limit | integer | 20 | Page size. |
total | integer | 100 | The total number of results. |
next | string | The next result set. | |
previous | string | The previous result set. | |
data | array | An array containing the device type objects. | |
deviceTypeCode | string | C8000V | Device type code. |
name | string | 8000V (Autonomous Mode) | The name of the device. |
description | string | The Cisco® Catalyst® 8000V Edge Software (Catalyst 8000V) is a virtual-form-factor router that delivers comprehensive SD-WAN, WAN gateway, and network services functions into virtual and cloud environments. Using familiar, industry-leading Cisco IOS® XE Software networking capabilities, the Catalyst 8000V enables enterprises to transparently extend their WANs into provider-hosted clouds. Similarly, cloud providers themselves can use the Catalyst 8000V to offer enterprise-class networking services to their tenants or customers. | |
vendor | string | Cisco | The vendor of the device. |
category | string | ROUTER | The type of virtual device, either ROUTER or FIREWALL. |
maxInterfaceCount | integer | 24 | The maximum number of available interfaces. |
defaultIntefaceCount | integer | 10 | The default interface count. |
clusterMaxInterfaceCount | integer | 8 | The maximum number of available interfaces in case you are clustering. |
clusterDefaultInterfaceCount | integer | 8 | The default number of available interfaces in case you are clustering. |
availableMetros | array | An array of the available metro objects. | |
metroCode | string | SV | The metro code. |
metroDescription | string | Silicon Valley | The metro description. |
region | string | AMER | The metro region. |
clusterSupported | boolean | false | Whether this metro supports cluster devices. |
softwarePackages | array | An array of software packages and their version details. | |
packageCode | string | network-advantage | The package code. |
name | string | DNA Advantage | The software package name. |
versionDetails | array | An array of software versions. | |
version | string | 17.06.01a | The version of the software. |
imageName | string | CiscoSyst-C8000VAut-17.06.01a-7541 | The image name of the sotware. |
versionDate | string | 2019-01-01 | The date this version was released. |
retireDate | string | 2024-01-01 | The date after which the software will no longer be available for new devices. If there is no retireDate for a version, the field won't show up in the response. |
status | string | ACTIVE | The status of the version. |
stableVersion | string | true | Whether this version is stable. |
allowedUpgradableVersions | array | ["16.09.03"] | An array of allowed upgradable versions. |
supportedLicenseTypes | array | ["SUB", "BYOL"] | Supported license types. SUB: Subscription, BYOL: Bring Your Own License. |
upgradeAllowed | string | false | Whether you can upgrade from this version. |
releaseNotesLink | string | https://www.cisco.com/c/en/us/products/collateral/routers/catalyst-8000v-edge-software/datasheet-c78-744101.html#Productoverview | The release notes link. |
deviceManagementTypes | object | An object that has device management types. | The device management type object. |
type | string | SELF-CONFIGURED device management type. | The device type, either EQUINIX-CONFIGURED or SELF-CONFIGURED. |
licenseOptions | object | An object that has the available license options for the above device management type. | |
type | string | Sub | The type of license. |
name | string | Subscription | The name of the license. |
fileUploadForCluster | boolean | false | Whether you can upload a license file for cluster devices. |
cores | array | An array that has the available core options for the above license and device management type. | |
core | integer | 2 | The number of cores. |
memory | integer | 4 | The amount of memory. |
unit | string | GB | The unit of memory. |
tier | array | [2] | Bandwidth tier. This is only relevant for Cisco 8000V devices. |
flavor | string | small | The flavor of the core. |
packageCodes | array | An array of the package codes. | |
packageCode | string | STD | A software package compatible with the core. |
supportedLicenseTiers | array | [2] | License tiers supported by the package. |
excludedVersions | array | [18.4R2-S1.4] | Versions that do not support the above package code and cores. |
excludedClusterVersions | array | ["18.4R2-S1.4", "19.1R1.6", "15.1X49-D142.1"] |
Versions that do not support cluster devices. |
throughputs | array | An array of the available throughput options for the package code. | |
supported | string | true | Whether this throughput is supported. |
throughput | integer | 500 | The throughput amount. |
throughputUnit | string | Mbps | The unit of throughput. |
supported | string | true | Whether the software package is supported. |
supported | string | true | Whether the core is supported for the above license type. |
supportedServices | array | An array of supported services. | |
name | string | Additional Bandwidth | The name of a supported service |
required | string | false | Whether the supported service is required. |
packageCodes | array | An array of package codes that support the service. | |
supportedForClustering | boolean | Whether the service is available for cluster devices. | |
additionalFields | array | An array of additional fields associated with the device type. | |
name | string | controller1 | The name of the additional field. |
required | string | true | Whether this field is required at the time of device creation. |
clusteringDetails | object | An object that has clustering information for the device and device management type. | |
clusteringEnabled | boolean | true | Whether clustering is supported for the device and device management type. |
maxAllowedNodes | integer | 2 | The number of nodes you can have for a cluster device. |
defaultAcls | object | An object that has the default ACLs of the self-configured device. | |
dnsServers | array | An array that has the DNS servers of the self-configured device. | |
ntpServers | array | An array that has the NTP servers of the self-configured device. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Allowed Interfaces
GET /ne/v1/deviceTypes/{deviceType}/interfaces | |
---|---|
Method | GET |
URL or End Point | /ne/v1/deviceTypes/{deviceType}/interfaces |
Headers | Authorization, Content-Type |
Path Parameter | deviceType |
Query | deviceManagementType, cluster, sdwan, core, unit, memory, flavor, version, softwarePkg, mode |
Returns the interface details for a device type with a set of chosen configuration.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/deviceTypes/PA-VM/interfaces?deviceManagementType=SELF-CONFIGURED&cluster=false&sdwan=false&core=2&unit=GB&memory=8"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Path Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
deviceType | Yes | string | PA-VM | Device type code. |
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
deviceManagementType | Yes | string | SELF-CONFIGURED | The desired device management type. Possible value: SELF-CONFIGURED | |
cluster | No | boolean | false | Whether the device is a cluster or not. | |
sdwan | No | boolean | false | Whether the device is an SD-WAN or not. | |
core | Yes | integer | 2 | The desired number of cores. | |
unit | No | string | GB | The unit of memory. | |
memory | No | integer | 8 | Memory. | |
flavor | No | string | small | The flavor of device, small, medium, or large. | |
version | No | string | 10.1.3 | The desired version. | |
softwarePkg | No | string | VM100 | The desired software package. | |
mode | No | string | BYOL | BYOL, Subscription | whether you want to get a subscription license or bring your own license (BYOL). |
Sample response:
{
"interfaceProfiles": [
{
"count": 10,
"interfaces": [
{
"name": "management",
"description": "Equinix Managed",
"interfaceId": "1",
"status": "RESERVED"
},
{
"name": "ethernet1/1",
"description": "DATA Interface",
"interfaceId": "2",
"status": "AVAILABLE"
},
{
"name": "ethernet1/2",
"description": "DATA Interface",
"interfaceId": "3",
"status": "AVAILABLE"
},
{
"name": "ethernet1/3",
"description": "DATA Interface",
"interfaceId": "4",
"status": "AVAILABLE"
},
{
"name": "ethernet1/4",
"description": "DATA Interface",
"interfaceId": "5",
"status": "AVAILABLE"
},
{
"name": "ethernet1/5",
"description": "DATA Interface",
"interfaceId": "6",
"status": "AVAILABLE"
},
{
"name": "ethernet1/6",
"description": "DATA Interface",
"interfaceId": "7",
"status": "AVAILABLE"
},
{
"name": "ethernet1/7",
"description": "DATA Interface",
"interfaceId": "8",
"status": "AVAILABLE"
},
{
"name": "ethernet1/8",
"description": "DATA Interface",
"interfaceId": "9",
"status": "AVAILABLE"
},
{
"name": "ethernet1/9",
"description": "DATA Interface",
"interfaceId": "10",
"status": "AVAILABLE"
}
],
"default": true
},
{
"count": 19,
"interfaces": [
{
"name": "management",
"description": "Equinix Managed",
"interfaceId": "1",
"status": "RESERVED"
},
{
"name": "ethernet1/1",
"description": "DATA Interface",
"interfaceId": "2",
"status": "AVAILABLE"
},
{
"name": "ethernet1/2",
"description": "DATA Interface",
"interfaceId": "3",
"status": "AVAILABLE"
},
{
"name": "ethernet1/3",
"description": "DATA Interface",
"interfaceId": "4",
"status": "AVAILABLE"
},
{
"name": "ethernet1/4",
"description": "DATA Interface",
"interfaceId": "5",
"status": "AVAILABLE"
},
{
"name": "ethernet1/5",
"description": "DATA Interface",
"interfaceId": "6",
"status": "AVAILABLE"
},
{
"name": "ethernet1/6",
"description": "DATA Interface",
"interfaceId": "7",
"status": "AVAILABLE"
},
{
"name": "ethernet1/7",
"description": "DATA Interface",
"interfaceId": "8",
"status": "AVAILABLE"
},
{
"name": "ethernet1/8",
"description": "DATA Interface",
"interfaceId": "9",
"status": "AVAILABLE"
},
{
"name": "ethernet1/9",
"description": "DATA Interface",
"interfaceId": "10",
"status": "AVAILABLE"
},
{
"name": "ethernet1/10",
"description": "DATA Interface",
"interfaceId": "11",
"status": "AVAILABLE"
},
{
"name": "ethernet1/11",
"description": "DATA Interface",
"interfaceId": "12",
"status": "AVAILABLE"
},
{
"name": "ethernet1/12",
"description": "DATA Interface",
"interfaceId": "13",
"status": "AVAILABLE"
},
{
"name": "ethernet1/13",
"description": "DATA Interface",
"interfaceId": "14",
"status": "AVAILABLE"
},
{
"name": "ethernet1/14",
"description": "DATA Interface",
"interfaceId": "15",
"status": "AVAILABLE"
},
{
"name": "ethernet1/15",
"description": "DATA Interface",
"interfaceId": "16",
"status": "AVAILABLE"
},
{
"name": "ethernet1/16",
"description": "DATA Interface",
"interfaceId": "17",
"status": "AVAILABLE"
},
{
"name": "ethernet1/17",
"description": "DATA Interface",
"interfaceId": "18",
"status": "AVAILABLE"
},
{
"name": "ethernet1/18",
"description": "DATA Interface",
"interfaceId": "19",
"status": "AVAILABLE"
}
],
"default": false
}
]
}
The description of the response:
Field Name | Type | Example Values | Possible Values | Description |
---|---|---|---|---|
interfaceProfiles | array | An array of possible interface counts for a selected core. | ||
count | integer | 10 | A possible number of interfaces for your selected core. | |
interfaces | array | The description of interfaces | ||
name | string | ethernet1/1 | The name of the interface. | |
description | string | Data Interface | Whether the interface is Equinix Managed or a Data Interface. | |
interfaceId | string | 2 | The Id of the interface. | |
status | string | AVAILABLE | Whether the interface is available or reserved. You can select any available interface as sshInterface. | |
default | boolean | true | Whether this interface serves as the default if you do not specify an interface count. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Available Metros
GET /ne/v1/metros | |
---|---|
Method | GET |
URL or End Point | /ne/v1/metros |
Headers | Authorization, Content-Type |
Query Parameters | region, offsest, limit |
Body Parameters | Not applicable |
Returns metros where the Network Edge platform is available.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/metros"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Request parameters:
Field name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
region | No | string | AMER | AMER, EMEA, APAC |
The geographic region code where the metro resides. Three possible regions are “AMER”, “EMEA” or “APAC”. |
offset | No | integer | 0 | Specifies where to start a page. It is the starting point of the collection returned from the server. | |
limit | No | integer | 100 | Specifies the page size. |
Sample response:
{
"pagination": {
"offset": 0,
"limit": 20,
"total": 1
},
"data": [
{
"region": "AMER",
"clusterSupported": false
"metroCode": "DA",
"metroDescription": "Dallas"
}
]
}
Response payload:
Field name | Type | Example | Description |
---|---|---|---|
pagination | object | An object that has the pagination information. | |
offset | integer | 0 | It is the starting point of the collection returned from the server. |
limit | integer | 20 | The page size. |
total | integer | 100 | The total number of results. |
previous | string | The previous result set. | |
next | string | The next result set. | |
data | array | An array containing the metro objects. | |
region | string | AMER EMEA APAC |
The geographic code of the metro. |
clusterSupported | boolean | false | Whether this zone supports cluster devices. |
metroCode | string | DC | The two-character code used to denote the metro. |
metroDescription | string | London | The name of the metro. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Accounts {metro}
GET ne/v1/accounts/{metro} | |
---|---|
Method | GET |
URL or End Point | ne/v1/accounts/{metro} |
Headers | Authorization, Content-Type |
Path Parameters | metro |
Query Parameters | accountUcmId |
Body | Not applicable |
Returns the account status. To create a virtual device, you must have an account in the metro where you want a virtual device, either in the Active or Pending state.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/accounts/SV"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameter:
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
accountUcmId | No | string | 678907 | Unique Id of the account. A reseller querying for a customer's devices can pass the accountUcmId of the customer's account. |
Path parameter:
Path Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
metro | Yes | string | SV | The two-character metro code. |
Sample response:
{
"accountCreateUrl": "https://dev-nfv.corp.equinix.com/account?referenceId=79160&ibx=SV6&metro=SV&callbackId=a6cd9158-6280-4864-b57e-79b46a128568",
"accounts": [
{
"accountName": "FACEBOOK INC",
"accountNumber": "110249",
"accountUcmId": "1000014389",
"accountStatus": "Active",
"metros": [
"DE",
"SV",
"CH",
"HO",
"NY",
"BO",
"CU",
"SE",
"AT",
"LA",
"PH",
"MI",
"DA",
"DC"
],
"creditHold": false
},
{
"accountName": "REG2-acc1",
"accountNumber": "2201097",
"accountUcmId": "1000014389",
"accountStatus": "Active",
"metros": [
"DE",
"SV",
"CH",
"HO",
"NY",
"BO",
"CU",
"SE",
"AT",
"LA",
"PH",
"MI",
"DA",
"DC"
],
"creditHold": false
}
],
"errorMessage": null,
"errorCode": null
}
Response:
Field Name | Type | Example | Description |
---|---|---|---|
accountCreateURL | string | https://ecxfabric.equinix.com/account?referenceId=459019&ibx=SV5&metro=SV&callbackId=062bcc1c-e319-42be-9674-200f19b6c3b4 | URL to create an account. The accountCreate URL will not be there if you have an account. |
accounts | array | accounts[] | An array of accounts. |
accountName | string | TRYKE INC | Account name. |
accountNumber | string | 110249 | Account number. |
accountUcmId | string | 1000014389 | Unique Id of an account. This field is useful for resellers creating a device or adding services on behalf of their customers. |
accountStatus | string | Active | Account status. Possible values: Active, Processing. |
metros | array | [DA, SV, NY] | An array of metros where the account number is valid. |
creditHold | boolean | false | Whether this account is on credit hold. You cannot use an account on credit hold to create a device. |
referenceId | string | 921696 | This is a temporary ID that can be used to create a device when the account is Pending. |
subCustomerAccounts | array | subCustomerAccounts[] | An array of subCustomerAccounts associated with a reseller. |
errorMessage | string | Error message. | |
errorCode | string | Error code. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Agreement Status
GET /ne/v1/agreements/accounts | |
---|---|
Method | GET |
URL or End Point | /ne/v1/agreements/accounts |
Headers | Authorization, Content-Type |
Query Parameters | account_number |
Body | Not applicable |
Checks the validity of a customer's agreement. In case the agreement is not signed or not valid, this API will return the agreement terms.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/agreements/accounts?account_number=2252619"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameter:
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
account_number | Yes | string | 2252619 | Customer's account number. |
Sample response:
{
"termsVersionID": "",
"terms": "",
"isValid": "true",
"errorMessage": ""
}
The description of the response payload:
Field name | Type | Example | Description |
---|---|---|---|
termsVersionID | string | a2Z34000002CXRtEAO | Version Id of the agreement. You will only see a version ID if you have not signed an agreement or your agreement is not valid. |
terms | string | EQUINIX NETWORK EDGE SERVICES TRIAL AGREEMENT\r\n\r\nThis Equinix Network Edge Services Trial Agreement (this “Agreement”) is made and entered into by and between Equinix, Inc. (“Equinix,” “Us” or “We”) and you, our customer (“Customer”). | The terms of the agreement. You will only get the terms if you have not signed an agreement or the agreement is not valid. |
isValid | string | True | True if the agreement is valid, false if it is not. |
errorMessage | string | Error message. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Create Agreement
POST /ne/v1/agreements/accounts | |
---|---|
Method | POST |
URL or End Point | /ne/v1/agreements/accounts |
Headers | Authorization, Content-Type |
Path Parameters | NA |
Body Parameters | accountNumber, apttusId |
Posts an agreement between you and Network Edge.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
POST "https://api.equinix.com/ne/v1/agreements/accounts"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
-d "{
"accountNumber": "V74191621",
"apttusId": "a2Z34000002CXRtEAO"
}"
Body parameters:
Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
accountNumber | Yes | string | 8907778 | Customer's account number. | |
apttusId | Yes | string | a2Z34000002CXRtEAO | The version number of the agreement. |
{
"status": "PROCESSED"
}
Response 200 OK payload:
Field | Type | Example Values | Description |
---|---|---|---|
status | string | PROCESSED | The request is fulfilled. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Vendor Terms
GET ne/v1/agreements/vendors | |
---|---|
Method | GET |
URL or End Point | ne/v1/agreements/vendors |
Headers | Authorization, Content-Type |
Query Parameters | vendorPackage, licenseType |
Body | Not applicable |
Returns a link to the terms of the vendor of a virtual device.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/agreements/vendors?vendorPackage=C8000V&licenseType=SUB"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameters:
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
vendorPackage | Yes | string | C8000V | Vendor package. This code specifies the device type (firewall, router, or SDWAN device) you want. | |
licenseType | Yes | string | SUB | SUB, BYOL | License type, whether subscription (SUB) or bring your own license (BYOL). |
Sample response:
{
"terms": "https://www.cisco.com/c/en/us/about/legal/cloud-and-software/end_user_license_agreement.html"
}
Response payload:
Field Name | Type | Example | Description |
---|---|---|---|
terms | string | https://www.cisco.com/c/en/us/about/legal/cloud-and-software/end_user_license_agreement.html | A link to the vendor's terms. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Order Terms
GET ne/v1/agreements/orders | |
---|---|
Method | GET |
URL or End Point | ne/v1/agreements/orders |
Headers | Authorization, Content-Type |
Path Parameter | Not applicable |
Body | Not applicable |
Returns the order and vendor-specific terms and conditions.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request.
curl -X
GET "https://api.equinix.com/ne/v1/agreements/orders"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Sample response:
{
"terms": "By clicking \"Accept\" you are agreeing to the terms and conditions of this Order on behalf of your Company. You are acknowledging that you have the full authority on behalf of your Company to enter into this online Order (\"Order\") as governed by and incorporated by reference into the applicable Master Country Agreement, Interconnection Terms and Conditions, or other similar agreement agreed to between the Parties (\"Agreement\").\r\n\r\nUnless otherwise defined in this Order or if the context requires otherwise, all capitalized terms used in this Order shall have the meanings ascribed to them in the Agreement.\r\n‘Product(s)’ as used in this Order means all the products under this Order, including Licensed Space and/or Services (if any).\r\n\r\nThe Initial Term is the term stated above, which commence on the date the Product(s) are delivered (“Effective Date”). \r\n\r\nAfter the Initial Term, the term will automatically renew for a period equal to the Initial Term unless either Party terminates this Order by providing written non-renewal notice 90 days prior to the end of the then-current term to the other Party in which event this Order will terminate at the end of the then-current term. For the avoidance of doubt, the notice period for an Initial Term of one month is 30 days, rather than 90 days. \r\n\r\n\r\nThis Order incorporates the Product Provider EULA provided by Equinix to the Customer in Attachment A of this Order and the Product Policies, which are attached as Exhibits to the Customer’s Interconnection Terms and Conditions. All Product(s) selected as part of this Order are subject to availability.\r\n\r\nEquinix, in its sole discretion, reserves the right to reject any handwritten or typed modification to this Agreement or any Order which is not mutually agreed to in writing. \r\n\r\nFor purposes of this Order, the Parties hereby agree that the following ‘Price Increase Terms’ grid is not applicable to the Network Edge Service and is of no force or effect.\r\n\r\nIf you have any questions regarding the terms of this Order, please contact your Equinix Sales Representative.\r\n\r\n\r\n \r\nATTACHMENT A \r\nPRODUCT PROVIDER EULA"
}
Response payload:
Field Name | Type | Example | Description |
---|---|---|---|
terms | string | By clicking "Accept" you are agreeing to the terms and conditions of this Order on behalf of your Company. You are acknowledging that you have the full authority on behalf of your Company to enter into this online Order "Order" as governed by and incorporated by reference into the applicable Master Country Agreement, Interconnection Terms and Conditions, or other similar agreement agreed to between the Parties "Agreement." Unless otherwise defined in this Order or if the context requires otherwise, all capitalized terms used in this Order shall have the meanings ascribed to them in the Agreement.‘Product(s)’ as used in this Order means all the products under this Order, including Licensed Space and/or Services (if any). The Initial Term is the term stated above, which commence on the date the Product(s) are delivered (“Effective Date”). After the Initial Term, the term will automatically renew for a period equal to the Initial Term unless either Party terminates this Order by providing written non-renewal notice 90 days prior to the end of the then-current term to the other Party in which event this Order will terminate at the end of the then-current term. For avoidance of doubt, the notice period for an Initial Term of one month is 30 days, rather than 90 days. This Order incorporates the Product Provider EULA provided by Equinix to the Customer in Attachment A of this Order and the Product Policies, which are attached as Exhibits to the Customer’s Interconnection Terms and Conditions. All Product(s) selected as part of this Order are subject to availability. Equinix, in its sole discretion, reserves the right to reject any handwritten or typed modification to this Agreement or any Order which is not mutually agreed to in writing. For purposes of this Order, the Parties hereby agree that the following ‘Price Increase Terms’ grid is not applicable to the Network Edge Service and is of no force or effect. If you have any questions regarding the terms of this Order, please contact your Equinix Sales Representative. A PRODUCT PROVIDER EULABy clicking \"Accept\" you are agreeing to the terms and conditions of this Order on behalf of your Company. You are acknowledging that you have the full authority on behalf of your Company to enter into this online Order (\"Order\") as governed by and incorporated by reference into the applicable Master Country Agreement, Interconnection Terms and Conditions, or other similar agreement agreed to between the Parties (\"Agreement\"). Unless otherwise defined in this Order or if the context requires otherwise, all capitalized terms used in this Order shall have the meanings ascribed to them in the Agreement.\r\n‘Product(s)’ as used in this Order means all the products under this Order, including Licensed Space and/or Services (if any). The Initial Term is the term stated above, which commence on the date the Product(s) are delivered (“Effective Date”). \r\n\r\nAfter the Initial Term, the term will automatically renew for a period equal to the Initial Term unless either Party terminates this Order by providing written non-renewal notice 90 days prior to the end of the then-current term to the other Party in which event this Order will terminate at the end of the then-current term. For the avoidance of doubt, the notice period for an Initial Term of one month is 30 days, rather than 90 days. \r\n\r\n\r\nThis Order incorporates the Product Provider EULA provided by Equinix to the Customer in Attachment A of this Order and the Product Policies, which are attached as Exhibits to the Customer’s Interconnection Terms and Conditions . All Product(s) selected as part of this Order are subject to availability.\r\n\r\nEquinix, in its sole discretion, reserves the right to reject any handwritten or typed modification to this Agreement or any Order which is not mutually agreed to in writing. For purposes of this Order, the Parties hereby agree that the following ‘Price Increase Terms’ grid is not applicable to the Network Edge Service and is of no force or effect. If you have any questions regarding the terms of this Order, please contact your Equinix Sales Representative. ATTACHMENT A PRODUCT PROVIDER EULA | Equinix order terms and conditions. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Price
GET /ne/v1/prices | |
---|---|
Method | GET |
URL or End Point | /ne/v1/prices |
Headers | Authorization, Content-Type |
Query Parameters | accountNumber, metro, vendorPackage, licenseType, softwarePackage, throughput, throughputUnit, termLength, additionalBandwidth, deviceManagementType, core, secondaryAccountNumber, secondaryMetro, secondaryAdditionalBandwidth, accountUcmId |
Body | Not applicable |
Returns the price of a virtual device or the price of additional services for an existing virtual device. You can use this API to get the prices of both the primary and secondary devices. Note: If you are a reseller's customer, please contact your reseller for pricing information.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/prices?accountNumber=200541&metro=SV&vendorPackage=C8000V&licenseType=BYOL&softwarePackage=network-advantage&throughput=1&throughputUnit=Gpbs&termLength=1&virtualDeviceUuid=99e429f4-c9dc-427c-812e-6b368b94755e&core=4&deviceManagementType=SELF-CONFIGURED&addtionalBandwidth=200"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameters:
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
accountNumber | Yes | integer | 2252726 | Account number. Please enter the account number that belongs to the metro where you want a device. | |
metro | Yes | string | DC | Metro code. | |
vendorPackage | Yes | string | C8000V | Vendor package (device type code). | |
licenseType | Yes | string | SUB | License type, whether you want a subscription license (Equinix handles the license and charges monthly) or you want to bring your own license (BYOL). | |
softwarePackage | Yes | string | IPBASE | Software package code. | |
throughput | string | 500 | Throughput. | ||
throughputUnit | string | Mbps | Throughput Unit. | ||
termLength | Yes | string | 1 | The term length of the contract in months. Default = 1 month. | |
additionalBandwidth | integer | 100 | Additional bandwidth (in Mbps). | ||
deviceManagementType | Yes | string | SELF-CONFIGURED | EQUINIX-CONFIGURED, SELF-CONFIGURED | Whether the device is managed by Equinix or not. |
core | Yes | integer | 4 | The number of cores. | |
virtualDeviceUuid | string | d5d88982-382f-420a-8d63-9dc4c3075f4c | Unique ID of a virtual device. You may query this API to check the price of additional services for an existing virtual device. | ||
secondaryAccountNumber | integer | 2242345 | Secondary account number of a redundant device. Please provide the secondary account number to get the price of your secondary device. | ||
secondaryMetro | string | DC | Secondary metro of a redundant device. Please provide the second metro location to get the price of your secondary device. | ||
secondaryAdditionalBandwidth | integer | 100 | Secondary additional bandwidth of the secondary device in Mbps. | ||
accountUcmId | string | 678907 | Unique Id of your account. You may use this unique Id if you do not have an account number. |
Sample response:
{
"termLength": "12",
"primary": {
"charges": [
{
"description": "VIRTUAL_DEVICE",
"monthlyRecurringCharges": "423.20"
},
{
"description": "DEVICE_LICENSE",
"monthlyRecurringCharges": "0.00"
},
{
"description": "ADDITIONAL_BANDWIDTH",
"monthlyRecurringCharges": "1932.00"
}
],
"currency": "USD",
"billingCommencementDate": "Wed Feb 12 2020 20:47:26 UTC"
},
"secondary": {
"charges": [
{
"description": "VIRTUAL_DEVICE",
"monthlyRecurringCharges": "423.20"
},
{
"description": "DEVICE_LICENSE",
"monthlyRecurringCharges": "0.00"
},
{
"description": "ADDITIONAL_BANDWIDTH",
"monthlyRecurringCharges": "1288.00"
}
],
"currency": "USD",
"billingCommencementDate": "Wed Feb 12 2020 20:47:26 UTC"
}
}
The description of the response payload is as follows:
Field Name | Type | Example | Description |
---|---|---|---|
termLength | string | 1 | The term length of the contract. |
primary | object | primary{} | Price details of the primary device. |
charges | array | charges[] | Array of charges. |
description | string | VIRTUAL_DEVICE | Description of the charge, whether it is for a virtual device, device license, or additional bandwidth. |
monthlyRecurringCharges | string | 566 | Monthly charges. |
currency | string | USD | Currency. |
billingCommencementDate | string | "Wed Feb 12 2020 20:47:26 UTC" | Your billing will start on this date. |
secondary | object | secondary{} | Price details of the secondary object, in case you want to create a redundant device. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Order Summary
GET /ne/v1/orderSummaries | |
---|---|
Method | GET |
URL or End Point | /ne/v1/orderSummaries |
Headers | Authorization, Content-Type |
Query Parameters | accountNumber, metro, vendorPackage, licenseType, softwarePackage, throughput, throughputUnit, termLength, additionalBandwidth, virtualDeviceUuid, core, deviceManagementType, secondaryAccountNumber, secondaryMetro, secondaryAdditionalBandwidth, accountUcmId |
Body | Not applicable |
Returns an order summary as a printable pdf file. This API provides an
order estimate to help you go through your PO process before making a
purchase.
Note: If you are a reseller's customer,
please contact your reseller for pricing information.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/orderSummaries?accountNumber=200541&vendorPackage=C8000V&metro=SV&licenseType=BYOL&softwarePackage=network-advantage&throughput=1&throughputUnit=Gbps&termLength=1&additionalBandwidth=200&core=4&deviceManagementType=SELF-CONFIGURED"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameters:
Query Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
accountNumber | Yes | integer | 2252726 | Account number. Please provide an account number that belongs to the metro where you want a device. | |
metro | Yes | string | DC | Metro where you want a device. | |
vendorPackage | Yes | string | C8000V | Vendor package (device type code). | |
licenseType | string | SUB | License type, whether you want a subscription license (Equinix handles the license and charges monthly) or you want to bring your own license (BYOL). | ||
softwarePackage | Yes | string | IPBASE | Software package code. | |
throughput | string | 500 | Throughput of the device. | ||
throughputUnit | string | Mbps | Throughput Unit. | ||
termLength | string | 1 | The term length of the contract in months. | ||
additionalBandwidth | integer | 100 | Additional bandwidth (in Mbps). | ||
deviceManagementType | string | EQUINIX-CONFIGURED | EQUINIX-CONFIGURED, SELF-CONFIGURED | Whether the device is managed by Equinix or not. | |
core | integer | 4 | The number of cores. | ||
virtualDeviceUuid | string | d5d88982-382f-420a-8d63-9dc4c3075f4c | Unique Id of a virtual device. You may query this API to check the price of additional services for an existing virtual device. | ||
secondaryAccountNumber | integer | 2242345 | Secondary account number of the redundant device. | ||
secondaryMetro | string | DC | Secondary metro of the redundant device. | ||
secondaryAdditionalBandwidth | integer | 100 | Secondary additional bandwidth of the redundant device in Mbps. | ||
accountUcmId | string | 678907 | Unique Id of your account. You may use this unique Id if you do not have an account number. |
Sample response:
200 Okay
The description of the response is as follows:
Parameter | Description |
---|---|
Content-Type | application/pdf;charset=UTF-8. The response is a pdf file that you can save or view online. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Public Keys
GET /ne/v1/publicKeys | |
---|---|
Method | GET |
URL or End Point | /ne/v1/publicKeys |
Headers | Authorization, Content-Type |
Query Parameters | accountUcmId, keyType |
Body Parameters | Not applicable |
Returns the public keys associated with this organization.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/publicKeys"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Query parameters:
Field name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
accountUcmId | No | string | Unique Id of the account. A reseller querying for a customer's keys can input the accountUcmId of the customer's account. To find out the accountUcmId of your customer's account, please check the Equinix account creation portal (ECP) or call Get account API. | ||
keyType | No | string | Type of key, whether DSA or RSA. |
Sample response:
[
{
"uuid": "0e6b4284-4a16-41f1-a7f4-358cf39f94ff",
"keyName": "myKeyName",
"keyValue": "ssh-dss AAAAB3NzaC1kc3MAAACBAMlGtsmB+TT5VG9mZ8oz9BsSJ9S96M+PA16HDCgMw+ZBWMP93iVZ2mA1fmNdKQSib/AqWFyZWwx+ToS0TttFsfsc62nXPeifXwiLQaakY1q21dbkis5gkhoDuSsjLHjt5LImPp2D8/Xt9dtx0H/YQwDHoMHRl+Z6WBpxoXKEoHqLAAAAFQCrm4ir4smSsHQzDKNtQJwevqhf8wAAAIEAhLrSegLVY4VBUMcY7oPjute+xuv5nDP/YjGMCC6LgQMK6aD8IZ6nZ/et3bPzr4ThONPT96ArNmLbJIlVYev6ibCSTd6eAUDA0JLIBi24br+BzoriaE/nR4RinGXFClwymEkKC2hbrdrKlZVJav4X71LGJtW6jLlq+Damk3oqhbMAAACAe/ZyrtBz1zpH95JuSD9Pb+ELbTy1x/BvGYa0tqPl/1dWyLvc+RrnJWBcowkM6AvTLs8CCuwGYfMQVhdF+MRvxxvLooCoS9LS61Gf+Bw5cneSwt+p1y9Udwa9gRgQp96JHSLXP6vfzJ1coFGEt2CySGX7wj6t8Xhdpy7TRU2BYCM= noname",
"keyType": "DSA"
},
{
"uuid": "b652d199-461e-479c-914c-37de5d8546ba",
"keyName": "key7DIrn",
"keyValue": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDgxRKCF90I2rm9jV3HZTqxlh8hItrM3pP9kExgdubN1vA9HOhFejm6h6ppE30k0v5A5969uoB0xH19stulNFvku37eX+oE+Led6Z3Lq4Um5W8YXVHV5PGcpTE+PKwQ1kNz8QTGt//75bm6cskA/yQjFIFUesWJrQgOIA1S/vhofQ== noname",
"keyType": "RSA"
}
]
The description of the response payload:
Field name | Type | Example | Description |
---|---|---|---|
uuid | string | 0e6b4284-4a16-41f1-a7f4-358cf39f94ff | The unique Id of the keyName and keyValue combination. |
keyName | string | key7DIrn | Key name. |
keyValue | string | ssh-rsa AAAAB3NzaC1yc2EAAS/vhofQ== noname | Key value. |
keyType | string | RSA | Type of key, whether RSA or DSA. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Create Public Key
POST /ne/v1/publicKeys | |
---|---|
Method | POST |
URL or End Point | /ne/v1/publicKeys |
Headers | Authorization, Content-Type |
Path Parameters | NA |
Body Parameters | accountUcmId, keyName, keyValue, keyType, projectId |
Creates a keyName and keyValue pair.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
POST "https://api.equinix.com/ne/v1/publicKeys"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
-d "{
"keyName": "myKeyName",
"keyValue": "ssh-dss AAAAB3NzaC1kc3MAAACBAMlGtsmB+TT5VG9mZ8oz9BsSJ9S96M+PA16HDCgMw+ZBWMP93iVZ2mA1fmNdKQSib/AqWFyZWwx+ToS0TttFsfsc62nXPeifXwiLQaakY1q21dbkis5gkhoDuSsjLHjt5LImPp2D8/Xt9dtx0H/YQwDHoMHRl+Z6WBpxoXKEoHqLAAAAFQCrm4ir4smSsHQzDKNtQJwevqhf8wAAAIEAhLrSegLVY4VBUMcY7oPjute+xuv5nDP/YjGMCC6LgQMK6aD8IZ6nZ/et3bPzr4ThONPT96ArNmLbJIlVYev6ibCSTd6eAUDA0JLIBi24br+BzoriaE/nR4RinGXFClwymEkKC2hbrdrKlZVJav4X71LGJtW6jLlq+Damk3oqhbMAAACAe/ZyrtBz1zpH95JuSD9Pb+ELbTy1x/BvGYa0tqPl/1dWyLvc+RrnJWBcowkM6AvTLs8CCuwGYfMQVhdF+MRvxxvLooCoS9LS61Gf+Bw5cneSwt+p1y9Udwa9gRgQp96JHSLXP6vfzJ1coFGEt2CySGX7wj6t8Xhdpy7TRU2BYCM= noname",
"keyType": "DSA",
"projectId": "XXXXX"
}"
Body parameters:
Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
keyName | Yes | string | myKeyName | Key name | |
keyValue | Yes | string | ssh-dss AAAAB3NzaC1kc/7TRU2BYCM= noname | Key value. This should be an existing keyValue that has been set up. | |
keyType | No | string | RSA | Type of key, whether RSA or DSA. Default is RSA. | |
projectId | No | string | XXXXXX |
Customer project Id. Provide the projectId you get from Resource Management on Equinix portal. You will not see the newly created Public Key if you create it under a projectId to which you do not have access. Equinix will assign a projectId if you do not provide one. |
201: Created
Response payload:
Field | Type | Example Values | Description |
---|---|---|---|
201 | string | CREATED | The keyName and keyValue pair was created. The unique Id of the newly created public key is in the location-header of the response. |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Get Downtime Notifications
GET ne/v1/notifications | |
---|---|
Method | GET |
URL or End Point | ne/v1/notifications |
Headers | Authorization, Content-Type |
Query Parameters | Not applicable |
Body | Not applicable |
Returns all planned and unplanned downtime notifications related to APIs/infrastructure.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
curl -X
GET "https://api.equinix.com/ne/v1/notifications"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
Sample response:
{
"notificationType": "unplanned_downtime",
"startTime": "",
"endTime": "",
"impactedServices":
[
{
"serviceName": "Device",
"impact": "delay",
"serviceStartTime": "2019-08-27T17:30:00Z",
"serviceEndTime": "2019-08-28T17:30:00Z",
"errorMessage": "Create device APIs are experiencing delayed responses."
},
{
"serviceName": "Layer2",
"impact": "down",
"serviceStartTime": "2019-08-27T17:30:00Z",
"serviceEndTime": "2019-08-28T17:30:00Z",
"errorMessage": "Create layer 2 connections APIs are down."
},
{
"serviceName": "Pricing",
"impact": "down",
"serviceStartTime": "2019-08-27T17:30:00Z",
"serviceEndTime": "2019-08-28T17:30:00Z",
"errorMessage": "Unable to fetch pricing."
}
],
"additionalMessage": ""
}
The description of the response payload:
Field Name | Type | Example | Description |
---|---|---|---|
notificationType | string | unplanned_downtime | Type of notification. The three possible values are: unplanned_downtime, planed_downtime, and no_downtime. |
startTime | string | 2019-08-27T17:30:00Z | Start of the downtime. |
endTime | string | 2019-08-27T17:30:00Z | End of the downtime. |
impactedServices | array | An array of services impacted by the downtime. | |
serviceName | string | Device | The name of the service impacted by the downtime. |
impact | string | down | The type of impact, whether the impacted service is down or delayed. |
serviceStartTime | string | 2019-08-27T17:30:00Z | Start of the downtime of the service. |
serviceEndTime | string | 2019-08-27T17:30:00Z | End of the downtime of the service. |
errorMessage | string | Create Device APIs are currently down | Downtime message of the service. |
additionalMessage | string | Network Edge APIs are currently unavailable, please try again later. | Any additional messages |
If you get “Access Denied” error, contact your local Equinix Service Desk.
Upload File
POST /ne/v1/files | |
---|---|
Method | POST |
URL or End Point | /ne/v1/files |
Headers | Authorization, Content-Type |
Query Parameter | NA |
Form Data | file, deviceManagementType, deviceTypeCode, licenseType, metroCode, processType |
Uploads a license or a cloud_Init file. For example, before creating an Aviatrix device, you can use this API to upload your bootstrap config file generated from the Aviatrix controller portal. The response includes the unique ID of the uploaded file.
To obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Access Token section.
Sample curl request:
POST "https://api.equinix.com/ne/v1/files?"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
-H "content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"
-F "file=@SRT-AVX-cloud-init.txt;type=text/plain"
-F "deviceTypeCode=AVIATRIX_EDGE" -F "metroCode=DC"
-F "processType=CLOUD_INIT"
Form Parameter Name | Mandatory | Type | Example | Applicable Values | Description |
---|---|---|---|---|---|
file | Yes | formdata | CSR-FA819DC1-96FE-497A-89B4-FE3C897C981F.cfg | A license or a cloud_init file. For example, for Aviatrix, this is your bootsrap config file generated from the Aviatrix Controller portal. | |
deviceManagementType | No | formdata | SELF-CONFIGURED | Device management type. | |
deviceTypeCode | Yes | formdata | AVIATRIX_EDGE | Device type code. | |
licenseType | No | formdata | BYOL | Bring your own license (BYOL). | |
metroCode | Yes | formdata | DC | Two-letter metro code. | |
processType | Yes | formdata | CLOUD_INIT | LICENSE/CLOUD_INIT | Whether you are uploading a license or a cloud_init file. |
Sample response:
{
"fileUuid": "e0578172-7461-458f-91db-634f865fcaf5"
}
Description of the 200 Okay response payload:
Field | Type | Example Values | Description |
---|---|---|---|
fileUuid | string | e0578172-7461-458f-91db-634f865fcaf5 | File unique Id. You can use this ID to create a virtual device on the Network Edge platform. |
If you get “Access Denied” error, contact your local Equinix Service Desk.