Video conferencing

Meeting rooms and their recordings.

List meeting rooms

GET/meeting-rooms

Needs the permission meeting:read

Response 200

availablerequiredboolean
reachablebooleandefault true
roomsrequiredobject[]
idrequiredstring (uuid)
namerequiredstring
lobbyrequiredboolean
guest_urlrequiredstring
usablebooleandefault true
runningbooleandefault false
participantsintegerdefault 0
recordingbooleandefault false
created_atrequiredstring (date-time)
room_limitrequiredinteger
participant_limitrequiredinteger
can_managerequiredboolean
curl "https://portal.nimag.net/api/v1/meeting-rooms" \
  -H "Authorization: Bearer nck_…"
{
  "available": true,
  "reachable": true,
  "rooms": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "name": "string",
      "lobby": true,
      "guest_url": "string",
      "usable": true,
      "running": false,
      "participants": 0,
      "recording": false,
      "created_at": "2026-01-31T12:00:00Z"
    }
  ],
  "room_limit": 0,
  "participant_limit": 0,
  "can_manage": true
}

Create a meeting room

POST/meeting-rooms

Needs the permission meeting:manage

Body (JSON)

namerequiredstringup to 200 characters

Response 201

idrequiredstring (uuid)
namerequiredstring
lobbyrequiredboolean
guest_urlrequiredstring
usablebooleandefault true
runningbooleandefault false
participantsintegerdefault 0
recordingbooleandefault false
created_atrequiredstring (date-time)
curl -X POST "https://portal.nimag.net/api/v1/meeting-rooms" \
  -H "Authorization: Bearer nck_…" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string"
  }'
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "name": "string",
  "lobby": true,
  "guest_url": "string",
  "usable": true,
  "running": false,
  "participants": 0,
  "recording": false,
  "created_at": "2026-01-31T12:00:00Z"
}

Change a meeting room

PATCH/meeting-rooms/{room_id}

Needs the permission meeting:manage

Path

room_idrequiredstring (uuid)

Body (JSON)

namestring | nullup to 200 characters
lobbyboolean | null
new_linkbooleandefault false

Response 200

idrequiredstring (uuid)
namerequiredstring
lobbyrequiredboolean
guest_urlrequiredstring
usablebooleandefault true
runningbooleandefault false
participantsintegerdefault 0
recordingbooleandefault false
created_atrequiredstring (date-time)
curl -X PATCH "https://portal.nimag.net/api/v1/meeting-rooms/{room_id}" \
  -H "Authorization: Bearer nck_…" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "string",
    "lobby": true,
    "new_link": false
  }'
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "name": "string",
  "lobby": true,
  "guest_url": "string",
  "usable": true,
  "running": false,
  "participants": 0,
  "recording": false,
  "created_at": "2026-01-31T12:00:00Z"
}

Delete a meeting room

DELETE/meeting-rooms/{room_id}

Needs the permission meeting:manage

Path

room_idrequiredstring (uuid)

Response 204: no content.

curl -X DELETE "https://portal.nimag.net/api/v1/meeting-rooms/{room_id}" \
  -H "Authorization: Bearer nck_…"

Start a meeting

POST/meeting-rooms/{room_id}/start

Needs the permission meeting:read

Opens the room, and gives the link to join it.

Path

room_idrequiredstring (uuid)

Response 200

urlrequiredstring
curl -X POST "https://portal.nimag.net/api/v1/meeting-rooms/{room_id}/start" \
  -H "Authorization: Bearer nck_…"
{
  "url": "string"
}

List recordings

GET/meeting-rooms/{room_id}/recordings

Needs the permission meeting:read

Path

room_idrequiredstring (uuid)

Response 200

idrequiredstring
started_atrequiredstring (date-time) | null
ended_atrequiredstring (date-time) | null
participantsrequiredinteger
urlrequiredstring | null
size_mbrequirednumber | null
curl "https://portal.nimag.net/api/v1/meeting-rooms/{room_id}/recordings" \
  -H "Authorization: Bearer nck_…"
[
  {
    "id": "string",
    "started_at": "2026-01-31T12:00:00Z",
    "ended_at": "2026-01-31T12:00:00Z",
    "participants": 0,
    "url": "string",
    "size_mb": 0
  }
]

Delete a recording

DELETE/meeting-rooms/{room_id}/recordings/{record_id}

Needs the permission meeting:manage

Path

room_idrequiredstring (uuid)
record_idrequiredstring

Response 204: no content.

curl -X DELETE "https://portal.nimag.net/api/v1/meeting-rooms/{room_id}/recordings/{record_id}" \
  -H "Authorization: Bearer nck_…"

Video conference plans

GET/meeting-plans

Any key

Response 200

namerequiredstring
participantsrequiredinteger
extrasrequiredstring[]
extras_enstring[]default []
pricesobject[]default []
monthsrequiredinteger
amountrequirednumber
currencyrequiredstring
curl "https://portal.nimag.net/api/v1/meeting-plans" \
  -H "Authorization: Bearer nck_…"
[
  {
    "name": "string",
    "participants": 0,
    "extras": [
      "string"
    ],
    "extras_en": [],
    "prices": []
  }
]