Hinzufügen und Aktualisieren von Gast-Daten (push)

Aufruf

Die Übertragung erfolgt über eine HTTP-POST-Anfrage an folgende URL:

https://gwatch.events/ext-api/push

Authentifizierung

Folgende Header müssen gesetzt werden:

Request-Body (Payload)

1. meta

Enthält Steuerparameter für das Importverhalten:

2. guests

Enthält ein Array mit bis zu 100 Gast-Datensätzen. Jeder Datensatz ist ein Key-Value-Objekt, basierend auf den Feldern aus /metadata.

Besonderheiten:

Beispiel-Request

{
  "meta": {
    "failIfExists": false,
    "insertAs": 2
  },
  "guests": [
    {
      "GUEST_FIRST_NAME": "Max",
      "GUEST_LAST_NAME": "Mustermann",
      "GUEST_EMAIL": "max@example.com",
      "GUEST_TICKET_CODE": "ABC123",
      "gates": [1, 3]
    }
  ]
}

Response

HTTP Status Codes:

Beispiel für HTTP 422

Request

{
    "meta": {
        "failIfExists": true,
        "insertAs": 3
    },
    "guests": [
        {
            "GUEST_TICKET_CODE": "223345",
            "GUEST_FIRST_NAME": "Hans",
            "GUEST_LAST_NAME": "Hermann",
            "gates": [6398]
        },
        {
            "GUEST_TICKET_CODE": "4711",
            "GUEST_FIRST_NAME": "Susi",
            "GUEST_LAST_NAME": "Sorglos",
            "gates": [6399]
        }
    ]
}

Response

{
    "error": true,
    "message": {
        "meta.insertAs": [
            "The value may not be greater than 2."
        ]
    }
}

Erfolgreiche oder Teilerfolgreiche Verarbeitung (HTTP 200, HTTP 207):

Der Response gliedert sich in zwei Bereiche:

1. summary

2. results

Gibt für jeden Datensatz an, ob die Verarbeitung erfolgreich war oder nicht.

Beispiel für HTTP 207

Request:

{
    "meta": {
        "failIfExists": false,
        "insertAs": 2
    },
    "guests": [
        {
            "GUEST_TICKET_CODE": "223344",
            "GUEST_FIRST_NAME": "Hans",
            "GUEST_LAST_NAME": "Hermann",
            "GUEST_EMAIL": "didi@aol.com",
            "gates": [6398]
        },
        {
            "GUEST_FIRST_NAME": "Frank",
            "GUEST_LAST_NAME": "Fuhrmann",
            "GUEST_EMAIL": "ffuhrmann@aol",
            "gates": [6398]
        },
        {
            "GUEST_TICKET_CODE": "4711",
            "GUEST_FIRST_NAME": "Susi",
            "GUEST_LAST_NAME": "Sorglos",
            "gates": [6399,4]
        },
        {
            "TICKET_CODE": "4712",
            "GUEST_FIRST_NAME": "Didi",
            "GUEST_LAST_NAME": "Dröge",
            "gates": [6399]
        }
    ]
}

Response:

{
    "summary": {
        "total": 4,
        "created": 0,
        "updated": 1,
        "failed": 3
    },
    "results": [
        {
            "index": 0,
            "ticketCode": "223344",
            "id": 3247987,
            "status": "updated",
            "message": null
        },
        {
            "index": 1,
            "ticketCode": null,
            "id": null,
            "status": "failed",
            "message": {
                "GUEST_EMAIL": [
                    "Please enter a valid email address."
                ]
            }
        },
        {
            "index": 2,
            "ticketCode": "4711",
            "id": 3247986,
            "status": "failed",
            "message": {
                "gates.1": [
                    "The selected gates.1 is invalid."
                ]
            }
        },
        {
            "index": 3,
            "ticketCode": null,
            "id": null,
            "status": "failed",
            "message": "The following keys are not available: TICKET_CODE"
        }
    ]
}


Version #16
Erstellt: 2025-04-09 16:27:22 CEST von Volker Lehnen
Zuletzt aktualisiert: 2025-04-10 14:31:50 CEST von Volker Lehnen