Introduction
To get a Fibre Build Charge Quote for a location, you must submit a fibre-build-charge request.
Request Lifecycle
A fibre build charge quote can be done as follows:
-
Create a fibre-build-charge-request resource, by sending a POST request to
/api/connect/ee/fibre-build-charge/request
with the body of the request containing the location id. The response’s http status will be 201 with a blank response body. There will be a Location response header with a URL. This URL is where the request outcome can be obtained. -
Make a
GET
request to the URL returned in 1. to retrieve the outcome of the request. While the request is in progress, the response’shttp status
will be202
. This means that the request has not finished yet, but will in a moment. If the request was successful a fibre-build-charge-request resource will be returned. If the request failed a422
will be returned with the body containing details on why it failed in the standard error format.
Please note that the fibre build charge request process itself may take a while to complete and polling should be no more than once per 5secs.
Request Specifications
Version | Header | Changes |
---|---|---|
6 |
X-API-VERSION=6 |
Initial Version |
7 |
X-API-VERSION=7 |
No Change |
API Version 6 and 7
POST Request
Verb |
POST |
Name | Description |
---|---|
|
The OAuth bearer access token |
|
The version of the endpoint you are accessing |
Path | Type | Description | Required |
---|---|---|---|
|
|
The nbn unique identifier of the location. |
Required |
POST Response
Status Code | Meaning |
---|---|
201 |
The request was created successfully |
401 |
Bearer token is missing or invalid |
404 |
You do not have permission to perform this task |
422 |
There are validation errors on the request you made. Check the response body to see the issues. |
500 |
There was an unexpected error processing the request |
GET Request
Note
|
The URI will be given to you in the Location header of the POST request. |
Verb |
GET |
URI |
/api/connect/ee/fibre-build-charge/requests/{id} |
Path Variable |
Purpose |
|
The id of the fibre build charge request |
Name | Description |
---|---|
|
The OAuth bearer access token |
|
The version of the endpoint you are accessing |
GET Response
Status Code | Meaning |
---|---|
200 |
The request is complete. The body contains the Fibre Build Charge for the id |
202 |
The request is in progress |
401 |
Bearer token is missing or invalid |
404 |
You do not have permission to perform this task |
404 |
The id (of the fibre-build-charge-request resource) provided does not exist |
422 |
There are validation errors on the request you made. Check the response body to see the issues |
500 |
There was an unexpected error processing the request |
Path | Type | Description |
---|---|---|
|
|
The nbn unique identifier of the location. |
|
|
The nbn FBC quote ID. |
|
|
The nbn FBC quote created date. |
|
|
The name of the nbn zone that the site will be serviced from. |
|
|
The name of the nbn POI that the site will be serviced from. |
|
|
Estimated service delivery time. |
|
|
The fibre build category. |
|
|
Fibre Build Charge price type. |
|
|
Fibre Build Charge. |
|
|
Fibre Build Charge price currency unit. |
|
|
Fibre Build Charge cost in cents. |
|
|
The date till FBC quote valid. |
|
|
The date/time, including UTC offset, when FBC quote was created. |
API Version 6 and 7 - Examples
Successful Request
A fibre-build-charge-request resource is created by sending a POST request to /api/connect/ee/fibre-build-charge/request.
POST /api/connect/ee/fibre-build-charge/request HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer **token**
X-API-VERSION: 7
Content-Length: 38
Host: 360-api.superloop.com
{
"locationId" : "LOC000000000020"
}
If all required fields were provided, then the response to the request will have:
-
a http status of 201
HTTP/1.1 201 Created
Location: /api/connect/ee/fibre-build-charge/requests/4
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Once you have the URI from the Location
header, poll that URI every so often by making a GET request.
While fibre build charge is in progress, the GET request’s response will have a http status
of 202
.
Keep polling the URL until it finishes, once the request is completed successfully the GET request’s response will have a http
status
of 200
and the status will be COMPLETED
Note
|
Please keep the polling to a sensible rate.Polling should be no more than once per 5secs |
GET /api/connect/ee/fibre-build-charge/requests/4 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer **token**
X-API-VERSION: 7
Host: 360-api.superloop.com
HTTP/1.1 202 Accepted
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
HTTP/1.1 200 OK
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 389
{
"nbnLocationId" : "LOC000000000018",
"nbnQuoteId" : "EEQ-0000000001",
"quoteDate" : "2022-03-28",
"zone" : "CBD",
"poiName" : "8DRW - DARWIN",
"estDeliveryTime" : "50 Business Days",
"fibreBuildCategory" : "A",
"priceType" : "oneOff",
"name" : "FBC",
"priceUnit" : "AUD",
"priceValue" : 100.0,
"validUntil" : "2022-06-24",
"createdOn" : "2022-03-27T22:57:01Z"
}
HTTP/1.1 422 Unprocessable Entity
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 404
{
"httpStatusCode" : 422,
"type" : "client.validation",
"code" : "validation",
"message" : "Validation error",
"apiSubErrors" : [ {
"code" : "constraints.fibre.build.charge.request.in.error",
"message" : "An unexpected error occurred.",
"object" : "FibreBuildCharge",
"field" : "status",
"rejectedValue" : "IN_ERROR"
} ],
"timestamp" : "2025-03-11T22:23:38.917791957Z"
}
Invalid Request
If the request is invalid for any reason, a http status
of 422
is returned and the body of the response will list the problems with the request.
This example is of submitting a request where the location id is invalid.
POST /api/connect/ee/fibre-build-charge/request HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer **token**
X-API-VERSION: 7
Content-Length: 33
Host: 360-api.superloop.com
{
"locationId" : "LOC0000012"
}
HTTP/1.1 422 Unprocessable Entity
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 425
{
"httpStatusCode" : 422,
"type" : "client.validation",
"code" : "method.argument.not.valid",
"message" : "Validation error",
"apiSubErrors" : [ {
"code" : "constraints.pattern",
"message" : "Must be LOC followed by 12 digits",
"object" : "connectNbnRequestFibreBuildChargeCommand",
"field" : "locationId",
"rejectedValue" : "LOC0000012"
} ],
"timestamp" : "2025-03-11T22:23:40.067456982Z"
}
Bad Request
GET /api/connect/ee/fibre-build-charge/requests/10 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer **token**
X-API-VERSION: 7
Host: 360-api.superloop.com
HTTP/1.1 404 Not Found
Content-Type: application/json
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 233
{
"httpStatusCode" : 404,
"type" : "business.rule",
"code" : "resource.not.found",
"message" : "Fibre Build Charge request does not exist with id 10",
"apiSubErrors" : [ ],
"timestamp" : "2025-03-11T22:23:42.683269442Z"
}