order_connection()

The Broadband API

This function lets you order new broadband products. It works in close cooperation with the zipcode() function.

Using the output of the zipcode() function you can select a viable combination of products and issue the order.

To order a product you should first perform the zipcode() function for the address of interest. Then you can select the connection point name (ISRA name), carrier and circuit products from zipcode(). Add an SLA product and you are almost done.

You should provide contact information for someone at the site and the name of the connection point (the ISRA point).

For the circuit(s) either the vlan or vpi/vci numbers must be provided. Which ones to use depends on the kind of carrier you selected: for an ADSL or SDSL connection you should provide the vpi/vci combination; otherwise provide the vlan id.

You can freely choose what vpi/vci and vlan ids you want to use with the following restrictions:

  • vlan between 2 and 4096,

  • vpi between 0 and 8,

  • vci between 32 and 255,

  • the vpi/vci combination 1/55 cannot be used.

Nextpertise defaults to vlanid 6 and up or vpi.vci 0.35 and up. It is suggested that you use the same convention. But you are free to use any of the allowed values and combinations.

The above mentioned fields are required; all others are optional. But when you want to share the connection for both broadband and telephone services you must provide the requested_phonenumber and when you want to migrate an existing broadband connection you must provide the serviceid. Clearly when you want to migrate a shared line you must provide both the telephone number and the serviceid.

Attention

The field confirm | Terminate Voice is a flag to confirm a non-obvious, potentially risky, combination of values.

When you specify a requested_phonenumber that generally means you want to combine an existing phone line with a new data connection. To do so you should select a carrier that shares the line with the voice connection; i.e. a carrier that has Copper_shared as its carrier_type field. If you selected a carrier with the Copper_only carrier type that implicitly and irrevocably will terminate the voice line. To indicate that you really want to terminate the voice line you should set the Terminate Voice flag to true.

Production URL

https://api.nextpertise.nl/broadband/v1

Testing URL

https://api.nextpertise.nl/test/broadband/v1 See Testing for more information.

Method

order_connection

Input

Order connection request v1

https://api.nextpertise.nl/schemas/broadband/order_connection_request_v1.json

Order a connection consisting of a carrier, one or more circuits and an SLA

allOf

Location

type

object

properties

  • isra

Copy from the connectionpoint name off the zipcode() reply.

type

string

pattern

^[0-9a-zA-Z/(). -]+$

  • carrier

Product ID

  • circuit

type

array

items

type

object

properties

  • circuit

Product ID

  • tags

type

array

items

type

string

pattern

[a-zA-Z0-9=:_-]+

  • vlan

type

integer

  • vci

type

integer

  • vpi

type

integer

  • sla

oneOf

type

null

Product ID

  • cpe

type

array

items

Product ID

  • tags

type

array

items

type

string

pattern

[a-zA-Z0-9=:_-]+

  • company

type

string

  • contact_name

type

string

  • contact_phonenumber

Telephone number

  • contract_duration

type

integer

enum

12, 24, 36, 48, 60

  • additional_contact_phonenumber

Telephone number

  • confirm

type

object

properties

  • Terminate Voice

type

boolean

  • custwishdate

Optional date

  • requested_phonenumber

Telephone number

  • serviceid

Service ID

Output

Order connection reply v1

https://api.nextpertise.nl/schemas/broadband/order_connection_reply_v1.json

Order a connection consisting of a carrier, one or more circuits and an SLA

type

object

properties

  • errorcode

type

integer

  • commentcode

type

string

  • orderid

type

string

Example

Request

curl -u 'user:pass' https://api.nextpertise.nl/broadband/v1 -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "order_connection",
    "params": {
        "zipcode": "1188xx",
        "housenr": 19,
        "housenrext": "",

        "isra": "001//MTK/METERKAST",
        "carrier": 621,
        "circuit": [{
            "circuit": 313,
            "vlan": 6,
            "tags": ["t1", "t2", "t3"]
        }],
        "sla": 606,
        "tags": ["t1", "t2", "t3"],

        "contact_name": "mr. X",
        "company": "",
        "contact_phonenumber": "06xxxxxxxx",

        "confirm": {
            "Terminate Voice": False
        },

        "custwishdate": "",
        "requested_phonenumber": "020xxxxxxx"
    }
}' | jq .

Reply

{
    "jsonrpc": "2.0",
    "id": 1,
    "result": {
        "errorcode": 0,
        "commentcode": null,
        "orderid": "1188xx000190500"
    }
}

Note

Initially we manually check all incoming orders for correctness. The result of this may be that the reply may not look as depicted here.