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.


Authorize Buyer to Access Private Service Profile

How_to_Guide_Usecases_Whitelist_User_diagram

Step 1: Authenticate

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

 

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

 

If you are unaware of your user credentials for Equinix Fabric, contact your local Equinix Service Desk.

Step 2: Retrieve Service Profile

Identify the seller service profile you wish to update.

 

Refer to GET Services under the API Reference section for instructions on how to get the seller profile. You may skip this step if you already know the service profile details.

Step 3: Update Seller Profile

 PUT /ecx/v3/l2/serviceprofiles
MethodPUT
URL or Endpoint/ecx/v3/l2/serviceprofiles
HeadersAuthorization, Content-Type
Query ParametersNot applicable
Body Parametersuuid, additionalBuyerInfo [{captureInEmail, datatype, description, mandatory, name }], alertPercentage, allowCustomSpeed, apiAvailable, authKeyLabel, connectionAccessibility, connectionNameLabel, ctagLabel, description, equinixManagedPortAndVlan, features {cloudReach, testProfile}, integrationId, namedTags[...], ports[{crossConnectId, id, inTrail, metroCode, sellerRegion, sellerRegionDescription, xa{}}], private, requiredRedundancy, speedBands[{speed, unit}], speedFromAPI, tagType, uuid, status, vlanSameAsPrimary, name, onBandwidthThresholdNotification[...], onProfileApprovalRejectNotification[...], onVcApprovalRejectionNotification[...], privateUserEmails[...]}

The PUT serviceprofiles API updates a Layer 2 service profile. The authorization token and content-type are the only headers that are passed to this API and a response is received based on the values passed.

 

If you are unaware of how to obtain an authorization token, refer to Requesting Access and Refresh tokens section under the Getting Access Token.

The following screenshots show a sample curl request and a sample JSON response to modify a layer 2 service profile to white list the user Jane Doe.


curl -X
PUT "http://api.equinix.com/ecx/v3/l2/serviceprofiles"
-H "content-type: application/json"
-H "authorization: Bearer qwErtY8zyW1abcdefGHI"
-d '{
"uuid": "36bfb968-1e4b-4973-baa0-35d2904944de",
"name": "JohnDoe_ServiceProfile",
"privateUserEmails": [
"Jane.Doe@ap.example.com"
],
"onProfileApprovalRejectNotification": [
"John.Doe@example.com"
],
"onBandwidthThresholdNotification": [
"John.Doe@example.com"
],
"onVcApprovalRejectionNotification": [
"John.Doe@example.com"
],
"connectionNameLabel": "Connection",
"ctagLabel": "",
"equinixManagedPortAndVlan": false,
"allowOverSubscription": false,
"overSubscription": "",
"apiAvailable": false,
"integrationId": "Direct-01",
"private": false,
"features": {
"cloudReach": false,
"testProfile": false
},
"requiredRedundancy": false,
"tagType": "CTAGED",
"vlanSameAsPrimary": false,
"enableAutoGenerateServiceKey": false,
"additionalBuyerInfo": [],
"ports": [
{
"id": "8cb83fdb-6671-6714-bbe0-38389cc0acfa",
"metroCode": "SV",

"sellerRegion": null
}
],
"allowCustomSpeed": false,
"speedFromAPI": false,

"speedBands": [
{
"speed": 50,
"unit": "MB"
},
{
"speed": 200,
"unit": "MB"
},
{
"speed": 500,
"unit": "MB"
},
{
"speed": 1000,
"unit": "MB"
}
]

}

The description of the body parameters is as follows:

Body Parameter NameMandatoryTypeExample valuesApplicable valuesDescription
uuidYesstring9ac03fb0-339f-480e-a79e-87bae5ed0d75 The unique Equinix-assigned ID of the user profile.
nameYesstringJohnDoe_AWSServiceProfile User-defined name of the service profile connection.

Supply an alpha-numeric string, which can include hyphens and underscores ('-' & '_') as special characters (no other special characters are allowed).

Max Length: 24 characters
privateUserEmailsNoarray [string]Jane.Doe@example.com An array of user email addresses, where each user identified has the permission to access this service profile. 

Example: ["user@example.com", "user2@example.com"]
onProfileApprovalRejectNotificationYesarray [string]John.Doe@example.com An array of email address that are notified when there are any updates on your profile.

Example: ["user@example.com", "user2@example.com"]
onBandwidthThresholdNotificationYesarray [string]John.Doe@example.com An array of email addresses that are notified when a bandwidth threshold has been triggered.

Example: ["user@example.com", "user2@example.com"]
onVcApprovalRejectionNotificationYesarray [string]John.Doe@example.com An array of email addresses that are notified when a virtual connection has been approved or rejected.

Example: ["user@example.com", "user2@example.com"]
alertPercentageYesstring85 Specifies the port bandwidth threshold percentage. If the bandwidth limit is met or exceeded, an alert is sent to the seller.

Range: 0 - 100
authKeyLabelNostringAuthentication Secret Key The Authentication Key service allows Service Providers with QinQ ports to accept groups of connections or VLANs from Dot1q port customers.

This is similar to having S-Tag/C-Tag capabilities.
connectionNameLabelYesstringConnection User-defined name of the connection.

Supply an alpha-numeric string, which can include hyphens and underscores ('-' & '_') as special characters (no other special characters are allowed).

Max Length: 24 characters
ctagLabelNostring  User-defined name of the C-Tag/Inner-Tag of the connection.

Range: 2 - 4094
equinixManagedPortAndVlanYesbooleantrue Only applicable only if APIavailable is set true, this setting indicates whether or not the port and VLAN details are managed by Equinix. 
allowOverSubscriptionYesbooleantrue Regardless of the utilization, the Equinix service will continue to add connections to your links until the oversubscription limit is reached.

By selecting this service, you acknowledge that you will manage the decisions on when to increase the capacity of these links.
overSubscriptionNostring10x You can set an alert to indicate when a percentage of your profile has been sold.

Service providers can use this feature to sent an alert when more more ports need to be added or when a new service profile needs to be created.
apiAvailableYesbooleantrue API integration allows you to complete connection provisioning in less than five minutes. Without API Integration, additional manual steps are required, and the provisioning will likely take longer.
integrationIdNostringAWS-DirectConnect-01 

Specifies the API integration ID that was provided to the customer during onboarding. You can validate your API integration ID using the validateIntegrationId API.

 

If you are unaware of your integration ID, contact your local Equinix Service Desk.

privateYesbooleanfalse Indicates whether or not this profile is private.

If private, the profile is only available for creating connections when the correct permissions have been granted (i.e. not public like AWS/Azure/Oracle/Google, etc.).
featuresYesobject  Contains feature-related information, such as cloudReach and testProfile.
cloudReachYesbooleantrue Indicates whether or not connections to this profile can be created from remote metros.
testProfileYesbooleanfalse Indicates whether or not this profile can be used for test connections.
requiredRedundancyYesbooleantrue Specifies whether or not your connections require redundancy.

If set to yes, then users need to create a secondary redundant connection.
tagTypeNostringCTAGED Specifies additional tagging information required by the seller profile.
vlanSameAsPrimaryYesbooleantrue Indicates whether or not the VLAN ID of the secondary connection is the same as the primary connection.
enableAutoGenerateServiceKeyNobooleanfalse If set to yes, this flag indicates that multiple connections can be created with the same authorization key to connect to this service profile after the first connection has been approved by the seller.
additionalBuyerInfoNoarray[string]  

An array containing a maximum of 10 custom fields that you can use to gather additional information.

portsYesstring  Where will your service be available?

Choose the locations where your customers will be able to access your services. The locations specified need at least one active port present in order to qualify as an available zone.
idYesstring8cb83fdb-6671-6714-bbe0-38389cc0acfa The Equinix-assigned ID of the port.
metroCodeYesstringSV The metro where the port resides.
allowCustomSpeedYesbooleanfalse This flag specifies whether or not customers can enter a custom port speed.
speedFromAPIYesbooleantrue This flag specifies whether or not  the speed is derived from an API request.
 

If you get “Access Denied” error, contact your local Equinix Service Desk for Equinix Fabric Portal access.

{
"uuid": "36bfb968-1e4b-4973-baa0-35d2904944de"
}

The description of the response payload is as follows:

Field NameTypeExample valuesDescription
uuidstring36bfb968-1e4b-4973-baa0-35d2904944deIndicates the ID of the service profile which was updated.