API-Dokumentation

Die Videoverhandlung.de REST API ist für verifizierte Nutzer verfügbar.

Gericht IDs abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/court?per_page=<Anzahl IDs pro Seite>&page=<Seitenzahl>
Beschreibung: Gibt eine paginierte Liste von Gericht-IDs und Namen zurück.
Antwort:
{
  "pagination": {
    "page_count": <Anzahl der Seiten>,
    "next": <Nächste Seite (falls vorhanden)>,
    "previous": <Vorherige Seite (falls vorhanden)>
  },
  "courts": [
    {
      "id": <ID des Gerichts>,
      "name": "<Name des Gerichts>"
    }
  ]
}

Gerichte suchen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/court/search?query=<Suchbegriff>
Beschreibung: Sucht nach Gerichten.
Antwort:
{
  "courts": [
    {
      "id": <ID des Gerichts>,
      "name": "<Name des Gerichts>"
    }
  ]
}

Gerichtsquoten abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/court/percentage?court_id=<ID des Gerichts>
Beschreibung: Liefert die Quoten für angenommene Online Verhandlungen und die Möglichkeit zur Online Verhandlung.
Antwort:
{
  "court_id": <ID des Gerichts>,
  "provides_online_service_percentage": <Quote an angenommenen Online Verhandlungen, -1 wenn es keine Infos gibt>,
  "online_service_possible_percentage": <Quote für Möglichkeit zur Online Verhandlung, -1 wenn es keine Infos gibt>
}

Gerichtsinformationen abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/court/detail?ids=<Kommagetrennte Liste von Gericht-IDs>
Beschreibung: Gibt detaillierte Informationen zu den spezifizierten Gerichten zurück. Maximal 20 Gerichte können abgefragt werden.
Antwort:
{
  "courts": [
    {
      "id": <ID des Gerichts>,
      "name": "<Name des Gerichts>",
      "type": <ID der Gerichtart>,
      "parent": <ID des übergeordneten Gerichts>,
      "address": {
        "state": "<ID des Bundeslandes>",
        "city": "<Stadt>",
        "postal_code": "<Postleitzahl>",
        "street": "<Straße und Hausnummer>"
      },
      "provides_online_service": <Ob Videoverhandlungen angeboten werden>,
      "online_service_possible": <Ob Videoverhandlungen möglich sind>,
      "feedbacks": [
        {
          "provides_online_service": <Ob Videoverhandlungen angeboten werden>,
          "online_service_quality": <Qualität der Videoverhandlungen [1-5], null wenn nicht angegeben>,
          "rejection_reason": <ID des Ablehnungsgrundes, -1 wenn ein anderer Grund angegeben wurde>,
          "created_at": "<Datum der Erstellung>"
        }
      ],
      "detailed_feedbacks": [
        {
          "online_service_possible": <Ob Videoverhandlungen möglich sind>,
          "camera_perspectives": <Kommagetrennte Liste der Kamera-Perspektiven IDs>,
          "conferencing_software": <Kommagetrennte Liste der Konferenzsoftware IDs>,
          "feedback": "<Freitext-Feedback>",
          "created_at": "<Datum der Erstellung>"
        }
      ]
    }
  ]
}

Gericht erstellen

HTTP-Methode: POST
URL: https://videoverhandlung.de/api/v1/court
Beschreibung: Erstellt ein neues Gericht.
Daten-Schema:
{
  "name": "<Name des Gerichts>",
  "type": <ID der Gerichtsart>,
  "parent": <ID des übergeordneten Gerichts, optional>,
  "address": {
    "state": "<Bundesland>",
    "city": "<Stadt>",
    "postal_code": "<Postleitzahl>",
    "street": "<Straße und Hausnummer>"
  }
}
Antwort:
{
  "id": <ID des neuen Gerichts>
}

Gerichtsarten abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/court_type
Beschreibung: Gibt eine Liste aller Gerichtsarten zurück.
Antwort:
[
  {
    "id": <ID der Gerichtsart>,
    "name": "<Name der Gerichtsart>"
  }
]

Gerichtsart erstellen

HTTP-Methode: POST
URL: https://videoverhandlung.de/api/v1/court_type
Beschreibung: Erstellt eine neue Gerichtsart.
Daten-Schema:
{
  "name": "<Name der Gerichtsart>"
}
Antwort:
{
  "id": <ID der neuen Gerichtsart>
}

Bundesländer abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/state
Beschreibung: Gibt eine Liste aller Bundesländer zurück.
Antwort:
[
  {
    "id": "<ID des Bundeslandes>",
    "name": "<Name des Bundeslandes>"
  }
]

Feedback erstellen

HTTP-Methode: POST
URL: https://videoverhandlung.de/api/v1/feedback
Beschreibung: Erstellt ein Feedback zu einem Gericht.
Daten-Schema:
{
  "court_id": <ID des Gerichts>,
  "provides_online_service": <Ob Videoverhandlungen angeboten werden>,
  "online_service_quality": <1-5 oder null, nur wenn provides_online_service true ist>,
  "rejection_reason": <ID des Ablehnungsgrundes, nur wenn provides_online_service false ist und kein other_rejection_reason angegeben ist>,
  "other_rejection_reason": "<Freitext, nur wenn provides_online_service false ist und kein rejection_reason angegeben ist>'"
}

Detailliertes Feedback erstellen

HTTP-Methode: POST
URL: https://videoverhandlung.de/api/v1/feedback/detailed
Beschreibung: Erstellt ein detailliertes Feedback zu einem Gericht.
Daten-Schema:
{
  "court_id": <ID des Gerichts>,
  "online_service_possible": <Ob Videoverhandlungen möglich sind>,
  "camera_perspectives": <Kommagetrennte Liste der Kamera-Perspektiven IDs, nur wenn online_service_possible true ist, optional>,
  "conferencing_software": <Kommagetrennte Liste der Konferenzsoftware IDs, nur wenn online_service_possible true ist, optional>,
  "feedback": "<Freitext, optional>"
}

Ablehnungsgründe abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/feedback/rejection_reason
Beschreibung: Gibt eine Liste aller Ablehnungsgründe zurück.
Antwort:
[
  {
    "id": <ID des Ablehnungsgrundes>,
    "name": "<Name des Ablehnungsgrundes>"
  }
]

Kamera-Perspektiven abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/feedback/camera_perspective
Beschreibung: Gibt eine Liste aller Kamera-Perspektiven zurück.
Antwort:
[
  {
    "id": <ID der Kamera-Perspektive>,
    "name": "<Name der Kamera-Perspektive>"
  }
]

Kamera-Perspektive erstellen

HTTP-Methode: POST
URL: https://videoverhandlung.de/api/v1/feedback/camera_perspective
Beschreibung: Erstellt eine neue Kamera-Perspektive.
Daten-Schema:
{
  "name": "<Name der Kamera-Perspektive>"
}
Antwort:
{
  "id": <ID der neuen Kamera-Perspektive>
}

Konferenzsoftware abfragen

HTTP-Methode: GET
URL: https://videoverhandlung.de/api/v1/feedback/conferencing_software
Beschreibung: Gibt eine Liste aller Konferenzsoftware zurück.
Antwort:
[
  {
    "id": <ID der Konferenzsoftware>,
    "name": "<Name der Konferenzsoftware>"
  }
]

Konferenzsoftware erstellen

HTTP-Methode: POST
URL: https://videoverhandlung.de/api/v1/feedback/conferencing_software
Beschreibung: Erstellt eine neue Konferenzsoftware.
Daten-Schema:
{
  "name": "<Name der Konferenzsoftware>"
}
Antwort:
{
  "id": <ID der neuen Konferenzsoftware>
}