Introduction

Use these endpoints to abort service cancellation request.

Request Lifecycle

You can request to abort a cancellation request if the cancellation request still in REQUESTED or IN_ERROR status.

  1. While a service cancellation is requested but not submitted to the nbn yet, you can abort the cancellation request by sending a POST request to /api/connect/services/service-cancellations/requests/abort. The body of the request should contain the connect identifier of the service you would like to abort the cancellation request of.The response’s http status will be 204 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.

  2. Make a GET request to the URL returned in 1. to retrieve the outcome of the request.

Request Specifications

Table 1. API Versions
Version Header Changes

1 (Deprecated)

X-API-VERSION=1

Initial Version

2 (Deprecated)

X-API-VERSION=2

No change

3

X-API-VERSION=3

No change

4

X-API-VERSION=4

No change

5

X-API-VERSION=5

No change

6

X-API-VERSION=6

No Change

7

X-API-VERSION=7

No Change

API Version 1, 2, 3, 4, 5, 6 and 7

POST Request

Table 2. POST Request

Verb

POST

URI

/api/connect/services/service-cancellations/requests/abort

Table 3. POST HTTP Request Headers
Name Description

Authorization

The OAuth bearer access token

X-API-VERSION

The version of the endpoint you are accessing

Table 4. POST Request Body Fields
Path Type Description Required

serviceId

Number

The id of the service needs to abort the cancellation

Required

POST Response

Table 5. POST HTTP Status Codes
Status Code Meaning

204

The request was update successfully

401

Bearer token is missing or invalid

404

You do not have permission to perform this task

404

The id (of the service resource) provided does not exist

422

There are validation errors on the request you made. Check the response body to see what fields had issues

500

There was an unexpected error processing the request

Table 6. POST HTTP Response Headers
Name Description

Location

The URL from where the outcome of the request can be obtained

GET Request

Note
The URI will be given to you in the Location header of the POST request.
Table 7. GET Request

Verb

GET

URI

/api/connect/services/service-cancellations/requests/{id}

Table 8. GET Request Path Variables

Path Variable

Purpose

id

The id of the service resource

Table 9. GET HTTP Request Headers
Name Description

Authorization

The OAuth bearer access token

X-API-VERSION

The version of the endpoint you are accessing

GET Response

Table 10. GET HTTP Status Codes
Status Code Meaning

200

The request is complete. The body contains the service-cancellation resource

202

The request is in progress

401

You are not authorized to make this request

400

The request was bad. Check the response body to see what the issue(s) are

404

You do not have permission to perform this task

404

The id (of the service resource) provided does not exist

422

The service-cancellation abort resource failed to be created. Check the response body to see why

500

There was an unexpected error processing the request

Table 11. GET Response Body Fields
Path Type Description

serviceId

Number

The Connect identifier of the service-cancellation resource

cancelled

Boolean

The service cancelled or not

status

String

Status of the cancellation request

requestDate

String

The requested date for the service to be cancelled

requestedOn

String

The date/time, including UTC offset, when service cancellation request was made

requestedById

Number

The Connect identifier of the user requesting the service cancellation

requestedByName

String

The name of the user requesting the service cancellation

requestedByEmail

String

The email of the user requesting the service cancellation

errorDetail

Null

Error details. If any

cancelledOn

Null

The date/time, including UTC offset, when nbn cancelled the service

abortedOn

String

The date/time, including UTC offset, when user aborts the cancellation request

abortedById

Number

The Connect identifier of the user requesting the service cancellation request abort

abortedByName

String

The name of the user requesting the service cancellation request abort

abortedByEmail

String

The email of the user requesting the service cancellation request abort

canRequestCancellation

Boolean

The service is eligible for service cancellation

canAbortCancellation

Boolean

The service cancellation request is eligible for abort

canRescheduleCancellation

Boolean

The service cancellation request is eligible for reschedule

API Version 1, 2, 3, 4, 5, 6 and 7 - Examples

Successful Request

An service-cancellation-request abort resource is created by sending a POST request to /api/connect/services/service-cancellations/requests/abort.

GET Request cancellation request requested
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: 515

{
  "serviceId" : 12000,
  "status" : "REQUESTED",
  "requestDate" : "2021-06-28",
  "requestedOn" : "2021-06-28T02:41:25Z",
  "requestedById" : 11001,
  "requestedByName" : "API User",
  "requestedByEmail" : "api@aaa-industries.com.au",
  "errorDetail" : null,
  "cancelledOn" : null,
  "abortedOn" : null,
  "abortedById" : null,
  "abortedByName" : null,
  "abortedByEmail" : null,
  "canRequestCancellation" : false,
  "canAbortCancellation" : true,
  "canRescheduleCancellation" : true,
  "cancelled" : false
}
POST Request
POST /api/connect/services/service-cancellations/requests/abort HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer **token**
X-API-VERSION: 7
Content-Length: 25
Host: 360-api.superloop.com

{
  "serviceId" : 12000
}

If all required fields were given, then the response to the request will have:

  1. a http status of 204

  2. a Location header with the URI of the service-cancellation abort resource.

Successful POST Response
HTTP/1.1 204 No Content
Location: /api/connect/services/service-cancellations/requests/12000
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, Make a GET request to retrieve the outcome of the request.

GET Request
GET /api/connect/services/service-cancellations/requests/12000 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Authorization: Bearer **token**
X-API-VERSION: 7
Host: 360-api.superloop.com
Successful GET Response service aborted
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: 562

{
  "serviceId" : 12000,
  "status" : "ABORTED",
  "requestDate" : "2021-06-28",
  "requestedOn" : "2021-06-28T02:41:25Z",
  "requestedById" : 11001,
  "requestedByName" : "API User",
  "requestedByEmail" : "api@aaa-industries.com.au",
  "errorDetail" : null,
  "cancelledOn" : null,
  "abortedOn" : "2025-05-26T05:50:29Z",
  "abortedById" : 11001,
  "abortedByName" : "API User",
  "abortedByEmail" : "api@aaa-industries.com.au",
  "canRequestCancellation" : true,
  "canAbortCancellation" : false,
  "canRescheduleCancellation" : false,
  "cancelled" : false
}

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.

Service cancellation status not valid for abort
POST Response with validation errors
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: 412

{
  "httpStatusCode" : 422,
  "type" : "client.validation",
  "code" : "validation",
  "message" : "Validation error",
  "apiSubErrors" : [ {
    "code" : "constraints.service-cancellation.not.requested",
    "message" : "The Service Cancellation is not requested",
    "object" : "ServiceCancellation",
    "field" : "status",
    "rejectedValue" : null
  } ],
  "timestamp" : "2025-05-26T05:50:35.968426591Z"
}
Service in an invalid state
POST Response with validation errors
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: 406

{
  "httpStatusCode" : 422,
  "type" : "client.validation",
  "code" : "validation",
  "message" : "Validation error",
  "apiSubErrors" : [ {
    "code" : "constraints.service.not.eligible.for.cancellation",
    "message" : "The Service is not eligible for cancellation",
    "object" : "Service",
    "field" : "status",
    "rejectedValue" : true
  } ],
  "timestamp" : "2025-05-26T05:50:28.711511181Z"
}