Endpoints
Video Stitch API
Use the video stitch API to combine two to eight ready videos owned by one account into a single output, with ownership and aspect-ratio checks.
Keyword target: video stitch API
The stitch endpoint combines two to eight completed video projects into one video without a new generation charge. Every source must belong to the API-key account, be ready, and use the same aspect ratio. Canvas-style generation through the API is therefore generate-media for clips plus stitch for assembly.
- Create or identify two to eight video jobs under the same account.
- Poll each job until ready and confirm the clips share an aspect ratio.
- Send the ordered projectIds to POST /api/v1/stitch, then poll the returned status URL.
Working example
Set REVIRAL_API_KEY only in your server environment, then run this request with values valid for your account.
curl -X POST "https://reviral.ai/api/v1/stitch" \
-H "Authorization: Bearer $REVIRAL_API_KEY" \
-H "Content-Type: application/json" \
--data '{"projectIds":["550e8400-e29b-41d4-a716-446655440001","550e8400-e29b-41d4-a716-446655440002"]}'{
"data": {
"jobId": "550e8400-e29b-41d4-a716-446655440003",
"kind": "stitch",
"creditsCharged": 0,
"status": "queued",
"statusUrl": "/api/v1/jobs/550e8400-e29b-41d4-a716-446655440003"
}
}Frequently asked questions
- How many videos can the stitch API combine?
- A request combines two to eight distinct ready video project IDs in the order supplied.
- Does stitching charge generation credits?
- No. Stitching uses the same zero-credit assembly path as the app; creating the source clips may charge separately.
- Can I stitch another account's video?
- No. Every source project is checked against the account that owns the API key.
/api/v1/stitch
Stitch owned video jobs
Combines two to eight ready, same-aspect video jobs owned by the API-key account. Stitching is free.
Authentication: Bearer API key required
curl -X POST "https://reviral.ai/api/v1/stitch" \
-H "Authorization: Bearer $REVIRAL_API_KEY" \
-H "Content-Type: application/json" \
--data '{"projectIds":["550e8400-e29b-41d4-a716-446655440001","550e8400-e29b-41d4-a716-446655440002"]}'Request body
| Field | Type | Required | Description |
|---|---|---|---|
| projectIds | array | Yes | — |
Responses
- 200
- An existing stitched video is ready
- 202
- Stitch accepted
- 401
- Key is missing, revoked, or invalid
- 409
- Either the live charge changed (price_changed) or the Idempotency-Key was already used with a different request body (idempotency_key_reuse)
- 422
- Settings are invalid or a reference field is unsupported
- 429
- Too many requests
- 500
- Job could not be started
- 503
- Models or rate limiting are temporarily unavailable