Start Composite Merge - API
Start a
composite-merge transcoding job that combines multiple individual participant recordings of the same session into a single composed MP4 file using a tiled grid layout. Pass an array of recordingIds and an optional webhookUrl. A 409 is returned if a job for the exact same set of recordings is already in progress. To burn a watermark onto the output, use one of the watermark variants of this endpoint (image / timestamp / lat_long).HTTP method and endpoint
POST
|
https://api.videosdk.live/v2/transcodings/merge
Headers Parameters
REQUIRED
values: YOUR_TOKEN_WITHOUT_ANY_PREFIX
This will be a JWT token generate using VideoSDK ApiKey and Secret.
Note that the token will not include any prefix such as "Basic " or "Bearer ". Just pass a token as value.
You can generate a new token by refering this Guide: Generate Auth token
REQUIRED
values: application/json
This is usefull for json body parameters, so that VideoSDK servers can understand that the incoming body parameter will be a JSON string.
Body Parameters
REQUIRED
Array of participant
recordingIds to merge. Must be a non-empty array of unique IDs that belong to the requesting user. OPTIONAL
Webhook URL to receive
composite-merge-started, composite-merge-completed, composite-merge-failed and composite-merge-cancelled events. POST
|
https://api.videosdk.live/v2/transcodings/merge
NodeJS
import fetch from 'node-fetch';
const options = {
method: "POST",
headers: {
"Authorization": "$YOUR_TOKEN",
"Content-Type": "application/json",
},
body: JSON.stringify({
"recordingIds": [
"6697685c6eaaaac67ea18130",
"6697685c6eaaaac67ea18131"
],
"webhookUrl": "https://www.example.com/"
}),
};
const url= `https://api.videosdk.live/v2/transcodings/merge`;
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
RESPONSE
{
"id": "665fcf7f2abe9a2807e42700",
"recordingIds": [
"6697685c6eaaaac67ea18130",
"6697685c6eaaaac67ea18131"
],
"roomId": "abcd-efgh-ijkl",
"sessionId": "6847c231fbaa8b416bc87014",
"status": "processing",
"task": "composite-merge",
"startedAt": "2025-06-10T05:45:02.730Z"
}
Got a Question? Ask us on discord