Betriebsstätten¶
Ausländische Betriebsstätten werden für Buchungen im Rahmen von IOSS und EU-OSS benötigt.
Mit der bookamat–API können Betriebsstätten abgefragt, hinzugefügt, geändert und gelöscht werden. Es sind also GET, POST, PUT/PATCH und DELETE Requests möglich.
Liste der Betriebsstätten¶
Die Liste aller Betriebsstätten wird mit einem GET Request auf die Listen URL abgefragt.
/preferences/foreignbusinessbases/
Response¶
HTTP/1.0 200 OK
Content-Type: application/json; charset=utf-8
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"id": 9801,
"vatin": "DE123456788",
"position": 0,
"counter_booked_bookings": 2,
"counter_open_bookings": 0,
"counter_deleted_bookings": 0,
"counter_bookingtemplates": 0
},
{
"id": 9802,
"vatin": "DE234567899",
"position": 1,
"counter_booked_bookings": 1,
"counter_open_bookings": 1,
"counter_deleted_bookings": 0,
"counter_bookingtemplates": 0
},
]
}
Felder¶
- id
Eindeutige Identifikationsnummer
- Format
- vatin
VAT ID
- Format
- String (max. 40 Zeichen)
- position
Position
- Format
- counter_booked_bookings
Anzahl gebuchter Buchungen
- Format
- counter_open_bookings
Anzahl offener Buchungen
- Format
- counter_deleted_bookings
Anzahl gelöschter Buchungen
- Format
- counter_bookingtemplates
Anzahl Buchungsvorlagen
- Format
Filter¶
- has_bookings
Buchungen vorhanden
- Format
- Boolean
- Beispiele
- has_bookings=true
Sortierung¶
- ordering
Sortierung
- Möglichkeiten
- id, vatin, position
- Beispiele
- ordering=id
Betriebsstätte Detail¶
Eine einzelne Betriebsstätte wird mit einem GET Request auf die Detail URL abgefragt. Es sind dieselben Felder verfügbar wie bei der Listenansicht.
/preferences/foreignbusinessbases/{id}/
Betriebsstätte hinzufügen¶
Ein neuer Betriebsstätte wird mit einem POST Request auf die Listen URL hinzugefügt. Der Request Body muss alle notwendigen Felder beinhalten, als Response wird die neue Betriebsstätte zurückgegeben.
/preferences/foreignbusinessbases/
Request¶
Content-Type: application/json; charset=utf-8
{
"vatin": "DE345678911"
}
Response¶
HTTP/1.0 201 CREATED
Content-Type: application/json; charset=utf-8
{
"id": 9803,
"vatin": "DE345678911",
"position": 2,
"counter_booked_bookings": 0,
"counter_open_bookings": 0,
"counter_deleted_bookings": 0,
"counter_bookingtemplates": 0
}
Felder¶
Notwendige Felder sind mit * gekennzeichnet.
- vatin *
VAT ID
- Format
- String (max. 20 Zeichen)
- position
Position
- Format
- Anmerkung
- Abhängig vom Positionswert ändern sich die Positionen aller anderen Betriebsstätten (siehe Grundlagen Positionsfelder)
- Default
- Letzte Position (falls keine Position angegeben wird)
Betriebsstätte ändern¶
Eine bestehende Betriebsstätte kann mit einem PATCH oder PUT Request auf die Detail URL geändert werden.
/preferences/foreignbusinessbases/{id}/
Request (PATCH)¶
Content-Type: application/json; charset=utf-8
{
"position": -1
}
Request (PUT)¶
Content-Type: application/json; charset=utf-8
{
"vatin": "DE456789022",
"position": -1
}
Response¶
Als Response wird die Betriebsstätte zurückgegeben.
HTTP/1.0 202 ACCEPTED
Content-Type: application/json; charset=utf-8
{
"id": 9803,
"vatin": "DE456789022",
"position": 2, // Ende der Liste (-1)
"counter_booked_bookings": 1,
"counter_open_bookings": 1,
"counter_deleted_bookings": 0,
"counter_bookingtemplates": 0
}
Felder¶
Die Felder sind deckungsgleich mit dem POST Request (siehe Felder beim Hinzufügen einer Betriebsstätte). Beim PATCH Request sind nur die geänderten Felder anzugeben, beim PUT Request sind alle Felder notwendig. Beim Verändern einer Position werden die Positionen aller anderen Betriebsstätten verändert (siehe Grundlagen Positionsfelder).
Betriebsstätte löschen¶
Eine Betriebsstätte kann mit einem DELETE Request auf die Detail URL gelöscht werden.
Bemerkung
Es können nur Betriebsstätten gelöscht werden, denen keine Buchungen zugeordnet sind. Bei zugeordneten Buchungsvorlagen wird die Betriebsstätte aus der Vorlage gelöscht.
/preferences/foreignbusinessbases/{id}/
Response¶
HTTP/1.0 204 NO CONTENT