Edge Console

Before configuring any network services in Console Connect, you must create a port. This is a two-step process; ordering or requesting a port, then activating that port. The price with all vendor details is returned and stored in the edgePayload. The difference between Edge and non-Edge order/port is that there is edgePayload present and the flag is set to isEdgePort=true. The collections in MongoDb for both are the same.

Get order details by ID

Get the details of a companies port order

Securityapi-key
Request
path Parameters
companyName
required
string

The username of the company that the order is for.

Example: Acme
orderId
required
string

The ID of the order.

Example: 56d691309a90128d55831db1
Responses
200

OK

get/api/company/{companyName}/ports/orders/{orderId}
Response samples
application/json
{
  • "billingId": "56d691309a90128d55831db2",
  • "cancelled": false,
  • "isEdgePort": false,
  • "edgePayload": { },
  • "cancelledAt": "1970-01-01T00:00:00.000Z",
  • "cancelledBy": null,
  • "company": {
    },
  • "controller": {
    },
  • "createdAt": "2016-03-02T07:07:28.195Z",
  • "createdBy": "stan",
  • "deleted": false,
  • "deletedAt": "1970-01-01T00:00:00.000Z",
  • "deletedBy": null,
  • "id": "56d691309a90128d55831db1",
  • "locationId": null,
  • "crossConnectId": null,
  • "message": null,
  • "metro": {
    },
  • "port": {
    },
  • "portName": "PORT_1",
  • "speed": {
    },
  • "status": "created",
  • "updatedAt": "2016-03-02T07:07:28.195Z",
  • "updatedBy": null
}

Read port details

Note: Reading a company's port details is publicly visible.

Securityapi-key
Request
path Parameters
companyName
required
string

The username of the company to check the port for.

Example: Acme
portId
required
string

The port id

Example: 55767b5652a693344a015744
Responses
200

OK

get/api/company/{companyName}/ports/{portId}
Response samples
application/json
{
  • "activeChangedAt": "2016-06-16T06:20:10.640Z",
  • "asn": {
    },
  • "capacity": {
    },
  • "company": {
    },
  • "companyId": "5762451982894b9b1b1a5dbc",
  • "connections": [
    ],
  • "controllers": [
    ],
  • "createdAt": "2016-06-16T06:20:10.029Z",
  • "dataCenterFacility": {
    },
  • "dataCenterFacilityId": "5126c9f1111e15a24a066130",
  • "deleted": false,
  • "deletedAt": "1970-01-01T00:00:00.000Z",
  • "id": "5762451a82894b9b1b1a5dc2",
  • "ip": {
    },
  • "locationId": "b3f5ac21-fec1-4418-9e1a-709d48da59fa",
  • "crossConnectId": "68696464-b2f7-4c90-a342-293f7385469a",
  • "metro": {
    },
  • "metroId": "1232413986c08c061dd8c45f",
  • "name": "Vicente",
  • "networkServiceProviderId": null,
  • "partner": {
    },
  • "portId": null,
  • "singleService": false,
  • "speed": {
    },
  • "status": "ACTIVE",
  • "type": "PHYSICAL",
  • "updatedAt": "2016-06-16T06:20:11.116Z",
  • "vlanRange": [
    ]
}

Edge supported countries

Retrieves the list of countries with provider detail if supported by Edge. (used in dropdown selectors)

Securityapi-key
Responses
200

OK

500

External server unhandled error

get/v2/edge/countries
Response samples
application/json
{
  • "data": [
    ],
  • "page": 1,
  • "size": 1,
  • "total": 1
}

Edge supported bandwidths

Get bandwidth list supported by Edge. (used in dropdown selectors)

Securityapi-key
Responses
200

OK

500

External server unhandled error

get/v2/edge/bandwidth
Response samples
application/json
{
  • "data": [
    ],
  • "page": 1,
  • "size": 1,
  • "total": 1
}

Edge supported contract terms

Get contract term list supported by Edge.

Securityapi-key
Responses
200

OK

500

External server unhandled error

get/v2/edge/contract-term
Response samples
application/json
{
  • "data": [
    ],
  • "page": 1,
  • "size": 1,
  • "total": 1
}

Edge QuotationsDeprecated

Retrieves price quotations available for a certain country which offers a particular bandwidth and terms. This has been replaced by the async version as this request will often cause a timeout.

Securityapi-key
Request
Request Body schema: application/json
required
required
object

The quoted country

bandwidth
required
string

The bandwidth value for the quote

bandwidthUnit
required
string

The bandwidth unit for the quote. Mbps or Gbps

contract-term
required
string

The contract term value for the quote

contractTermUnit
required
string

The contract term unit for the quote

formatted-address
required
string

A valid address format retrieved from Google Places API search.

postCode
string or null

Postcode used in address when a Singapore location is choosen.

withMetro
boolean
Default: true

Include metro details for the Quote/Order

Responses
200

OK

400

Bad Request - please check if env vars like SEEKER_X_API_KEY | SEEKER_JWT_TOKEN | SEEKER_BASE_URL are set

404

Seeker server (external provider) quote not found

500

Seeker server (external provider) unhandled error

post/v2/edge/price
Request samples
application/json
{
  • "country": {
    },
  • "bandwidth": "200",
  • "bandwidthUnit": "Mbps",
  • "contract-term": "12",
  • "contractTermUnit": "month",
  • "formatted-address": "Example address, Hongkong",
  • "postCode": "",
  • "withMetro": true
}
Response samples
application/json
{
  • "formatted-address": "Example address, Hong Kong",
  • "addressResult": {
    },
  • "data": [ ]
}

Edge Quotations (Async)

Generates a request token for retrieving price quotations available for a certain country which offers a particular bandwidth and terms. This is used in tandem with `GET /v2/edge/price/result/:responseId which will be polled until the result is available.

Securityapi-key
Request
Request Body schema: application/json
required
required
object

The quoted country

bandwidth
required
string

The bandwidth value for the quote

bandwidthUnit
required
string

The bandwidth unit for the quote. Mbps or Gbps

contract-term
required
string

The contract term value for the quote

contractTermUnit
required
string

The contract term unit for the quote

formatted-address
required
string

A valid address format retrieved from Google Places API search.

postCode
string or null

Postcode used in address when a Singapore location is choosen.

withMetro
boolean
Default: true

Include metro details for the Quote/Order

Responses
200

OK

400

Bad Request - please check if env vars like SEEKER_X_API_KEY | SEEKER_JWT_TOKEN | SEEKER_BASE_URL are set

404

Seeker server (external provider) quote not found

500

Seeker server (external provider) unhandled error

post/v2/edge/price/search
Request samples
application/json
{
  • "country": {
    },
  • "bandwidth": "200",
  • "bandwidthUnit": "Mbps",
  • "contract-term": "12",
  • "contractTermUnit": "month",
  • "formatted-address": "Example address, Hongkong",
  • "postCode": "",
  • "withMetro": true
}
Response samples
application/json
{
  • "responseId": "string",
  • "status": "string"
}

Edge Quotations (Async)

Retrieves price quotation result using the responseId from POST /v2/edge/price/search.

Securityapi-key
Request
path Parameters
responseId
required
string

The id (quoteKey) for an external pricing result.

Example: d40d80c8-833b-4093-9217-74a68b75a6c4
Responses
200

OK

400

Bad Request - please check if env vars like SEEKER_X_API_KEY | SEEKER_JWT_TOKEN | SEEKER_BASE_URL are set

404

Seeker server (external provider) quote not found

500

Seeker server (external provider) unhandled error

get/v2/edge/price/result/{responseId}
Response samples
application/json
{
  • "formatted-address": "Example address, Hong Kong",
  • "addressResult": {
    },
  • "data": [ ]
}

Calculate price (discount)

Calculate Edge price by discount code from the original price calculated by the original quote. The quoteKey need to be valid, otherwise it won't be possible to return any result.

Securityapi-key
Request
query Parameters
quoteKey
required
string

The id (quoteKey) for an external pricing result.

Example: quoteKey=d40d80c8-833b-4093-9217-74a68b75a6c4
discountCode
required
string

Discount code to lower the price (if valid).

Example: discountCode=EDGE20
Responses
200

OK

404

Not Found

get/v2/edge-ports/calculate-price
Response samples
application/json
{
  • "formatted-address": "Example address, Hong Kong",
  • "addressResult": {
    },
  • "data": [
    ]
}

Locations

Gets the list of available locations (city and country) for Edge used in pricing calculator. These are countries from Data Center Facilities tagged for edge

Securityapi-key
Responses
200

OK

get/v2/edge-ports/locations
Response samples
application/json
[
  • {
    },
  • {
    }
]

List of edge ports, orders & drafts

V2 endpoint for getting edge draft/order/port list. It replaces /api/company/{companyName}/ports/edge-orders.

Securityapi-key
Request
query Parameters
page
string

(For pagination) this defines the page number. works only if size is provided

Example: page=2
size
string

(For pagination) this defines the number of items per page. works only if page is provided

Example: size=20
status
string

Filters the result to only show a specific status

Example: status=processing
Responses
200

OK

get/v2/edge-ports/orders
Response samples
application/json
{
  • "id": "66111622acb43722f8f58a8f",
  • "speed": 500,
  • "edgePayload": {
    },
  • "companyId": "612f11859195c70015229bc",
  • "createdAt": "2024-05-08T09:30:10.947Z",
  • "updatedAt": "2024-05-08T09:30:10.947Z",
  • "portName": "Draft order 2024-05-08",
  • "objectType": "DRAFT ORDER",
  • "status": "DRAFT",
  • "daysUntilDelete": 24
}

Edge port / ordersDeprecated

V1 of the Edge port / orders listing. It is replaced by /v2/edge-ports/orders

Securityapi-key
Request
path Parameters
companyName
required
string

Username of the company.

Example: regis
Responses
200

OK

get/api/company/{companyName}/ports/edge-orders
Response samples
application/json
[
  • {
    }
]

Edge port order

An Edge port order is created in a 'dataCenterFacility'.

The 'paymentType' field is required and needs to be 'invoice'.

When the port is provisioned, the order will change to "done" status and a new port will be created and activated.

You can create an order from Draft, you need to then pass draftOrderId in edgePayload in order to delete the draft automatically after creating the order.

Securityapi-key
Request
path Parameters
companyName
required
string

Username of the company.

Example: regis
Request Body schema: application/json
portName
string

The name of the port

speed
string

The port speed in Mbps. Must be >= 100.

paymentType
string
Default: "invoice"

paymentType invoice is the only one currently supported

object

Includes all edge related informations, form params etc.

Responses
200

OK

400

Error

404

Error

post/api/company/{companyName}/ports/edge-orders
Request samples
application/json
{
  • "name": "PORT_1",
  • "speed": 500,
  • "paymentType": "invoice",
  • "edgePayload": {
    }
}
Response samples
application/json
{
  • "id": "663cb272ce0ce92034c111111",
  • "portName": "PORT_1",
  • "speed": {
    },
  • "paymentType": "invoice",
  • "discountId": null,
  • "billingId": "663ca271ce0ce92034c11111",
  • "externalId": null,
  • "salesRecordId": null,
  • "paymentTransactionId": null,
  • "payg": true,
  • "status": "created",
  • "isEdgePort": true,
  • "cancelled": false,
  • "requestSource": "CONSOLE_APP",
  • "createdBy": "bk",
  • "tags": [ ],
  • "type": "PHYSICAL",
  • "dataCenterFacilityId": "63ce2dsdb423cc0015f11111",
  • "metroId": "77d9f1fcbcaa906f3cd11111",
  • "companyId": "62ff65219195c7001521e9bc",
  • "crossConnectId": null,
  • "deleted": false,
  • "deletedAt": null,
  • "createdAt": "2024-05-09T11:24:33.969Z",
  • "updatedAt": "2024-05-09T11:24:34.176Z",
  • "company": {
    },
  • "dataCenterFacility": {
    }
}

Send 10G statistics

Sends statistics for 10G enquiry. Used only when client asks for 10Gbps offer.

Securityapi-key
Request
Request Body schema: application/json
required
required
object

The quoted country

bandwidth
required
string

The bandwidth value for the quote

bandwidthUnit
required
string

The bandwidth unit for the quote. Mbps or Gbps

contract-term
required
string

The contract term value for the quote

contractTermUnit
required
string

The contract term unit for the quote

formatted-address
required
string

A valid address format retrieved from Google Places API search.

postCode
string or null

Postcode used in address when a Singapore location is choosen.

withMetro
boolean
Default: true

Include metro details for the Quote/Order

Responses
204

No Content

post/v2/admin/edge-orders/send-select
Request samples
application/json
{
  • "country": {
    },
  • "bandwidth": "200",
  • "bandwidthUnit": "Mbps",
  • "contract-term": "12",
  • "contractTermUnit": "month",
  • "formatted-address": "Example address, Hongkong",
  • "postCode": "",
  • "withMetro": true
}

Send enquiry email

Sends email to customer support for any enquiry.

Securityapi-key
Request
Request Body schema: application/json
required
required
object

The quoted country

bandwidth
required
string

The bandwidth value for the quote

bandwidthUnit
required
string

The bandwidth unit for the quote. Mbps or Gbps

contract-term
required
string

The contract term value for the quote

contractTermUnit
required
string

The contract term unit for the quote

formatted-address
required
string

A valid address format retrieved from Google Places API search.

postCode
string or null

Postcode used in address when a Singapore location is choosen.

withMetro
boolean
Default: true

Include metro details for the Quote/Order

Responses
204

No Content

post/v2/admin/edge-orders/send-enquiry
Request samples
application/json
{
  • "country": {
    },
  • "bandwidth": "200",
  • "bandwidthUnit": "Mbps",
  • "contract-term": "12",
  • "contractTermUnit": "month",
  • "formatted-address": "Example address, Hongkong",
  • "postCode": "",
  • "withMetro": true
}

Edge Draft Orders Details

Get list of edge draft orders. Only DraftOrder model object will be returned, with the deleteIn < 30 days. Any older record will not be returned.

Securityapi-key
Responses
200

OK

get/v2/api/draft/orders
Response samples
application/json
[
  • {
    }
]

Create Edge Draft Order

The endpoint allows the creation of an edge draft order. Draft orders are used to temporarily store a user's partial order form data. This data is stored for 30 days. The data in the edgePayload is later used by the frontend application to recreate the original order form. After creating the record, the user can resume their form progress and continue ordering the Edge port. Draft orders are displayed along with orders and ports.

Securityapi-key
Request
Request Body schema: application/json
required
name
string or null

If name is not provided, it will automatically assign name: Draft order DD-MM-YYYY.

speed
required
number

The speed of the bandwidth (in Mbps)

required
object

Contains all information needed to recreate the original form values in the frontend.

Responses
200

OK

post/v2/api/draft/orders
Request samples
application/json
{
  • "name": "custom name",
  • "speed": "500,",
  • "edgePayload": {
    }
}
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "speed": 0,
  • "deleteIn": 0,
  • "edgePayload": {
    },
  • "companyId": "string",
  • "deleted": true,
  • "deletedAt": "string",
  • "createdAt": "string",
  • "updatedAt": "string"
}

Update Edge Draft Order

Update edge draft order

Securityapi-key
Request
path Parameters
draftOrderId
required
string

The id of the draft order

Request Body schema: application/json
required
name
string or null

If name is not provided, it will automatically assign name: Draft order DD-MM-YYYY.

speed
required
number

The speed of the bandwidth (in Mbps)

required
object

Contains all information needed to recreate the original form values in the frontend.

Responses
200

OK

patch/v2/api/draft/orders/{draftOrderId}
Request samples
application/json
{
  • "name": "custom name",
  • "speed": "500,",
  • "edgePayload": {
    }
}
Response samples
application/json
{
  • "id": "string",
  • "name": "string",
  • "speed": 0,
  • "deleteIn": 0,
  • "edgePayload": {
    },
  • "companyId": "string",
  • "deleted": true,
  • "deletedAt": "string",
  • "createdAt": "string",
  • "updatedAt": "string"
}

Delete Edge Draft Order

Deletes a draft order given its ID.

Securityapi-key
Request
path Parameters
draftOrderId
required
string

The id of the draft order

Responses
204

No Content

delete/v2/api/draft/orders/{draftOrderId}