VoiceGateway

Add a LiveKit project to the organisation

POST
/api/v1/org/{orgId}/projects

Authorization

consoleSession
cookievg_session<token>

The console's session cookie, set when you sign in. Every operation accepts it, at the role the operation names.

Path Parameters

orgId*string

Authorised orgId; the server must verify organisation/project ownership before any read.

Length1 <= length

Request Body

application/json
  1. body
name*string

The project's display name; trimmed, with at least one letter or digit. Its slug is the project id.

Length1 <= length <= 64
livekitUrl*string

The LiveKit server URL, with the scheme ws, wss, http or https and a host, such as wss://your-project.livekit.cloud.

Length1 <= length <= 2048
livekitApiKey*string

The LiveKit API key; unique on this server, since ingest finds a project by the key that signed a webhook or upload.

Length1 <= length <= 256
livekitApiSecret*string

The LiveKit API secret. Sealed before it is stored; never answered or logged.

Length1 <= length
recordingBucket?

An S3 bucket the project keeps its recordings in instead of the instance's bucket. Set only when the project is created; it never changes afterwards, so recordings never move between buckets.

Response Body

The new project, as getWorkspaces lists it, and how many rooms its LiveKit project had live at the verify. Never its LiveKit key or secret.

application/json
  1. response
id*string
name*string
liveRooms*|

Rooms live on the LiveKit project at the verify, from the same signed ListRooms read. Null when the verifier did not count them; never a guessed zero.

Range0 <= value
Example Request
curl -X POST 'https://example.com/api/v1/org/string/projects' \  -H 'Content-Type: application/json' \  -d '{  "name": "string",  "livekitUrl": "string",  "livekitApiKey": "string",  "livekitApiSecret": "string"}'
Example Response
{  "id": "string",  "name": "string",  "liveRooms": 0}

Was this page helpful?