Update a clip
This endpoint updates a clip in a project.
HTTP Request
PUT https://app.resemble.ai/api/v2/projects/<project_uuid>/clips/<clip_uuid>
URL Parameters | Type | Description |
---|---|---|
clip_uuid | string | UUID of the clip to update |
project_uuid | string | UUID of the project to which the clip should belong |
JSON Body | Type | Description |
---|---|---|
title | (optional) string | Title for this clip |
body | string | Content to be synthesized. Max size of 3,000 characters excluding SSML tags. |
voice_uuid | string | UUID of the voice to use for synthesizing |
is_archived | boolean | Whether this clip should be archived |
callback_uri | string | The URL to POST the final clip to |
precision | (optional) one of the following values: PCM_32 , PCM_24 , PCM_16 , or MULAW . Default is PCM_32 . | The audio bit depth of generated audio |
sample_rate | (optional) one of the following values: 16000 , 22050 or 44100 . Default is 22050 . | The sample rate (Hz) of the generated audio |
output_format | (optional) one of the following values: wav or mp3 . Default is wav . | The format of the generated audio |
include_timestamps | (optional) boolean. Default is false | Whether to include timestamps for the generated content -- see the documentation on timestamps for more information |
HTTP Response
Only asynchronous requests are supported for updating a clip. A callback_uri
must be provided and the client can expect to receive a POST request to the callback_uri
endpoint with the asynchronous response described below.
Asynchronous Response
1. HTTP response returned to the requester:
{
"success": true,
"item": {
"uuid": <string>,
"title": <string>,
"body": <string>,
"voice_uuid": <string>,
"is_archived": <boolean>,
"created_at": <UTC Date>,
"updated_at": <UTC Date>,
}
}
2. Sends a POST request to the callback_uri
with the following body:
The callback request will send a POST request to the callback URI provided. It will include a body of JSON:
{
"id": <string>,
"project_id": <string>,
"url": <string: url to audio which expires after 1 hour>,
"audio_timestamps": {
"graph_chars": <string[]>,
"graph_times": <float[[]]>,
"phon_chars": <string[]>,
"phon_times": <float[[]]>
},
"issues": <string[]>
}
Note:
audio_timestamps
is only sent if theinclude_timestamps
parameter wastrue
in the original request
Examples
Asynchronous Synthesis
NodeJS
1
Coming soon...
tip
webhook.site is a great development tool for testing callbacks.
Try it out
API Key:
Project UUID:
Clip UUID:
JSON Body: