curl --request PATCH \
--url https://{your-subdomain}.neetorecord.com/api/external/v2/recordings/{id} \
--header 'Accept: <accept>' \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <x-api-key>' \
--data '
{
"recording": {
"title": "Product demo walkthrough, February",
"summary": "Covers folders, tags, and sharing.",
"folder_id": "hqzptnv",
"tag_names": [
"demo",
"internal"
]
}
}
'const options = {
method: 'PATCH',
headers: {
'X-Api-Key': '<x-api-key>',
Accept: '<accept>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
recording: {
title: 'Product demo walkthrough, February',
summary: 'Covers folders, tags, and sharing.',
folder_id: 'hqzptnv',
tag_names: ['demo', 'internal']
}
})
};
fetch('https://{your-subdomain}.neetorecord.com/api/external/v2/recordings/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{your-subdomain}.neetorecord.com/api/external/v2/recordings/{id}"
payload = { "recording": {
"title": "Product demo walkthrough, February",
"summary": "Covers folders, tags, and sharing.",
"folder_id": "hqzptnv",
"tag_names": ["demo", "internal"]
} }
headers = {
"X-Api-Key": "<x-api-key>",
"Accept": "<accept>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"title": "<string>",
"default_title": "<string>",
"duration": 123,
"view_count": 123,
"is_uploaded": true,
"requested": true,
"summary": "<string>",
"public_link_id": "<string>",
"public_url": "<string>",
"transcoded_url": "<string>",
"thumbnail_url": "<string>",
"user_name": "<string>",
"tags": [
{
"id": "<string>",
"name": "<string>",
"style": "<string>"
}
],
"folder_name": "<string>",
"folder_id": "<string>",
"has_transcript": true,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"uploaded_at": "2023-11-07T05:31:56Z"
}{
"error": "You are not authorized to perform this action."
}{
"error": "Recording does not exist."
}{
"error": "param is missing or the value is empty or invalid: recording"
}Update a recording
Updates a recording’s title, summary, folder, or tags. Only the attributes present in the request body are changed.
curl --request PATCH \
--url https://{your-subdomain}.neetorecord.com/api/external/v2/recordings/{id} \
--header 'Accept: <accept>' \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <x-api-key>' \
--data '
{
"recording": {
"title": "Product demo walkthrough, February",
"summary": "Covers folders, tags, and sharing.",
"folder_id": "hqzptnv",
"tag_names": [
"demo",
"internal"
]
}
}
'const options = {
method: 'PATCH',
headers: {
'X-Api-Key': '<x-api-key>',
Accept: '<accept>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
recording: {
title: 'Product demo walkthrough, February',
summary: 'Covers folders, tags, and sharing.',
folder_id: 'hqzptnv',
tag_names: ['demo', 'internal']
}
})
};
fetch('https://{your-subdomain}.neetorecord.com/api/external/v2/recordings/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{your-subdomain}.neetorecord.com/api/external/v2/recordings/{id}"
payload = { "recording": {
"title": "Product demo walkthrough, February",
"summary": "Covers folders, tags, and sharing.",
"folder_id": "hqzptnv",
"tag_names": ["demo", "internal"]
} }
headers = {
"X-Api-Key": "<x-api-key>",
"Accept": "<accept>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"id": "<string>",
"title": "<string>",
"default_title": "<string>",
"duration": 123,
"view_count": 123,
"is_uploaded": true,
"requested": true,
"summary": "<string>",
"public_link_id": "<string>",
"public_url": "<string>",
"transcoded_url": "<string>",
"thumbnail_url": "<string>",
"user_name": "<string>",
"tags": [
{
"id": "<string>",
"name": "<string>",
"style": "<string>"
}
],
"folder_name": "<string>",
"folder_id": "<string>",
"has_transcript": true,
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"uploaded_at": "2023-11-07T05:31:56Z"
}{
"error": "You are not authorized to perform this action."
}{
"error": "Recording does not exist."
}{
"error": "param is missing or the value is empty or invalid: recording"
}{your-subdomain} with your workspace’s subdomain. Learn how to find your subdomain in Workspace subdomain.
Headers
API key. Refer to Authentication for more information.
Must be application/json.
application/json Path Parameters
The recording's id (UUID) or its public_link_id (the short code in the watch URL). Both are accepted.
Body
Hide child attributes
Hide child attributes
New title for the recording.
"Product demo walkthrough, February"
New summary for the recording.
"Covers folders, tags, and sharing."
Folder to move the recording into. Accepts the folder id returned by the List folders API. Send an empty value to remove the recording from its folder.
"hqzptnv"
Replaces every tag on the recording, so send the complete list. Names that do not exist yet are created.
["demo", "internal"]
Response
Successfully updated the recording.
Unique identifier for the recording.
Custom title set by the user.
Auto-generated title for the recording.
Duration of the recording in seconds.
Number of times the recording has been viewed.
Whether the recording has been fully uploaded.
Whether the recording was requested from someone.
AI-generated summary of the recording.
Public link identifier used in the watch URL.
Public watch URL for the recording.
CloudFront signed URL for the transcoded video.
URL for the recording thumbnail image.
Display name of the user who created the recording.
Name of the folder containing the recording.
Unique identifier of the folder containing the recording.
Whether the recording has transcript text.
Timestamp when the recording was created.
Timestamp when the recording was last updated.
Timestamp when the recording was uploaded.