Tags zu Buchungen

Buchungstags sind Tags, die einer Buchung zugeordnet sind.

Mit der bookamat–API können Buchungstags abgefragt, hinzugefügt, geändert und gelöscht werden. Es sind also GET, POST, PUT/PATCH und DELETE Requests möglich.

Liste der Tags zu Buchungen

Die Liste aller Buchungstags wird mit einem GET Request auf die Listen URL abgefragt.

/bookings/tags/

Response

HTTP/1.0 200 OK
Content-Type: application/json; charset=utf-8

{
    "count": 2,
    "next": null,
    "previous": null,
    "results": [
        {
            "id": 9723,
            "booking": 6783,
            "tag": 5680,
            "name": "Server"
        },
        {
            "id": 9724,
            "booking": 6799,
            "tag": 5690,
            "name": "Software"
        },
    ]
}

Felder

id

Eindeutige Identifikationsnummer

Format
booking

ID der Buchung

Format
Siehe
tag

ID des Tag

Format
Siehe
name

Name

Format
String (min. 3 Zeichen, max. 40 Zeichen)

Filter

booking

ID der Buchung

Format
Ganzzahl
Beispiele
booking=6783
tag

ID des Tag

Format
Ganzzahl
Beispiele
tag=5690

Sortierung

ordering

Sortierung

Möglichkeiten
id, booking, tag, name
Beispiele
ordering=id

Buchungstag Detail

Eine einzelner Buchungstag wird mit einem GET Request auf die Detail URL abgefragt. Es sind dieselben Felder verfügbar wie bei der Listenansicht.

/bookings/tags/{id}/

Buchungstag hinzufügen

Eine neuer Buchungstag wird mit einem POST Request auf die Listen URL hinzugefügt. Der Request Body muss alle notwendigen Felder beinhalten, als Response wird der neue Buchungstag zurückgegeben.

Warnung

Es können maximal 3 Tags pro Buchung hinzugefügt werden.

/bookings/tags/

Request

Content-Type: application/json; charset=utf-8

{
    "booking": 6800,  // existierende Buchung
    "tag": 5684,  // existierender Tag
}

Response

HTTP/1.0 201 CREATED
Content-Type: application/json; charset=utf-8

{
    "id": 9725,
    "booking": 6800,
    "tag": 5684,
    "name": "Dienstreise"
}

Felder

Notwendige Felder sind mit * gekennzeichnet.

booking *

ID der Buchung

Format
tag *

ID des Tag

Format

Buchungstag ändern

Ein Buchungstag kann mit einem PATCH oder PUT Request auf die Detail URL geändert werden.

/bookings/tags/{id}/

Request (PATCH)

Content-Type: application/json; charset=utf-8

{
    "tag": 5685
}

Request (PUT)

Content-Type: application/json; charset=utf-8

{
    "booking": 6800
    "tag": 5685
}

Response

Als Response wird der Buchungstag zurückgegeben.

HTTP/1.0 202 ACCEPTED
Content-Type: application/json; charset=utf-8

{
    "id": 9725,
    "booking": 6800,
    "tag": 5685,
    "name": "Rechnung fehlt"
}

Felder

Die Felder sind deckungsgleich mit dem POST Request (siehe Felder beim Hinzufügen eines Buchungstag). Beim PATCH Request sind nur die geänderten Felder anzugeben, beim PUT Request sind alle Felder notwendig.

Buchungstag löschen

Ein Buchungstag kann mit einem DELETE Request auf die Detail URL gelöscht werden.

Bemerkung

Es wird lediglich die Verknüpfung des Tags mit der Buchung gelöscht.

/bookings/tags/{id}/

Response

HTTP/1.0 204 NO CONTENT