Once a port is active, you can provision a connection on it. You can create Layer 2 Connections between your port and another port belonging to your company (self-to-self), to a port belonging to another company (B2B), or to a DCP port.
Connections can be in one of the following states:
Status | Description |
---|---|
PENDING | The connection request is pending approval from at least one party. |
CANCELLED | The request was cancelled by the source/requestor. |
PENDING ACCEPTANCE | Pending acceptance by 3rd party service (e.g. AWS). |
DENIED | The request was rejected by the target. |
ACCEPTED | The request was accepted by the target, but the physical port has not yet come up. |
ACTIVE | The connection is Active and operational. |
DISABLED | The connection has been explicitly disabled. |
DELETING | The connection is in the process of being deleted. |
DELETED | The connection has been deleted. |
MANUAL | The connection is being manually provisioned. |
ERROR | The connection is in an error state. Refer to connection.errorReason for more information. |
Create a Layer 2 connection request to a specified destination company. Layer 2 connections require a source port ID and requested metro.
paymentTransactionId
, duration and evergreen options must be provided in the request.OK
{- "type": "LAYER2",
- "name": "my new connection",
- "portId": "123",
- "speed": 1000,
- "paymentType": "invoice",
- "duration": 1,
- "durationUnit": "m",
- "destPortId": "d466b388d3e9ee0a92177910",
- "destCompany": "companyusername"
}
{- "id": "58afc0499430ab7f3666b990",
- "type": "LAYER2",
- "status": "CREATING",
- "srcRegionId": "236107000000000000000001",
- "destRegionId": "236107000000000000000001",
- "updatedAt": "2017-02-24T05:10:44.942Z",
- "createdAt": "2017-02-24T05:10:33.807Z",
- "speed": {
- "value": 1000,
- "name": "1000 Mbps"
}, - "subconnections": [ ],
- "vlan": {
- "id": null,
- "service": null,
- "customer": [ ]
}, - "name": "my new connection",
- "cdrBillingType": "METRO",
- "payg": true,
- "billingType": [
- "PAYG"
], - "classOfService": "BRONZE"
}
{- "id": "58afc0499430ab7f3666b990",
- "name": "my connection",
- "status": "ACTIVE",
- "type": "LAYER2",
- "speed": {
- "value": 1000,
- "name": "1000 Mbps"
}, - "srcRegionId": "236107000000000000000001",
- "destRegionId": "236107000000000000000001",
- "updatedAt": "2017-02-24T05:10:44.942Z",
- "createdAt": "2017-02-24T05:10:33.807Z",
- "tag": null,
- "deleted": false,
- "deletedAt": "1970-01-01T00:00:00.000Z",
- "subconnections": [ ],
- "srcCompany": [
- {
- "id": "58afc0489430ab7f3666b982"
}
], - "destCompany": [
- {
- "id": "58afc0489430ab7f3666b981"
}
], - "metro": [
- {
- "id": "d466b388d3e9ee0a92177910"
}
], - "destMetro": [
- {
- "id": "d466b388d3e9ee0a92177910"
}
], - "port": [
- {
- "id": "58afc0489430ab7f3666b97a"
}, - {
- "companyId": "58afc0479430ab7f3666b974"
}
], - "cdrBillingType": "METRO",
- "payg": true,
- "billingType": [
- "PAYG"
], - "maintenanceMode": false,
- "srcVlanRequest": 1000,
- "destVlanRequest": 2000,
- "classOfService": "GOLD",
- "vlan": [
- {
- "id": null
}, - {
- "service": null
}, - {
- "customer": [ ]
}
], - "request": [
- {
- "status": "PENDING"
}, - {
- "destMetroId": "d466b388d3e9ee0a92177910"
}, - {
- "speed": 580
}, - {
- "srcApproval": null
}, - {
- "destApproval": "58afc0479430ab7f3666b971"
}, - {
- "read": false
}, - {
- "updatedAt": "2017-02-24T05:10:44.942Z"
}
]
}
Update a Layer 2 connection
This is used for both connection requests and regular connection edits.
To prevent unexpected costs for the other party, you may only reduce the speed of a connection to another company (either as a connection request or after it has been activated).
Self-connections can be updated to a new speed at any time.
The speed of connection groups may not be updated.
OK
{- "speed": 1,
- "name": "string",
- "portId": "string",
- "untagged": true,
- "destUntagged": true,
- "destPortId": "string",
- "controllerId": "string",
- "destControllerId": "string"
}
{- "id": "58afc0499430ab7f3666b990",
- "name": "my connection",
- "status": "ACTIVE",
- "type": "LAYER2",
- "speed": {
- "value": 1000,
- "name": "1000 Mbps"
}, - "srcRegionId": "236107000000000000000001",
- "destRegionId": "236107000000000000000001",
- "updatedAt": "2017-02-24T05:10:44.942Z",
- "createdAt": "2017-02-24T05:10:33.807Z",
- "tag": null,
- "deleted": false,
- "deletedAt": "1970-01-01T00:00:00.000Z",
- "subconnections": [ ],
- "srcCompany": [
- {
- "id": "58afc0489430ab7f3666b982"
}
], - "destCompany": [
- {
- "id": "58afc0489430ab7f3666b981"
}
], - "metro": [
- {
- "id": "d466b388d3e9ee0a92177910"
}
], - "destMetro": [
- {
- "id": "d466b388d3e9ee0a92177910"
}
], - "port": [
- {
- "id": "58afc0489430ab7f3666b97a"
}, - {
- "companyId": "58afc0479430ab7f3666b974"
}
], - "cdrBillingType": "METRO",
- "payg": true,
- "billingType": [
- "PAYG"
], - "maintenanceMode": false,
- "srcVlanRequest": 1000,
- "destVlanRequest": 2000,
- "classOfService": "GOLD",
- "vlan": [
- {
- "id": null
}, - {
- "service": null
}, - {
- "customer": [ ]
}
], - "request": [
- {
- "status": "PENDING"
}, - {
- "destMetroId": "d466b388d3e9ee0a92177910"
}, - {
- "speed": 580
}, - {
- "srcApproval": null
}, - {
- "destApproval": "58afc0479430ab7f3666b971"
}, - {
- "read": false
}, - {
- "updatedAt": "2017-02-24T05:10:44.942Z"
}
]
}
When both parties have approved the connection request, the connection will be created. Connections are automatically approved when a party updates the connection request.
OK
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
Before a connection can be enabled, the source and destination ports must both be in the 'ACTIVE' state.
OK
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
When you need to make a change that affects the other end of the connection, you must make a change request so that both parties can approve the change. The workflow of a change request is as follows:
connection.request.status
will be set to PENDING
.Note: Speed decreases are allowed at any time. If a change request is made, the destination company can accept the change at a lower speed than the one specified.
You will need to have your 'companyId' handy. If you cannot remember your 'companyId', you can make a request to find it.
Create a change request. This will send an alert to the other party to approve.
The change request must be within the bounds of your port speed and Committed Data Rate (CDR). The bandwidth amount will be deducted from your entitlement (including global CDR) as soon as the request is made, reserving it for when the other party accepts the connection.
Use this endpoint to reduce the speed of an existing change request. If the other company has approved the change and you reduce the speed, the change will be applied automatically.
OK
{- "speed": 250
}
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
Reject or cancel a change request.
After performing this action, the 'request.status' will be set to either 'WITHDRAWN' if this is a change you proposed, or 'REJECTED' if this is a change the other party proposed.
An alert will be sent to the other party advising them of this change.
OK
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
Approve a change request. If both parties have approved this change request, the change will be applied automatically.
If you wish to accept a connection at a different speed, use the Create or update a change request endpoint.
OK
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
Mark a change request as read. This does not alter the change request, and will not allow the other side to see that you have marked it as read. This is a cosmetic change, and is only used to maintain state on the front-end.
OK
{- "type": "LAYER2",
- "name": "string",
- "srcPortId": "string",
- "speed": {
- "name": "10000 Mbps",
- "value": 10000
}, - "destMetroId": "string",
- "destCompany": "string",
- "destPortId": "string",
- "paymentType": "creditcard",
- "partner": {
- "destPortIds": [
- "string"
], - "account": "string"
}
}
Sync the connection with the upstream provider. This is implemented for AzureExpressRoute, and will fetch the latest information from the Azure API. Use this when you have changed the connection speed & details in Azure and need to sync them back to Console Connect.
OK
{- "results": [
- {
- "timestamp": "2016-07-17T23:14:36.853Z",
- "connection": {
- "id": "55783e39519d254d36f6126e",
- "speed": {
- "value": 200,
- "name": "200 Mbps"
}, - "status": "ACTIVE",
- "name": "International link"
}, - "user": {
- "id": "58980a25a77b4d7bf459d100",
- "name": "Stan",
- "username": "stan",
- "type": "PERSON",
- "groups": [ ],
- "location": null,
- "summary": null,
- "headline": null,
- "background": null,
- "avatarId": null,
- "overviewImage": null,
- "categories": [ ],
- "isCloudProvider": false,
- "cloudProviderDetails": {
- "asn": {
- "range": [ ]
}, - "bgpAuthority": "PCCWGLOBAL",
- "companyType": "DCP"
}, - "online": false,
- "isFollowing": false,
- "isFollowee": false,
- "__v": 0,
- "stats": {
- "members": 0,
- "interconnections": 0,
- "followers": 0,
- "following": 0,
- "privateArticles": 0,
- "privateEvents": 0,
- "privatePosts": 0,
- "articles": 0,
- "events": 0,
- "posts": 0
}, - "displayOrder": -299,
- "system": {
- "welcomeMessage": null
}, - "deletedAt": null,
- "deleted": false,
- "verified": false,
- "verifiedIdentity": false,
- "tags": [ ],
- "status": "ACTIVE",
- "companies": [ ],
- "linkUserCompany": { },
- "signedCompanyRefId": null
}
}
]
}
OK
{- "connectionId": 120391239323,
- "results": [
- {
- "rxAverage": 1,
- "rxMax": 2,
- "rxMin": 0.005,
- "time": 49303945838,
- "txAverage": 1,
- "txMax": 2,
- "txMin": 0.005
}
], - "unit": "Mbps"
}