Skip to main content

Meldescheine aktualisieren

POST  meldeschein/buchen/

Dieser Aufruf erzeugt einen elektronischen Meldeschein im System.

Allgemein

Es ist möglich mehrere Meldescheine auf einmal zu buchen, indem weitere Objekte dem meldescheine Array hinzugefügt werden.

Parameter

NameDatentypVerwendung
metaobjectMeta-Objekt
meldescheinearrayArray mit Meldescheindaten
meldescheine[]objectDie zu buchenden Daten des Meldescheins
meldescheine[].personenarrayAuflistung aller Gäste

Pro Person

NameDatentypVerwendung
meldescheine[].personen[].tarif_idintDie Tarif-ID des Gasts
meldescheine[].personen[].gast_typestringGast-Art (person, gruppe )
meldescheine[].personen[].arrival_datedateAnreisedatum des Gasts
meldescheine[].personen[].departure_datedateAbreisedatum des Gasts

Folgende zusätzlichen Felder werden je nach Typ des Meldescheins übergeben

Einzel-Person

NameDatentypVerwendung
meldescheine[].personen[].*stringWeitere definierte Felder. (nach Definition)

Info

Die Definition der Felder hängt von der Gemeinde ab und können über den Aufruf /get_current_user abgefragt werden.

Reisegruppe

NameDatentypVerwendung
meldescheine[].personen[].anzahlintAnzahl der Gäste

Achtung: Wenn das Feld meldescheine[].personen[].anzahl größer 1 ist ,wird der Meldeschein als Gruppenmeldeschein verbucht. Eventuell übergebene Einzelinformationen für den Gast (Vorname,Nachname etc.) werden nicht gespeichert.

Server Antwort

Die Serverantwort gibt im Erfolgsfall ein Array aus meldeschein Objekten mit der jeweiligen Input-ID (für Referenz zum Quellsystem), sowie der Buchungs-ID id zurück.

!! info Der Rückgabe-Wert von id wird benötigt um weitere Aktionen mit den gebuchten Meldescheinen durchzuführen. Sie sollten diesen sofort nach der Buchung in Ihrem System abspeichern.

Response:

{
  "meta": {
    "requestId": "5ca0b885-11e3-4abd-9e60-cb8265ea9899",
    "timestamp": "2019-10-24T14:06:10.673840",
    "user": {
      "id": 14,
      "username": "api_demo",
      "first_name": "API",
      "last_name": "Demo",
      "email": "api_demo@apidemo.de",
      "is_active": true,
      "user_type": "beherberger",
      "alias": "API Demo",
      "last_login": "2019-10-24T11:35:18.015947+02:00"
    },
    "gemeinde": 1
  },
  "status": "success",
  "meldescheine": [
    {
      "input_id": "test-1",
      "id": 396
    }
  ]
}

Beispiel-Buchungen

Beispiele für verschiedene Szenarien

Personen-Meldeschein

Folgende Beispiele zeigen jeweils die Buchung eines Scheins. Da die Rückantwort des Servers unabhängig des Typs ist, siehe bitte Server-Antwort

Request:

{
  "meta": {
    "vermieter": 1,
    "gemeinde": 1,
    "objekt": 1
  },
  "meldescheine": [
    {
      "input_id": "test-1",
      "personen": [
        {
          "gast_type": "person",
          "tarif_id": 1,
          "Gast_Vorname": "TEST_BF",
          "arrival_date": "2019-07-14",
          "departure_date": "2019-07-17"
        }
      ]
    }
  ]
}

Gruppen-Meldeschein

Request:

{
  "meta": {
    "vermieter": 1,
    "gemeinde": 1,
    "objekt": 1
  },
  "meldescheine": [
    {
      "input_id": "test-1",
      "personen": [
        {
          "gast_type": "gruppe",
          "anzahl": 5,
          "tarif_id": 1,
          "arrival_date": "2019-07-14",
          "departure_date": "2019-07-17"
        }
      ]
    }
  ]
}

Code-Beispiele

Folgendes Beispiel authentifziert die Anfrage und bucht einen Meldeschein

# $ pip3 install requests
import requests
payload = {
    'username':'api_demo',
    'password':'demodemo',
}

r = requests.post('https://apiv2.meldescheine.de/api/token/',data=payload)
server_response_json = r.json()


jwt_token = server_response_json.get('token') # Aus dem server_response objekt den String-Wert aus "token" extrahieren

# Jetzt buchen
meldeschein_data = {} # Leer für Test
headers = {
 'Authorization':  "JWT %s" % jwt_token
}
r = requests.post("https://apiv2.meldescheine.de/api/import/meldeschein/buchen/",data=meldeschein_data,headers=headers)