myfiber API Guide
Hier wird der Prozess zur Erstellung eines POP, einer Site und zur Verlinkung der Daten innerhalb der myfiber-API beschrieben, mit Beispielen für jeden Schritt.
Übersicht der Schritte:
- Create POP (um die 'pop_id' zu erhalten)
- Create Site (um die 'sid' zu bekommen)
- Create Link ('pop_id' und 'sid' werden verwendet, um die Daten miteinander zu verknüpfen)
Anforderung für 'pip' Feld
'pip' ist ein erforderliches Attribut für diese Endpunkte. Es kann nicht beliebig gesetzt werden, sondern wird vorab über ein Support Ticket den Mandanten zugewiesen.
Schritt 1: Create POP
Zunächst erstellen Sie den POP (oder Point of Presence) über den Endpunkt "Create POP".
Die erforderlichen Attribute sind:
- 'token': entweder
"planned"
oder"built"
- 'pip': der PIP-Name
- 'name': Name des POP
- 'center': die Koordinaten des POP
Als Beispiel nehmen wir an, wir haben einen POP, dessen 'token' auf "planned" gesetzt werden soll, einen 'pip' namens "example_pip", der 'name' des POP ist "pop_name", und die Koordinaten für den Standort des POP sind "48.208547,16.372959".
Die API-Anfrage und -Antwort sieht wie folgt aus:
$ curl --request POST --location "https://api.myfiber.at/v1/pip/resource/pops/" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json" \
$ --header "Content-Type: application/json" \
$ --data '{
"token": "planned",
"pip": "example_pip",
"name": "pop_name",
"center": "48.208547,16.372959"
}'
---> 100%
{
"tenant": "fiberpark",
"pop_id": "d43f97fa-471d-4ccb-a649-7a0d755c1d74",
"status": "active",
"token": "planned",
"pip": "example_pip",
"name": "pop_name",
"external_id": null,
"customer_reference": null,
"address": {
"country": "AT",
"zip": null,
"city": null,
"street": null,
"hnr": null,
"door": null,
"addon": null
},
"lot_id": null,
"center": "48.20854700,16.37295900",
"created_at": "2019-05-29T17:11:14.206+00:00",
"modified_at": "2021-04-12T13:03:07.566+00:00",
"_etag": "P4zSJFSiVk9"
}
Komplette Liste der Attribute am API-Endpunkt
Das obige Beispiel zeigt die Daten, die Sie erhalten würden, wenn Sie die minimal erforderlichen Attribute eingeben. Sie können natürlich weitere Felder angeben, wenn Sie das POP erstellen oder updaten. Eine vollständige Liste der Felder finden Sie unter dem API-Endpunkt.
Halten Sie die gerade erhaltene 'pop_id' bereit; diese wird in Schritt 3 wieder benötigt.
Schritt 2: Create Site
Als Nächstes speichern Sie die Standortinformationen mit dem Endpunkt "Create Site".
Eine Site kann mit den folgenden benötigten Attribute erstellt werden:
- 'token': entweder
"reserved"
,"accepted"
, oder"confirmed"
- 'pip': der PIP-Name
- 'center': die Koordinaten des Standortes
- 'oaid': (optional) die Open Access ID erhält man über das OAID Register
Für das folgende Beispiel haben wir den 'token' auf "accepted" gesetzt, denselben 'pip'-Namen wie in Schritt 1 angegeben, die 'center'-Koordinaten auf "48.208555, 16.372966" gesetzt und die OAID "ABCD1234" verwendet.
$ curl --request POST --location "https://api.myfiber.at/v1/pip/resource/sites/" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json" \
$ --header "Content-Type: application/json" \
$ --data '{
"token": "accepted",
"pip": "example_pip",
"center": "48.208555,16.372966",
"oaid": "ABCD1234"
}'
---> 100%
{
"tenant": "fiberpark",
"sid": "71fbbf5d-07d3-4db1-95f9-246f9524eae2",
"oaid": "ABCD1234",
"pop_id": null,
"status": "active",
"token": "accepted",
"pip": "example_pip",
"external_id": null,
"customer_reference": null,
"contracts": null,
"address": {
"country": "AT",
"zip": null,
"city": null,
"street": null,
"hnr": null,
"door": null,
"addon": null
},
"lot_id": null,
"center": "48.20855500,16.37296600",
"created_at": "2019-05-29T17:11:14.206+00:00",
"modified_at": "2021-04-12T13:03:07.566+00:00",
"_etag": "P4zSJFSiVk9"
}
Die Site-ID ('sid'), die aus der Antwort stammt, wird in der Anfrage in Schritt 3 verwendet.
'pop_id' und 'contracts' Felder
Die Felder 'pop_id' und 'contracts' liefern anfangs null. Sobald die Site über den Endpunkt "Create Link" mit einem POP verlinkt ist, werden diese Felder automatisch aktualisiert.
Schritt 3: Create Link
Nun erstellen Sie einen Link für die Site über den Endpunkt "Create Link".
Die notwendigen Felder für die Eingabe des Request Body Schemas sind:
- 'sid': die site ID (aus Schritt 2)
- 'pop_id': die pop ID (aus Schritt 1)
- 'fiber': ein lokaler Identifier relativ zu der angegebenen SID (OAID)
- 'token': entweder
"idle"
,"prepared"
,"indelivery"
,"connected"
, oder"unclear"
- 'contract': der Name des Vertrags
Zum Beispiel verwenden wir die 'sid' und 'pop_id' aus den vorherigen Schritten, setzen 'fiber' auf "1", 'token' auf "prepared" und nennen den 'contract' "fiber_example":
$ curl --request POST --location "https://api.myfiber.at/v1/pip/resource/links/" \
$ --header "Authorization: Bearer <access_token>" \
$ --header "Accept: application/json" \
$ --header "Content-Type: application/json" \
$ --data '{
"sid": "71fbbf5d-07d3-4db1-95f9-246f9524eae2",
"pop_id": "d43f97fa-471d-4ccb-a649-7a0d755c1d74",
"fiber": "1",
"token": "prepared",
"contract": "fiber_example"
}'
---> 100%
{
"tenant": "fiberpark",
"link_id": "c9d8392b-6a16-429c-abac-0a25e43e6256"
"sid": "71fbbf5d-07d3-4db1-95f9-246f9524eae2",
"oaid": "ABCD1234",
"fiber": "1",
"status": "active",
"token": "prepared",
"pip": "example_pip",
"contract": "fiber_example",
"pop_id": "d43f97fa-471d-4ccb-a649-7a0d755c1d74",
"pop_position": {
"rack": null,
"shelf": null,
"frame": null,
"patchpanel": null,
"port": null,
"port_type": null
},
"external_id": null,
"customer_reference": null,
"created_at": "2019-05-29T17:11:14.206+00:00",
"modified_at": "2021-04-12T13:03:07.566+00:00",
"_etag": "P4zSJFSiVk9"
}