Introduction

This API is designed to allow holders of aql numbers to update their subscriber details with BT's 999 system. This will provide an easy method for the update of BT's 999 record details for our customers. It is essential that all partners provide accurate and complete customer data. Failure to provide full and accurate information will delay the emergency services response to emergency situations.

Interface

Interface Protocols

The protocol presented is HTTPS. All the API methods will be executed by a standard POST request of the HTTPS protocol. The gateway URL for all calls is located at:
https://gw.aql.com/telecoms/999.api.php

Interface Methods

The interface methods will be as follows:

  • Activate Customer
  • Cease Customer
  • Modify Customer
  • Export Number
  • Import Number
  • Get Record IDs By Number
  • Get Record By ID

Return Codes

Return codes used will be the standard meanings for 200 OK, 404 Unauthorised and 500 INTERNAL ERROR.

Activate Customer

Request

Used to activate a number with associated customer details at BT's TDM system.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Description: Value must be "activate"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: postcode Type: Alphanumeric Required: Yes Length: 8 Description: Customer's postcode. This must be sent in the format of 'out-code space in-code', e.g. LS11 5DF, S9 5AD, S60 3ML
Parameter: effective_date Type: Alphanumeric Required: Yes Length: Description: Required. Date on which the command associated with the listing is to be executed. Format used must be YYYY-MM-DD (where Y = Year, M = Month & D = Day)
Parameter: surname Type: Alphanumeric Required: Yes Length: 50 Description: Name of the customer (if residential) or business Name
Parameter: title Type: Alphanumeric Required: No Length: 20 Description: Title of the customer
Parameter: forename Type: Alphanumeric Required: No Length: 20 Description: Forename of the customer
Parameter: honours Type: Alphanumeric Required: No Length: 30 Description: Honours of the customer
Parameter: business_suffix Type: Alphanumeric Required: No Length: 50 Description: Business suffix
Parameter: line_type Type: Alphanumeric Required: No Length: 30 Description: Line type. This is for DDI/VoIP type number ranges or it basically will add a flag to show that the record which is being sent may not reflect the actual location of the caller. Options for the population of this field are EXT, DDI, FNET, or VOIP any of these possible mnemonic's will flag to the Operator as well as an Emergency Authority who has the EISEC service. (This allows the Emergency Authority to see the name and address details we have for a customer at the time of a 999 call)
Parameter: premises Type: Alphanumeric Required: No Length: 60 Description: Identifies premises on a thoroughfare i.e. house name and/or number. Examples "24", "Bleak House". Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields
Parameter: thoroughfare Type: Alphanumeric Required: No Length: 55 Description: The thoroughfare name and type. Examples: Byron Close, Suffolk Lane, and High Street. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields
Parameter: locality Type: Alphanumeric Required: No Length: 30 Description: Village or an area within a town and town if possible. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields
Parameter: notify-email Type: Alphanumeric Required: No Length: Description: The email address to notify when a status change occurs. Optional, but will reduce functionality if omitted.
Parameter: return-mode Type: Blank Required: No Length: Description: See separate return-mode parameter document
Parameter: return-format Type: Blank Required: Yes Length: Description: See separate return-format parameter document

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>

Return format of SUCCESS command:
<status_code>: <text_description>
id: <id>

Cease a Customer

Request

Method: POST
Description: Used to remove the requested number at BT's TDM system.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Description: Value must be "cease"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: effective_date Type: Alphanumeric Required: Yes Length: Description: Date on which the command associated with the listing is to be executed. Format used must be YYYY-MM-DD (where Y = Year, M = Month & D = Day)
Parameter: notify-email Type: Alphanumeric Required: Yes Length: Description: The email address to notify when a status change occurs. Optional, but will reduce functionality if omitted.
Parameter: return-mode Type: Blank Required: No Length: Description: return-mode parameter
Parameter: return-format Type: Blank Required: No Length: Description: return-format parameter

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>

Return format of SUCCESS command:
<status_code>: <text_description>
id: <id>

Modify a Customer

Request

Method: POST
Description: Used to modify the requested number’s customer details at BT’s TDM system.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Description: Value must be "modify"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: postcode Type: Alphanumeric Required: Yes Length: 8 Description: Customer's postcode. This must be sent in the format of 'out-code space in-code', e.g. LS11 5DF, S9 5AD, S60 3ML
Parameter: effective_date Type: Alphanumeric Required: Yes Length: Required Description: Date on which the command associated with the listing is to be executed. Format used must be YYYY-MM-DD (where Y = Year, M = Month & D = Day)
Parameter: surname Type: Alphanumeric Required: Yes Length: 50 Description: Name of the customer (if residential) or business name
Parameter: title Type: Alphanumeric Required: No Length: 20 Description: Title of the customer
Parameter: forename Type: Alphanumeric Required: No Length: 20 Description: Forename of the customer
Parameter: honours Type: Alphanumeric Required: No Length: 30 Description: Honours of the customer
Parameter: business_suffix Type: Alphanumeric Required: No Length: 50 Description: Business suffix
Parameter: line_type Type: Alphanumeric Required: No Length: 30 Description: Line type. This is for DDI/VoIP type number ranges or it basically will add a flag to show that the record which is being sent may not reflect the actual location of the caller. Options for the population of this field are EXT, DDI, FNET, or VOIP any of these possible mnemonic's will flag to the Operator as well as an Emergency Authority who has the EISEC service. (This allows the Emergency Authority to see the name and address details we have for a customer at the time of a 999 call).
Parameter: premises Type: Alphanumeric Required: No Length: 60 Description: Identifies premises on a thoroughfare, i.e. house name and/or number. Example 24 and/or Bleak House. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields.
Parameter: thoroughfare Type: Alphanumeric Required: No Length: 55 Description: The thoroughfare name and type. Examples: Byron Close, Suffolk Lane, and High Street. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields.
Parameter: locality Type: Alphanumeric Required: No Length: 30 Description: Village or an area within a town and town if possible. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields.
Parameter: notify-email Type: Alphanumeric Required: No Length: Description: The email address to notify when a status change occurs. Optional, but will reduce functionality if omitted.
Parameter: return-mode Type: Blank Required: No Length: Description: See separate return-mode parameter document
Parameter: return-format Type: Blank Required: Yes Length: Description: See separate return-mode parameter document

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>

Return format of SUCCESS command:
<status_code>: <text_description>
id: <id>

Export Number

Request

Method: POST
Used to initiate an export to another carrier at BT's TDM system.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Value must be "export"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: postcode Type: Alphanumeric Required: Yes Length: 8 Description: Customer's postcode. This must be sent in the format of 'out-code space in-code', e.g. LS11 5DF, S9 5AD, S60 3ML
Parameter: effective_date Type: Alphanumeric Required: Yes Length: Description: Date on which the command associated with the listing is to be executed. Format used must be YYYY-MM-DD (where Y = Year, M = Month & D = Day)
Parameter: cp_identifier Type: Numeric Required: Yes Length: Description: CUPID of importing CP
Parameter: return-mode Type: Blank Required: No Length: Description: See separate return-mode parameter document
Parameter: return-format Type: Blank Required: No Length: Description: See separate return-mode parameter document

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>

Return format of SUCCESS command:
<status_code>: <text_description>
id: <id>

Import Number

Request

Used to confirm the import of a number from other carrier at BT's TDM system.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Description: Value must be "import"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: cp_identifier Type: Numeric Required: Yes Length: Description: CUPID of exporting CP
Parameter: postcode Type: Alphanumeric Required: Yes Length: 8 Description: Customer's postcode. This must be sent in the format of 'out-code space in-code', e.g. LS11 5DF, S9 5AD, S60 3ML
Parameter: effective_date Type: Alphanumeric Required: Yes Length: Description: Date on which the command associated with the listing is to be executed. Format used must be YYYY-MM-DD (where Y = Year, M = Month & D = Day)
Parameter: surname Type: Alphanumeric Required: Yes Length: 50 Description: Name of the customer (if residential) or business name
Parameter: title Type: Alphanumeric Required: No Length: 20 Description: Title of the customer
Parameter: forename Type: Alphanumeric Required: No Length: 20 Description: Forename of the customer
Parameter: honours Type: Alphanumeric Required: No Length: 30 Description: Honours of the customer
Parameter: business_suffix Type: Alphanumeric Required: Yes Length: 50 Description: Business suffix
Parameter: line_type Type: Alphanumeric Required: Yes Length: 30 Description: Line type. This is for DDI/VoIP type number ranges or it basically will add a flag to show that the record which is being sent may not reflect the actual location of the caller. Options for the population of this field are EXT, DDI, FNET, or VOIP any of these possible mnemonic's will flag to the Operator as well as an Emergency Authority who has the EISEC service. (This allows the Emergency Authority to see the name and address details we have for a customer at the time of a 999 call).
Parameter: premises Type: Alphanumeric Required: Yes Length: 60 Description: Identifies premises on a thoroughfare, i.e. house name and/or number. For example, 24 and/or Bleak House. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields.
Parameter: thoroughfare Type: Alphanumeric Required: Yes Length: 55 Description: The thoroughfare name and type. Examples: Byron Close, Suffolk Lane, and High Street. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields.
Parameter: locality Type: Alphanumeric Required: Yes Length: 30 Description: Village or an area within a town and Town if possible. Although this field is optional, partners should send a complete and accurate address. If this field is not populated, then full use must be made of other address fields.
Parameter: return-mode Type: Blank Required: No Length: Description: See separate return-mode parameter document
Parameter: return-format Type: Blank Required: Yes Length: Description: See separate return-mode parameter document

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>

Return format of SUCCESS command:
<status_code>: <text_description>
id: <id>

Get Last ID by Number

Request

Returns the last ID associated with the requested phone number.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Value must be "getlastidbynumber"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: return-mode Type: Numeric Required: No Length: Description: See separate return-mode parameter document
Parameter: return-format Type: Numeric Required: No Length: Description: See separate return-mode parameter document

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>

Return format of SUCCESS command:
<status_code>: <text_description>
id: <id>

Get Record by ID

Request

Returns all attributes of requested record.

Parameter Type Required Length Description
Parameter: command Type: Alphanumeric Required: Yes Length: Description: Value must be "getrecordbyid"
Parameter: username Type: Alphanumeric Required: Yes Length: Description: aql username
Parameter: password Type: Alphanumeric Required: Yes Length: Description: aql password
Parameter: number Type: Numeric Required: Yes Length: 15 Description: Telephone Number. Must start with 0, e.g. 01242111222
Parameter: id Type: Numeric Required: Yes Length: Description: Record ID number
Parameter: return-mode Type: Blank Required: No Length: Description: See separate return-mode parameter document
Parameter: return-format Type: Blank Required: No Length: Description: See separate return-mode parameter document

Output Parameters

Return format of FAILED command:
<status_code>: <text_description>
id: <id>
created: <created> command: <command>
record_status: <record_status>
postcode: <postcode>
effective_date: <effective_date>
surname: <surname>
title: <title>
forename: <forename>
honours: <honours>
business_suffix: <business_suffix>
line_type: <line_type>
thoroughfare: <thoroughfare>
locality: <locality>
cp_identifier: <cp_identifier>
ret_code: <ret_code>
err_msg: <err_msg>

Record Status

Status Description
Status: READY Description: Data captured and ready to send. All 999 update requests are collated and sent in batches periodically
Status: PENDING Description: Data submitted
Status: COMPLETE Description: Request completed
Status: FAILED Description: Request failed

Responses

Return Codes

You can see all possible return codes in our 999 API return codes reference.

Status Codes

Status Description
Status: 200 Description: OK
Status: 400 Description: BAD REQUEST
Status: 401 Description: AUTHENTICATION ERROR
Status: 500 Description: INTERNAL SYSTEM ERROR
Status: 600 Description: INVALID COMMAND
Status: 67001 Description: NUMBER NOT VALID OR PROVIDED
Status: 67013 Description: NUMBER NOT ON ACCOUNT
Status: 67008 Description: PREVIOUS COMMAND STILL PENDING
Status: 67009 Description: NUMBER ALREADY ACTIVE. CANNOT ACTIVATE AGAIN
Status: 67010 Description: NUMBER MUST FIRST BE ACTIVATED USING THE ACTIVATE COMMAND
Status: 67004 Description: SURNAME NOT PROVIDED
Status: 67002 Description: POSTCODE NOT PROVIDED
Status: 67003 Description: EFFECTIVE_DATE NOT PROVIDED
Status: 67005 Description: LINE_TYPE NOT PROVIDED
Status: 67006 Description: CP_IDENTIFIER NOT PROVIDED
Status: 67011 Description: NUMBER CANNOT BE CEASED BECAUSE IT IS NOT ALREADY ACTIVE
Status: 67007 Description: ID NOT PROVIDED
Status: 67012 Description: INVALID ID FOR THAT NUMBER
AutoJemma®

How can I help you today?

Can't find what you're looking for, ask a question below!

Additional Details

AutoJemma® can make mistakes, please verify any critical information.