TATAMI Dokumentation

API-Schnittstelle

TATAMI bietet eine begrenzte API-Schnittstelle für den folgenden Nutzungszweck an:

  • Akkreditierung und Einwiegen über API

Alle Endpunkte geben ein JSON-Objekt zurück.

Hierfür gibt es die folgenden Endpunkte:

/api/events - GET

  • Zeigt eine Liste aller Veranstaltungen an, für die eine Registrierung gegenwärtig möglich ist.

  • Format:

    [
        {
            "slug": ...,
            "title": ...,
            "first_day": ...,
            "last_day": ...
        }, ...
    ]
    

/go/<event>/api/register - GET und POST

  • Prüft und führt ggf. eine Registrierung des aktuellen Geräts für das in <event> eingetragene Event (aus dem Slug-Feld) aus.

  • Wenn keine (gültige) Registrierung für das Event existiert, wird folgende Nachricht zurückgegeben:

    {
        "result": "pending",
        "auth_code": ...
    }
    
  • Dabei ist auth_code ein Code, der auch in der Event-Verwaltung angezeigt wird.

  • Besteht eine gültige Registrierung, wird folgende Nachricht zurückgegeben:

    {
        "result": "success"
    }
    

/go/<event>/mod_registrations/api - POST

  • Markiert einen angegebenen TN als akkreditiert für das Event <event>

  • Der TN-Eintrag wird über das POST-Formularfeld id identifiziert, dabei ist exakt die in der TN-Verwaltung eingetragene externe ID anzugeben, die eindeutig sein muss

  • Bei der Abfrage ist darauf zu achten, dass der Header Content-Type: application/x-www-form-urlencoded gesetzt ist

  • Wenn die Anfrage erfolgreich war, wird folgende Nachricht zurückgegeben:

    {
        "result": "success"
    }
    
  • Wenn ein Fehler aufgetreten ist, wird folgende Nachricht zurückgegeben:

    {
        "result": "error",
        "message": ...
    }
    

/go/<event>/mod_weighin/api - POST

  • Trägt für den angegebenen TN für das Event <event> ein Gewicht ein

  • Wenn das Event so konfiguriert ist, wird für den TN-Eintrag zugleich die Akkreditierung vorgenommen

  • Der TN-Eintrag wird über das POST-Formularfeld id identifiziert, dabei ist exakt die in der TN-Verwaltung eingetragene externe ID anzugeben, die eindeutig sein muss

  • Das Gewicht ist über das POST-Formularfeld weight als Float des Gewichts in 1kg anzugeben

  • Bei der Abfrage ist darauf zu achten, dass der Header Content-Type: application/x-www-form-urlencoded gesetzt ist

  • Wenn die Anfrage erfolgreich war, wird folgende Nachricht zurückgegeben:

    {
        "result": "success"
    }
    
  • Wenn ein Fehler aufgetreten ist, wird folgende Nachricht zurückgegeben:

    {
        "result": "error",
        "message": ...
    }