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:

Copy
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:

Copy
{
"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:

Copy
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:

Copy
{
"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:

Copy
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:

Copy
{
    "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:

Copy
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:

Copy
{
    "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:

Copy
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:

Copy
{
    "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:

Copy
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.
Copy
{
    "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:

Copy
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:

Copy
{
    "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.

Copy
curl -X
GET "https://api.equinix.com/ne/v1/agreements/orders"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"

Sample response:

Copy
{
    "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:

Copy
‌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:

Copy
{
    "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:

Copy
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:

Copy
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:

Copy
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:

Copy
[
    {
        "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:

Copy
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.

Copy
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:

Copy
curl -X
GET "https://api.equinix.com/ne/v1/notifications"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"

Sample response:

Copy
{
    "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:

Copy
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:

Copy
{
    "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.