Recordings
Complete upload
Tells AiGenda that all file parts have been uploaded to storage.
POST
/
api
/
spaces
/
{space_id}
/
audio
/
{audio_id}
/
complete_upload
/
curl -X POST "https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/" \
-H "Authorization: Bearer <access>" \
-H "Content-Type: application/json" \
-d '{
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\""
}
]
}'
import requests
response = requests.post(
"https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/",
headers={"Authorization": "Bearer <access>"},
json={
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\"",
},
],
},
timeout=30,
)
response.raise_for_status()
print(response.status_code)
const response = await fetch("https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/", {
method: "POST",
headers: { Authorization: "Bearer <access>", "Content-Type": "application/json" },
body: JSON.stringify({
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\""
}
]
}),
});
console.log(response.status);
Empty response body
Path parameters
integer
required
Space ID.
integer
required
Recording ID.
Request body
object[]
required
Response
Successful response:200 with an empty body.
After the response, wait for is_uploaded: true in Upload status.
curl -X POST "https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/" \
-H "Authorization: Bearer <access>" \
-H "Content-Type: application/json" \
-d '{
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\""
}
]
}'
import requests
response = requests.post(
"https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/",
headers={"Authorization": "Bearer <access>"},
json={
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\"",
},
],
},
timeout=30,
)
response.raise_for_status()
print(response.status_code)
const response = await fetch("https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/", {
method: "POST",
headers: { Authorization: "Bearer <access>", "Content-Type": "application/json" },
body: JSON.stringify({
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\""
}
]
}),
});
console.log(response.status);
Empty response body
Last modified on October 17, 2026
⌘I
curl -X POST "https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/" \
-H "Authorization: Bearer <access>" \
-H "Content-Type: application/json" \
-d '{
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\""
}
]
}'
import requests
response = requests.post(
"https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/",
headers={"Authorization": "Bearer <access>"},
json={
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\"",
},
],
},
timeout=30,
)
response.raise_for_status()
print(response.status_code)
const response = await fetch("https://api.aigenda.tech/api/spaces/1024/audio/51234/complete_upload/", {
method: "POST",
headers: { Authorization: "Bearer <access>", "Content-Type": "application/json" },
body: JSON.stringify({
"parts": [
{
"PartNumber": 1,
"ETag": "\"9b2cf535f27731c974343645a3985328\""
}
]
}),
});
console.log(response.status);
Empty response body