Ultrafast Fibre API (v1)

Download OpenAPI specification:Download

Authentication

OAuth

Ultrafast API uses JWT bearer tokens passed in the Authorization request header to authenticate requests as per RFC6750

Tokens can be retrieved using the OAuth2 client credentials flow from our identity provider. Tokens are valid for 60 minutes and should be cached and re-used for subsequent requests. API clients should treat HTTP 401 response as a token expiry notification and refresh their credentials.

When requesting credentials the scope parameter needs to be included in the request, the authorization server is not configured to issue default scopes.

A scope of rsp:read may be given to RSP consumers, this is a convenience scope that encompasses appropriate read scopes for an RSP. Currently this is

  • products:read
Security Scheme Type OAuth2
clientCredentials OAuth Flow
Token URL: https://id.ultrafastfibre.co.nz/oauth2/ausyxoj6fv9DqWynY4x6/v1/token
Scopes:
  • diagnostics -

    Permits access to line diagnostics

  • products:read -

    Read access to owned products

  • products:read:all -

    Read access to all products

  • activations -

    Permits access to run an ONT activation

Activations

Create ONT activation

Request an ONT activation

Authorizations:
OAuth (activations)
Request Body schema: application/json
orderId
required
string

Order identifier

technicanName
required
string

Name of the technican

ontSerialNumber
required
string

The ONT serial number

Responses

Request samples

Content type
application/json
{
  • "orderId": "7816043",
  • "technicanName": "John Doe",
  • "ontSerialNumber": "4857544383F7C537"
}

Response samples

Content type
application/json
{
  • "activationId": "5d31f95a-b687-49b2-ac51-bcd780dec92c"
}

Get ONT Activation Result

Returns the activation result for a given activation id

Authorizations:
OAuth (activations)
path Parameters
activationId
required
string <uuid>

Unique ID of the activation

Responses

Response samples

Content type
application/json
{
  • "id": "fb40276b-04aa-4560-bf2b-02b38558d362",
  • "startTime": "2020-11-02T17:52:43.000+13:00",
  • "endTime": "2020-11-02T17:53:03.000+13:00",
  • "sysCreationDate": "2020-11-02T17:52:42.164+13:00",
  • "testStatus": "SUCCESS",
  • "type": "ontActivation",
  • "ontSerialNumber": "4857544383F7C537",
  • "productOwner": "Sample RSP",
  • "productId": "1636096814",
  • "result": {
    }
}

Diagnostics

Create Diagnostic Test

Request that a new test is performed. The caller must be authorised to read the PIID under test otherwise the request will be 404.

If you have issues creating a test ensure you can call getProductById for the PIID

Authorizations:
OAuth (diagnosticsproducts:read)
Request Body schema: application/json
productId
required
string

Product instance identifier

required
object

Responses

Request samples

Content type
application/json
{
  • "productId": "UFFSMPWA0012345",
  • "test": {
    }
}

Response samples

Content type
application/json
{
  • "testId": "5d31f95a-b687-49b2-ac51-bcd780dec92c"
}

Get Diagnostic Test Result

Returns the test result for a given test id

Authorizations:
OAuth (diagnostics)
path Parameters
testId
required
string <uuid>

Unique ID of the test

Responses

Response samples

Content type
application/json
Example
{
  • "id": "fb40276b-04aa-4560-bf2b-02b38558d362",
  • "startTime": "2020-11-02T17:52:43.000+13:00",
  • "endTime": "2020-11-02T17:53:03.000+13:00",
  • "sysCreationDate": "2020-11-02T17:52:42.164+13:00",
  • "testStatus": "SUCCESS",
  • "type": "ontStatus",
  • "physicalResourceId": "UFFTGOLTTGE002:0-11-2-6",
  • "productOwner": "Sample RSP",
  • "product": {