Replace Service Profile - Parameters Mapping
This API creates a service profile.
v3 request
curl -X
PUT 'http://api.equinix.com/ecx/v3/l2/serviceprofiles'
-H 'content-type: application/json'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-d '{
"uuid": "50cee78c-29b8-4596-901d-edbdbc0b8aff",
"name": "A-to-Z-2",
"privateUserEmails": [
"test@equinix.com"
],
"connectionNameLabel": "Connection",
"ctagLabel": "",
"equinixManagedPortAndVlan": true,
"allowOverSubscription": false,
"overSubscription": "",
"apiAvailable": false,
"integrationId": "1234",
"private": true,
"features": {
"cloudReach": true,
"testProfile": false
},
"requiredRedundancy": false,
"tagType": CTAGED,
"vlanSameAsPrimary": false,
"enableAutoGenerateServiceKey": null,
"additionalBuyerInfo": [],
"ports": [
{
"id": "cecd1039-eadd-add3-31e0-387a5c00aeb9",
"metroCode": "SV"
}
],
"allowCustomSpeed": false,
"speedFromAPI": false,
"speedBands": [
{
"speed": 50,
"unit": "MB"
},
{
"speed": 200,
"unit": "MB"
},
{
"speed": 500,
"unit": "MB"
},
{
"speed": 1000,
"unit": "MB"
}
]
}'
v4 request
curl -X
PUT'https://api.equinix.com/fabric/v4/serviceProfiles/50cee78c-29b8-4596-901d-edbdbc0b8aff'
-H 'authorization: Bearer qwErtY8zyW1abcdefGHI'
-H 'content-type: application/json'
-H 'ic-version: v4.2'
-H 'if-match: 1'
-d '{
"type": "L2_PROFILE",
"name": "A-to-Z-2",
"description": "Testing, testing, 1... 2... 3...",
"visibility": "PRIVATE",
"allowedEmails": [
"test@equinix.com"
],
"tags": [
"SaaS",
"IaaS"
],
"accessPointTypeConfigs": [
{
"type": "COLO",
"supportedBandwidths": [
50,
200,
500,
1000
],
"allowRemoteConnections": true,
"allowCustomBandwidth": false,
"bandwidthAlertThreshold": 80,
"allowBandwidthAutoApproval": false,
"linkProtocolConfig": {
"encapsulationStrategy": "CTAGED",
"reuseVlanSTag": false,
"encapsulation": "QINQ"
},
"enableAutoGenerateServiceKey": false,
"connectionRedundancyRequired": false,
"apiConfig": {
"apiAvailable": false,
"equinixManagedVlan": true,
"equinixManagedPort": true,
"allowOverSubscription": false,
"bandwidthFromApi": false,
"integrationId": null
},
"connectionLabel": "Connection",
"authenticationKey": {
"required": false
}
}
],
"customFields": [
{
"label": "Global",
"description": "Optional ",
"required": false,
"dataType": "STRING",
"captureInEmail": false
},
{
"label": "ASN",
"description": "Number. Mandatory field.",
"required": true,
"dataType": "NUMBER",
"captureInEmail": false
}
],
"marketingInfo": {
"promotion": true
},
"ports": [
{
"type": "COLO",
"uuid": "cecd1039-eadd-add3-31e0-387a5c00aeb9"
}
]
}'
v3 API request | v4 API request | Description | |
PUT /ecx/v3/l2/serviceprofiles/services | PUT /fabric/v4/serviceProfiles/{uuid} | Request: The v3 API specifies the service profile identifier in the request's body while the v4 API provides is as a path parameter. The v4 API requires the ic-version and the if-match header parameter. Response: v4 API reqest response includes the entire service profile object, while the v3 API request returns only the uuid. | |
v3 parameter | v4 parameter | Example | Description |
uuid | - | 50cee78c-29b8-4596-901d-edbdbc0b8aff | Equinix-assigned service profile identifier. |
- | type | L2_PROFILE | New parameter defining connection type, introduced to support new use cases. L2_PROFILE - layer 2 service profile for establishing connections in layer 2 of the OSI networking model. L3_PROFILE - layer 3 service profile for establishing connections in layer 2 of the OSI networking model. |
name | name | A-to-Z-2 | Service profile name. |
- | description | Testing, testing, 1... 2... 3... | Service description. |
private | visibility | PUBLIC | The v3 API uses the private boolean parameter to indicate whether the profile is private or not. The v4 API introduces the visibility parameter with enumerated values: PRIVATE, PUBLIC. |
privateUserEmails | allowedEmails | ["test@equinix.com"] | Email addresses of users allowed to establish connections based on this service profile. |
- | tags | ["SaaS", "IaaS"] | New parameter for labels identifying the type of the services advertised by given service profile. |
- | accessPointTypeConfigs | - | New container object supporting multiple access points definitions. |
- | accessPointTypeConfigs[0].type | COLO | New parameter for specifying access point type. COLO - Colocation space in an IBX data center. VD - Network Edge virtual device. |
speedBands | accessPointTypeConfigs[0].supportedBandwidths | [50,200,500,1000] | In the v4 API, available connection bandwidths is specified in an array of integers while the v3 API defines available values as an array of objects. |
speedBands[0].speed | - | 50 | - |
speedBands[0].unit | - | MB | In the v4 API, the connection bandwidth is specified in Mbps while in the v3 API, the connection bandwidth unit was specified in a separate parameter. |
features | - | - | An object containing feature-related information such as cloudReach, testProfile, etc. |
features.cloudReach | accessPointTypeConfigs[0].allowRemoteConnections | true | Authorization to establish connections from remote locations. |
features.testProfile | type=TEST | false | The v4 API introduces type parameter with TEST being one of the applicable values. |
allowCustomSpeed | accessPointTypeConfigs[0].allowCustomBandwidth | false | Authorization to set a custom connection bandwidth. |
overSubscription | accessPointTypeConfigs[0].bandwidthAlertThreshold | 80 | - |
- | accessPointTypeConfigs[0].allowBandwidthAutoApproval | false | New parameter indicating if bandwidth change requests are approved automatically. |
- | accessPointTypeConfigs[0].linkProtocolConfig | - | New container object for settings and preferences for the link protocol used at the access point. |
tagType | accessPointTypeConfigs[0].linkProtocolConfig.encapsulationStrategy | CTAGED | Specifies additional tagging information required by the service provider. |
- | accessPointTypeConfigs[0].linkProtocolConfig.reuseVlanSTag | false | Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection. |
profileEncapsulation | accessPointTypeConfigs[0].linkProtocolConfig.encapsulation | QINQ | Data frames encapsulation standard. |
- | accessPointTypeConfigs[0].enableAutoGenerateServiceKey | false | Applicable to Verizon Software Defined Interconnect service profile. |
requiredRedundancy | accessPointTypeConfigs[0].connectionRedundancyRequired | false | Indicates if connecting to the service requires creating a pair of redundant connections. |
- | accessPointTypeConfigs[0].apiConfig | - | New object container for API specific configuration. |
apiAvailable | accessPointTypeConfigs[0].apiConfig.apiAvailable | false | Indicates whether the service profile has been integrated via APIs with Equinix for automated provisioning of connections. |
equinixManagedPortAndVlan | accessPointTypeConfigs[0].apiConfig.equinixManagedVlan | true | The v3 API has a single parameter indicating Equinix-managed port and VLAN, while the v4 API has dedicate parameters for port and VLAN management. |
- | accessPointTypeConfigs[0].apiConfig.equinixManagedPort | true | The v3 API has a single parameter indicating Equinix-managed port and VLAN, while the v4 API has dedicate parameters for port and VLAN management. |
allowOverSubscription | accessPointTypeConfigs[0].apiConfig.allowOverSubscription | false | Allow services sales to exceed the available network bandwidth. |
speedFromAPI | accessPointTypeConfigs[0].apiConfig.bandwidthFromApi | false | Indicates whether the bandwidth of the connection can be obtained directly from the cloud service provider. |
integrationId | accessPointTypeConfigs[0].apiConfig.integrationId | 1234 | Specifies the API integration identifier that was provided to the customer during onboarding. |
connectionNameLabel | accessPointTypeConfigs[0].connectionLabel | Connection | An alternative term for connection in case it's different in your organization. |
authorizationKey | accessPointTypeConfigs[0].authenticationKey | - | Authentication key configuration. |
- | accessPointTypeConfigs[0].authenticationKey.required | false | Requirement to provide an authentication key. |
additionalBuyerInfo | customFields | - | The v3 API specified additional information using an array of strings while the v4 API introduces a more elaborate container object for custom fields. |
- | customFields.label | Global | Label under which a custom parameter is presented on the Equnix Fabric portal or exposed through an API. |
- | customFields.description | Optional | Custom parameter description. |
- | customFields.required | false | Indicates if a given custom field is mandatory. |
- | customFields.dataType | STRING | Custom field data type. INTEGER - Integer. STRING - String. |
- | customFields.captureInEmail | false | Capture the input value and include it in the email notification. |
- | marketingInfo | - | New object container for optional service profile branding, such as the customer's logo. |
- | marketingInfo.promotion | true | New parameter for authorization to promote the given service profile on Equinix website and other products. |
ports | ports | - | Ports associated with the service profile. |
- | ports[0].type | COLO | New parameter specifying port type. |
ports[0].id | ports[0].uuid | cecd1039-eadd-add3-31e0-387a5c00aeb9 | Equinix-assigned port identifier. |
ports[0].metroCode | - | SV | Metro where the port is located. |
metros | metros | - | Locations where subscribers can access services available through the given service profile. |
metros[0].code | metros[0].code | SV | Metropolitan area identifier. |
metros[0].name | metros[0].name | Silicon Valley | Metropolitan area name. |
metros[0].ibxs | metros[0].ibxs | ["SV5"] | List of IBX data centers within the given metro where subscribers can access services provided by the given service profile. |
metros[0].displayName | metros[0].displayName | Silicon Valley | Metropoiltan area name displayed on the service profile in the Equinix Fabric portal. |
vlanSameAsPrimary | - | false | Indicates whether the same VLAN can be used for both primary and secondary connections, not present in the v4 API. |
ctagLabel | - | C-tag | User-defined name of the C-Tag/Inner-Tag of the connection. |