# Reservierungen
Um die Reservierungs API zu Nutzen, stellen Sie zuerst sicher dass sie einen API Keys mit den Benötigten Endpoints erstellt haben.
Für die Reservierungsschnittstelle werden von backoffice
die Endpunkte garage_reservation_create
, garage_reservation_list
, garage_reservation_read
, garage_reservation_update
, garage_reservation_delete
benötigt.
# Erstellen von Reservierungen
Endpunkt HTTP POST https://api.parken.arivo.app/backoffice/garage_reservation/
Daten:
{
"garage_id": "89a5d000-8d08-4416-90e8-602f362bc446",
"start": "2021-08-03T09:41:40+02:00",
"end": "2021-08-03T12:37:00+02:00",
"license_plate": "G:ARIVO1",
"license_plate_country": "A",
"license_plate_scheme": "DEFAULT",
"license_plate_scheme_version": 20
}
# Bearbeiten von Reservierungen
Beim Bearbeiten können nur die Felder gesendet werden, welche geändert werden sollen.
Endpunkt HTTP PATCH https://api.parken.arivo.app/backoffice/garage_reservation/<id>/
Beispiel Daten (z.b. Änderung von Start und Ende):
{
"start": "2021-08-03T09:41:40+02:00",
"end": "2021-08-03T12:37:00+02:00"
}
# Löschen von Reservierungen
Endpunkt HTTP DELETE https://api.parken.arivo.app/backoffice/garage_reservation/<id>/
# Abfragen von Reservierungen
Endpunkt HTTP GET https://api.parken.arivo.app/backoffice/garage_reservation/<id>/
{
"anonymized": false,
"created": "2021-11-03T11:40:23.148490+01:00",
"deleted": null,
"end": "2022-01-01T00:00:00+01:00",
"garage_id": "f0aae9d2-8081-4a40-b208-1c507bc4b3ed",
"id": "894a6131-9d77-4cab-a17d-6d859809e2df",
"license_plate": "G:APC1",
"license_plate_country": null,
"license_plate_scheme": "DEFAULT",
"license_plate_scheme_version": 10,
"license_plate_search": "GAPC1",
"payed_amount": "0.00",
"payment_status": "paid",
"price": "0.00",
"price_currency": "EUR",
"provider_id": "c8c5ef33-82a3-4557-9532-64607877abc5",
"qr_code": "0`CCiUphMZ13TKuhfW2FmAni3w4Noj",
"refund_status": "no_refund",
"refunded_amount": "0.00",
"start": "2000-01-01T00:00:00+01:00"
}
Endpunkt HTTP GET https://api.parken.arivo.app/backoffice/garage_reservation/
Query Parameter zum Filtern der Liste:
limit
: Maximale Anzahl an zurückgegebenen Objektenoffset
: Offset für limit&offset paginationgarage_id
: ID der Garage für welche die Reservierung gültig istanonymized
: Ob die Reservierung anonymisiert wurdepayment_status
:paid|partial_paid|unpaid
ob die Reservierung vollständig bezahlt ist.refund_status
:full_refund|partial_refund|no_refund
ob die Reservierung zurückerstattet wurde.- ``
{
count: 10,
results: [
{
"anonymized": false,
"created": "2021-11-03T11:40:23.148490+01:00",
"deleted": null,
"end": "2022-01-01T00:00:00+01:00",
"garage_id": "f0aae9d2-8081-4a40-b208-1c507bc4b3ed",
"id": "894a6131-9d77-4cab-a17d-6d859809e2df",
"license_plate": "G:APC1",
"license_plate_country": null,
"license_plate_scheme": "DEFAULT",
"license_plate_scheme_version": 10,
"license_plate_search": "GAPC1",
"payed_amount": "0.00",
"payment_status": "paid",
"price": "0.00",
"price_currency": "EUR",
"provider_id": "c8c5ef33-82a3-4557-9532-64607877abc5",
"qr_code": "0`CCiUphMZ13TKuhfW2FmAni3w4Noj",
"refund_status": "no_refund",
"refunded_amount": "0.00",
"start": "2000-01-01T00:00:00+01:00"
},
# ...
]
}
# Kennzeichen Übergabe
Die Kennzeichen müssen speziell formatiert sein um sicherzustellen dass sie von der Kennzeichenerkennung korrekt gelesen werden. Hierbei kann unterschieden werden wie genau ein Kennzeichen übereinstimmen muss um als richtig gelesen zu gelten.
Diese unterschiedlichen genauigkeiten werden mit dem Parameter license_plate_scheme
und license_plate_scheme_version
angegeben.
Bei den Kennzeichen muss jedes Trennzeichen als Doppelpunkt :
angegeben werden. Als Trennzeichen gibt es zum Beispiel ,
-
, .
. Da eine genaue Unterscheidung zwischen den einzelnen Trennzeichen nicht sinnvoll ist, sind alle
Trennzeichen als Deoppelpunkt zusammengefasst. Zum Beispiel das Wiener Kennzeichen W 12345 A
sollte als W:12345:A
übergeben werden. Wenn ein anderes Trennzeichen übergeben wird, formatiert die Schnittstelle das Kennzeichen automatisch um. Es kann also sein, dass sie ein Kennzeichen G ARIVO 1
an die Schnittstelle senden und in der Antwort G:ARIVO:1
erhalten.
Das Land kann optional mit dem parameter license_plate_country
übergeben werden. Es ist nicht zwingend erforderlich. Für die Angabe vom Land wird der Ländercode laut DSIT (opens new window) verwendet.
# Verhalten beim Überprüfen
Je nach den gewähltem license_plate_scheme
und der license_plate_scheme_version
kann ein unterschiedliches Verhalten gefordert werden. Je nach Qualität der Kennzeichenerkennung bzw. auch abhängig von den Benutzern oder Ländern
kann es sinnvoll sein unterschiedliche Schemes zu verwenden. Die ARIVO Kennzeichenerkennung funktioniert zuverlässig mit dem DEFAULT-20
Scheme. Für manche Nationen ist es sinnvoll auf DEFAULT-5
zu reduzieren da, auch wenn die Kennzeichenerkennung richtig liest, für einige User die Unterscheidung zwischen 0 und O nicht einfach ist (z.b. Polen).
Scheme | Scheme Version | Verhalten |
---|---|---|
LEGACY | 0 | Überprüft keine Trennzeichen. Keine Unterscheidung zwischen (A,Ä), (Ö,Q,0,O), (Ü,U). |
DEFAULT | 5 | Über keine Trennzeichen. Keine Unterscheidung zwischen (0,O) |
DEFAULT | 10 | Überprüft keine Trennzeichen |
DEFAULT | 20 | Überprüft das erste Trennzeichen |
# Standardparameter
Wird kein license_plate_country
gesendet, wird das Scheme DEFAULT-10
verwendet.
Wird ein license_plate_country
mit der Anfrage gesendet wird DEFAULT-20
für Länder verwendet wo es sonst zu doppelten Kennzeichen kommen kann (z.b. in Deutschland in Frankfurt F A...
und FA ...
)
Wenn license_plate_scheme
und license_plate_scheme_version
mit der Anfrage gesendet