Skip to main content

Effective 10 September 2024, API Documentation can be found on our Equinix Product Documentation site.
The content on this page will not be updated after 1 Oct 2024 and will be inaccessible after 31st Dec 2024.


Determine Project Identifier

Projects aggregate resources required for your end-customer or internal projects needs. When you place an order for a product asset, you must specify the project that the asset instance will be assigned to. Retrieve projects to determine the project identifier.

Determine Project Identifier


Step 1: Authenticate

Submit your user credentials, Client ID, and Client Secret for OAuth2 authentication.

 

Refer to Generate Client ID and Client Secret under Getting Access Token section for instructions on how to create client ID and client secret and refer to Request Access and Refresh tokens for instructions on how to call Oauth API to validate and authenticate your credentials.

 

If you don't know your user credentials for Equinix Customer Portal, contact your local Equinix Service Desk. 


Step 2: Get Projects

Use the Get Projects API request to retrieve all projects in your root organization.

Sample curl request

curl -X GET 'https://api.equinix.com/resourceManager/v2/projects?includePermissions=true&includeInbox=true'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'

Sample response

{
"pagination": {
"offset": 0,
"limit": 20,
"total": 2
},
"data": [
{
"projectId": "1234",
"projectName": "Top Secret Project",
"labels": {
"application": "Network Edge"
},
"parentOrganizationId": "1234",
"resourceSubType": "END_CUSTOMER",
"rootOrgId": "316481000362970",
"inboxResource": false,
"silentProject": false,
"permissions": [
{
"actions": [
"networkedge.acl.view",
"networkedge.acl.create",
"networkedge.acl.modify"
],
"resourceType": "ACL"
},
{
"actions": [
"fabric.port.read"
],
"resourceType": "PORT"
}
]
},
{
"projectId": "5678",
"projectName": "Potato Inc. Project",
"labels": {
"application": "Network Edge"
},

"parentOrganizationId": "1234",
"resourceSubType": "END_CUSTOMER",
"rootOrgId": "316481000362970",
"inboxResource": false,
"silentProject": false,
"permissions": [
{
"actions": [
"networkedge.l2connection.view",
"fabric.l2connection.read",
"networkedge.l2connection.create",
"networkedge.l2connection.delete",
"networkedge.l2connection.modify"
],
"resourceType": "L2_CONNECTION"
}
]
}
]
}
 

Only projects with silentProject attribute set to false can be used for ordering product assets.


Step 3: Order Asset Instance

Use the product-specific create API request to place an order. Make sure to include project identifier retrieved in the previous step.

Sample curl request - order Equinix Internet Access over a Fabric port

curl -X POST 'https://api.equinix.com/internetAccess/v1/services'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '{
"name": "Web servers",
"description": "Internet connection for Minecraft server.",
"type": "SINGLE_PORT",
"useCase": "MAIN",
"billing": "FIXED",
"bandwidth": 500,
"connections": [
{
"type": "IA_VC",
"name": "Connection",
"description": "EIA over Fabric connection.",
"aSide": {
"accessPoint": {
"type": "COLO",
"port": {
"type": "XF_PORT",
"uuid": "c4d85dbe-fa11-a119-f7e0-306a5c00af26"
},
"linkProtocol": {
"type": "DOT1Q",
"vlanTag": 829
}
}
}
}
],
"routingProtocols": [
{
"type": "STATIC",
"name": "routingProtocol1",
"description": "Routing Protocol for EIA over Fabric.",
"ipv4": {
"customerRoutes": [
{
"importPolicy": "PA",
"ipBlock": {
"prefixLength": 27,
"addressingPlans": [
{
"purpose": "Provide internet services to the customers",
"immediate": 1,
"afterThreeMonths": 1
}
],
"questions": [
{
"type": "PRIVATE_SPACE_CONSIDERED",
"answer": "YES"
},
{
"type": "RETURNING_ADDRESS_SPACE",
"answer": "YES"
},
{
"type": "REFUSED_PREVIOUSLY",
"answer": "YES"
}
]
}
}
]
}
}
],
"order": {
"referenceNumber": "",
"signature": {
"signatory": "DELEGATE",
"delegate": {
"email": "someone.else@equinix.com"
}
},
"contacts": [
{
"type": "TECHNICAL",
"registeredUser": "joeAverage"
},
{
"type": "NOTIFICATION",
"registeredUser": "joeAverage"
}
]
},
"account": {
"accountNumber": "123456"
},
"project": {
"projectId": "1234"
}
}'

Sample response

{
"uuid": "e6b8874f-d1f8-4f94-ad57-96569dd74486",
"type": "SINGLE_PORT",
"useCase": "MAIN",
"name": "Web servers",
"description": "Internet connection for web servers."
"bandwidth": 500,
"account": {
"accountNumber": "123456"
},
"billing": "FIXED",
"draft": false,
"order": {
"href": "https://api.equinix.com/internetAccess/v1/services/e6b8874f-d1f8-4f94-ad57-96569dd74486/orders/4b8df286-5562-41e2-8753-0379eecbe176",
"uuid": "4b8df286-5562-41e2-8753-0379eecbe176",
"type": "AMENDMENT"
},
"state": "PENDING"
}