Coverage
Customer Access Nodes (or CANs) may be created and managed via the "Coverage" endpoints.
Add CANs
Customer access nodes can be added for a relation name at the "Add CANs" endpoint.
It requires the relation_name to be supplied as a path parameter.
Additionally, a token must be provided, either in the request body or as a query parameter, depending on which request body format is used.
Enter the values for the request body in a list format. There are two options for request body inputs (required fields in bold, optional in italics):
-
Coordinates
- the coordinates
-
Customer Access Node
- center - the coordinates
- country - the country code
- token - options: "planning", "construction", and "operation"
- lot_id - the property ID from the cadastral ID and lot number
- customer_reference - unique customer reference ID
Additionally, several query parameters are available:
- mode - processing mode (options: "strict", or "lax")
- country - country code
- relation_name - unique relation name
- token - options: "operation", "construction", and "planning" (required if not specified in the request body)
Token Requirement
A token is required, either:
- as a query parameter when only a list of coordinates is supplied in the request body (Option 1) or
- as a field in each CAN object (Option 2)
Headers are omitted in these examples for clarity.
curl --request POST "https://api.oaid.at/v2/pip/coverage/<relation_name>/nodes/?token=operation" \
... \
--data '["48.20854733,16.37295900"]'
curl --request POST "https://api.oaid.at/v2/pip/coverage/<relation_name>/nodes/" \
... \
--data '[{"center": "48.20854733,16.37295900", "token": "operation"}]'
In the example below, the relation_name provided in the path is "wholesale212".
$ curl --request POST "https://api.oaid.at/v2/pip/coverage/wholesale212/nodes/" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json" \
$ --header "Content-Type: application/json" \
$ --data '[
{
"center": "48.20854733,16.37295900",
"token": "operation"
}
]'
---> 100%
{
"transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
"transaction_count": 1,
"created_at": "2019-05-29T17:11:14.206+00:00",
"modified_at": "2021-04-12T13:03:07.566+00:00",
"descriptive": {
"bbox": [0, 0, 0, 0],
"features_count": 0,
"features_hash": "string",
"centers_hash": "string"
}
}
Upload CANs as File
A CSV file may be used to upload customer access nodes in batches with the POST method "Upload CANs as File".
To do so, provide the relation_name as a path parameter, and the file with the absolute file path in the request body. If desired, the optional query parameters listed at the endpoint may also be specified.
Below is an example of a CSV file along with the corresponding table view. The center and token fields are required for each entry. All other fields are optional and may be left blank.
CSV File Example
center,country,token,lot_id,customer_reference
"48.280010,15.424100","AT","planning","04321:16/1",""
"48.280020,15.424110","AT","construction","","loc01212-2222300"
"48.280030,15.424120","","operation","04321:16/2","loc01212-2222400"
"48.280040,15.424130","AT","operation","04321:16/3","loc01212-2222500"
| center | country | token | lot_id | customer_reference |
|---|---|---|---|---|
| 48.280010,15.424100 | AT | planning | 04321:16/1 | |
| 48.280020,15.424110 | AT | construction | loc01212-2222300 | |
| 48.280030,15.424120 | operation | 04321:16/2 | loc01212-2222400 | |
| 48.280040,15.424130 | AT | operation | 04321:16/3 | loc01212-2222500 |
$ curl --request POST "https://api.oaid.at/v2/pip/coverage/wholesale212/upload/?mode=lax&token=operation" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json" \
$ --header "Content-Type: multipart/form-data"
$ --file "file=@<an_absolute_filepath>"
---> 100%
null
Read CANs
The GET method "Read CANs" returns a list of all customer access nodes for the relation_name specified in the URL path.
$ curl --request GET "https://api.oaid.at/v2/pip/coverage/wholesale212/nodes/" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json"
---> 100%
[
{
"center": "48.208547,16.372959",
"country": "AT",
"token": "operation",
"address_id": "string",
"lot_id": "string",
"customer_reference": "string"
}
]
Remove CANs
Delete customer access nodes for a relation by calling the "Remove CANs" endpoint and specifying the relation_name as a path parameter.
$ curl --request DELETE "https://api.oaid.at/v2/pip/coverage/wholesale212/" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json"
---> 100%
HTTP/1.1 204 No Content
Content-Type: application/json
Date: Sun, 12 Apr 2021 17:32:16 GMT
<Response body is empty>
Response code: 204 (No Content); Time: 122ms (122 ms); Content length: 0 bytes (0 B)
Verify Coverage
Verify the feasibility of fiber optic coverage around a specific coordinate using the GET method "Verify Coverage". This endpoint returns a list of feasible fiber optic connections within a specified radius (in meters) from the given coordinate. The default radius is 100 meters.
The query parameters for the endpoint are as follows (required are in bold, optional are in italics):
- 'center': the coordinates
- 'radius': distance (in meters) to search from the
centercoordinate for feasible fiber optic connections
$ curl --request GET "https://api.oaid.at/v2/pip/coverage/?center=48.3,16.0&radius=50" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json"
---> 100%
[
{
"node_type": "geo",
"token": "operation",
"relation_name": "wholesale212",
"pip": {
"company_name": "fiberpark gmbh",
"agg_id": 412,
"phone": "+43-1-987654321",
"email_to": "support@my-own-domain.at",
"pip_code": "fiber.pip"
},
"ano": {
"company_name": "fiberpark gmbh",
"agg_id": 413,
"phone": "+43-1-987654321",
"email_to": "support@my-own-domain.at",
"ano_code": "fiber.ano"
},
"center": "48.208547,16.372959",
"customer_reference": "string",
"distance": "12.3",
"node_id": "6e0bdcac-9717-4a6f-972e-97489dffeb0c",
"reference_url": "http://example.com"
}
]