Skip to content

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):

  1. Coordinates

    • the coordinates
  2. 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 &lt;access_token&gt;" \
$  --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 &lt;access_token&gt;" \
$  --header "Accept: application/json" \
$  --header "Content-Type: multipart/form-data"
$  --file "file=@&lt;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 &lt;access_token&gt;" \
$  --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 &lt;access_token&gt;" \
$  --header "Accept: application/json" 
---> 100%

HTTP/1.1 204 No Content
Content-Type: application/json
Date: Sun, 12 Apr 2021 17:32:16 GMT

&lt;Response body is empty&gt; 

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 center coordinate 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 &lt;access_token&gt;" \
$  --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"
    }
]