Module 09 · Integrations and API
Put the join linkwhere work starts.
A video conferencing API for teams that want calendar join links, meeting events and an embeddable call view inside the tools they already run. Create a room from your application, listen for its events, and keep the meeting in the workflow instead of sending people to another tab.

The API offerstarts with the event.
Vebex sells integrations as a catalogue module. API calls are included, while high-volume usage is quoted per written proposal in USD. The other parts of the deployment still follow the meeting: hosts per month, the largest meeting, recording storage and dial-in minutes. There is no public checkout and no binding price hidden in an endpoint.
Most integration work is not a clever API client. It is deciding which system owns the meeting, what happens when a participant does not arrive, and who gets the webhook when a recording finishes. We give you the primitives, then test the boring paths with you.
Start with the configurator if you know your meeting sizes. Start with an inquiry if the call is part of a larger workflow and you need us to read it first.
Join links that survive the invite
Create a meeting with a stable room identifier and put the join URL in the calendar event your system owns. The attendee sees the same destination in the invitation, the reminder and the event detail. When the host changes the time, your calendar changes it. Vebex does not become a second calendar that drifts out of date.
For an ordinary call, the API can return the join link, host link and start metadata. For a town hall, add the webinar module and keep panelists separate from attendees.
Resources with a narrow job
The REST API creates and reads meetings, lists participants, returns recordings and exposes the links your application needs. Authentication belongs on your server. We do not recommend putting a long-lived secret in browser code and calling that an integration.
POST /meetings
GET /meetings/{meeting_id}
GET /meetings/{meeting_id}/participants
GET /meetings/{meeting_id}/recordingsThe exact request and response shapes arrive with the proposal and your use case. A code sample is not a substitute for deciding what your application should be allowed to do.
Let the call tell your systems
Subscribe to meeting created, meeting started, participant joined, participant left, recording ready and meeting ended events. Your service can update a job, notify a manager, attach a recording to a case or open the next workflow without polling every minute.
Events carry an identifier and a delivery timestamp. Your receiver should accept duplicates and process them idempotently. Networks fail. A webhook that assumes exactly one delivery will eventually write the same meeting twice.
A call in your own surface
The embeddable meeting view gives a participant a call without making your application hand them off to a branded lobby. Your page owns the surrounding workflow; Vebex owns the media controls and admission state. The embed is not a magic way around permissions, and it still obeys the host's join rules.
Use it for a customer portal, a field-service case or a private training surface. Do not use it to hide a meeting from the people who need to know it exists.
- Meeting resource
- Stable room identifier, join URL, host URL, scheduled start
- Event families
- created, started, participant joined, participant left, recording ready, ended
- Delivery
- At least once. Build the receiver to tolerate a repeat.
- Recording availability
- After processing, not at the moment the call ends
- Auth
- Server-side credential. Never in browser code.
- Price basis
- API calls included; high-volume usage quoted per proposal
The boring partsare the product.
Retries, revoked tokens and a meeting that ended before your receiver came back online matter more than a glossy demo. We document the response codes, show what a duplicate event looks like and give the receiving service enough information to decide whether to retry or discard.
Recording is another edge. A recording is not ready when the meeting ends; processing takes time. The webhook tells your system when the file and transcript are available. Retention still applies. A link to an expired recording is not an API failure, it is a policy result.
Dial-in remains visible in participant events. Dial-in is how someone with one bar of signal gets into a call, and an integration that only understands a camera participant is incomplete.
A rollout that does notbreak on Tuesday.
Map the owner
Your calendar or case system creates the room. Vebex supplies links, media and meeting state.
Choose one flow
Start with one appointment type. Do not wire every department before anyone has seen a failed webhook.
Test bad timing
Send a duplicate, stop the receiver, expire a token and end a call with no recording.
Add the embed
Only after the join path works in a normal browser should it move into your portal.
Watch the events
Keep delivery failures visible to the people who own the workflow.
Questions beforethe first request.
API calls are included. High-volume usage is quoted per proposal. The written proposal also accounts for host licences, largest meeting, retained recording storage and dial-in minutes, because those are the costs of the deployment around the API.
Yes. Your receiver must be idempotent. We expect network retries and make the event identifier available so you can safely ignore a duplicate.
A product that wants to hide the meeting's host controls or admission rules should not start with an embed. The embedded view changes the surface, not the ownership of the call.
Yes. Calendar join links are a sensible first step. Add webhooks when another system needs to know what happened, then add the REST or embedded surface when the workflow proves it needs them.
Build thejoin path.
Tell us which system owns your calendar or case, how many meetings it creates and whether the call needs to sit inside your product.