Skip to content

API Endpoints

Andreas edited this page Feb 8, 2025 · 4 revisions

API

Mit der API ist es möglich Konferenzen durch eine andere Anwendung erzeugen zu lassen.

Es sollten nur Zugriffe von einem Backend-Server auf den Jitsi-Admin durchgeführt werden. Alle Request müssen mit dem in den Enterprise Einstellungen erstellten API-Tokens als Authorization Header (Bearer Token) durchgeführt werden


Infos zu einer Konferenz

GET /api/v1/info/{uid}

Request

http://localhost:8000/api/v1/info/57d4d52d3c1f38c28e9f101f031a631f

Response

{
  "error": false,
  "teilnehmer": [
    "[email protected]"
  ],
  "start": "2021-02-02CET13:00:00",
  "end": "2021-02-02CET13:45:00",
  "duration": 45,
  "name": "testAPINEW",
  "moderator": "[email protected]",
  "server": "serverurl",
  "joinBrowser": "http://localhost:8000/room/join/b/84",
  "joinApp": "http://localhost:8000/room/join/a/84"
}

Konferenz erstellen

POST /api/v1/room

Request

name type data type description
email required email Email address of the organisator
name required string Name of the conference
duration required int Duration of the Conference e.g. 30
server required int ID of the Server in Jitsi Admin
start required date (YYYY-mm-ddThh:mm) Startdate of the conference
keycloakId optional int Keycloak ID of the organisator
Example
http://localhost:8000/api/v1/room
  [email protected]
  &name=testAPINEW
  &duration=70
  &server=serverURL
  &start=2021-02-01T13:00
  &keycloakId=id_des_Users (optional nur wenn der selbe Keycloak verwendet wird)

Response

{
  "error": false,
  "uid": "57d4d52d3c1f38c28e9f101f031a631f",
  "text": "Meeting erfolgreich angelegt"
}

Konferenz bearbeiten

PUT /api/v1/room

Request

name type data type description
uid required string UID of the conference
name optional string Name of the conference
duration optional int Duration of the Conference e.g. 30
server optional int ID of the Server in Jitsi Admin
start optional date (YYYY-mm-ddThh:mm) Startdate of the conference
Example:
http://localhost:8000/api/v1/room
  ?uid=57d4d52d3c1f38c28e9f101f031a631f
  &name=testAPINEW
  &duration=45
  &server=serverURL
  &start=2021-02-02T13:00

Response:

{
  "error": false,
  "uid": "57d4d52d3c1f38c28e9f101f031a631f",
  "text": "Meeting erfolgreich geändert"
}

Konferenz Löschen

DELETE /api/v1/room
name type data type description
uid required string UID of the conference
Example:
http://localhost:8000/api/v1/room
  ?uid=57d4d52d3c1f38c28e9f101f031a631f

Response

{
  "error": false,
  "text": "Erfolgreich gelöscht"
}

Teilnehmer zu einer Konferenz hinzufügen

POST /api/v1/user
name type data type description
uid required string UID of the conference
email required string E-Mail Address of the new participant
Example:
http://localhost:8000/api/v1/user
  ?uid=57d4d52d3c1f38c28e9f101f031a631f
  &[email protected]

Response

{
  "error": false,
  "uid": "57d4d52d3c1f38c28e9f101f031a631f",
  "user": "[email protected]",
  "text": "Teilnehmer [email protected] erfolgreich hinzugefügt"
}

Teilnehmer von einer Konferenz löschen

DELETE /api/v1/user
name type data type description
uid required string UID of the conference
email required string E-Mail Address of the new participant
Example:
http://localhost:8000/api/v1/user
  ?uid=57d4d52d3c1f38c28e9f101f031a631f
  &[email protected]

Response

{
  "error": false,
  "uid": "57d4d52d3c1f38c28e9f101f031a631f",
  "user": "[email protected]",
  "text": "Teilnehmer [email protected] erfolgreich gelöscht"
}

Infos zu einem User

GET /api/v1/serverInfo
name type data type description
email required string E-Mail Address of the new participant
keycloakId optional string Keycloak ID of the organisator
Example:
http://localhost:8000/api/v1/serverInfo
  [email protected]
  &keycloakId=id (optional nur wenn der selbe Keycloak verwendet wird)

Response

{
  "server": [
    "url1",
    "url2",
    "url3"
  ],
  "email": "[email protected]",
  "error": false
}