Content
The photos, videos and files in your content library, from host deliverables and your own uploads, with short-lived download URLs.
On this page
The content library holds what hosts delivered for your campaigns and what your team uploaded. Files sent inside messages are not part of the API.
A list item never carries a file URL. Files live in private storage, so you ask for a download URL when you need the file and fetch it within 300 seconds:
const headers = { Authorization: `Bearer ${process.env.RENDEZVU_BRAND_API_KEY}` };
const base = 'https://api.rendezvu.co';
const list = await fetch(`${base}/api/brand/v1/content?media_type=video&per_page=100`, { headers });
for (const item of (await list.json()).data) {
const link = await fetch(`${base}${item.download_path}`, { headers });
const { url, filename } = (await link.json()).data;
const file = await fetch(url);
// Save file.body as filename in your own storage.
}List content#
Files in your content library: deliverables hosts submitted, and files your team uploaded. Items carry a download path rather than a file URL. Files sent in messages are never listed.
- pageintegeroptionaldefault 1The page to return, starting at 1. At most 10,000.
- per_pageintegeroptionaldefault 25Items per page, between 1 and 100.
- sourcecsv of enumsoptionalWhere the file came from. Both when omitted.
deliverableupload - media_typecsv of enumsoptionalOnly these kinds of file.
imagevideoaudiodocumentother - opportunity_idcsv of stringsoptionalOnly content from these campaigns (up to 50 UUIDs).
- host_idcsv of stringsoptionalOnly content from these hosts (up to 50 UUIDs).
- uploaded_afterdateoptionalOnly files added on or after this ISO 8601 date or timestamp.
- uploaded_beforedateoptionalOnly files added before this ISO 8601 date or timestamp.
- sortenumoptionaldefault newestOrder by when the file was added.
newestoldest
A page of content items. data is an array of objects with these attributes, and the body carries pagination.
- idstringThe item id.
- sourceenum
deliverableorupload. - media_typeenumimage, video, audio, document or other.
- filenamestringnullableFile name.
- mime_typestringnullableMIME type.
- file_size_bytesintegernullableSize in bytes.
- created_attimestampWhen the file was added.
- uploaded_byenumWho added it, relative to you:
host,brand(your team), orpeer_brand(another brand on a shared campaign). - hostobjectnullableThe host the file belongs to.
- idstringHost user id.
- usernamestringnullableHandle.
- namestringnullableDisplay name.
- opportunityobjectnullableThe campaign the file was delivered for.
- idstringOpportunity id.
- titlestringCampaign title.
- assignment_idstringnullableThe host’s assignment.
- assignment_statusstringnullableIts status.
- deliverableobjectnullableThe deliverable the file answers.
- idstringDeliverable id.
- titlestringWhat was due.
- due_datedatenullableWhen it was due.
- download_pathstringThe path to call for a download URL. See Retrieve a download URL.
curl 'https://api.rendezvu.co/api/brand/v1/content?source=deliverable&media_type=video&per_page=1' \
-H "Authorization: Bearer $RENDEZVU_BRAND_API_KEY"{
"success": true,
"data": [
{
"id": "e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b",
"source": "deliverable",
"media_type": "video",
"filename": "ridgeline-reel-final.mp4",
"mime_type": "video/mp4",
"file_size_bytes": 48213990,
"created_at": "2026-10-03T21:15:08.000Z",
"uploaded_by": "host",
"host": {
"id": "6f1c2a9e-3b4d-4e1f-9a8b-2c7d5e6f7a81",
"username": "jordanalpine",
"name": "Jordan Reyes"
},
"opportunity": {
"id": "8a1b2c3d-4e5f-4a6b-8c7d-9e0f1a2b3c4d",
"title": "Fall trail series",
"assignment_id": "f0e1d2c3-b4a5-4968-8776-655443322110",
"assignment_status": "ACTIVE"
},
"deliverable": {
"id": "d1e2f3a4-b5c6-4d7e-8f9a-0b1c2d3e4f5a",
"title": "One Instagram reel",
"due_date": "2026-10-24"
},
"download_path": "/api/brand/v1/content/deliverable/e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b/download"
}
],
"pagination": {
"page": 1,
"per_page": 1,
"total_items": 27,
"total_pages": 27,
"has_next": true,
"has_prev": false
},
"_timing": {
"duration_ms": 42
}
}Retrieve a download URL#
A signed URL for one file, valid for 300 seconds. The response is JSON, not a redirect, so your code decides when to fetch the file. Ask for a new URL each time; do not store one.
- sourceenumrequiredpathThe item’s
source.deliverableupload - item_idstringrequiredpathThe item’s
id(UUID).
A short-lived URL and the file’s name and type.
- urlstringA signed HTTPS URL for the file.
- expires_in_secondsintegerHow long the URL works. Always 300.
- filenamestringnullableFile name, for saving.
- mime_typestringnullableMIME type.
- 404Not FoundNo such item in your library, or `source` is not deliverable or upload.
curl 'https://api.rendezvu.co/api/brand/v1/content/deliverable/e1f2a3b4-c5d6-4e7f-8a9b-0c1d2e3f4a5b/download' \
-H "Authorization: Bearer $RENDEZVU_BRAND_API_KEY"{
"success": true,
"data": {
"url": "https://rendezvu-files.s3.amazonaws.com/deliverables/ridgeline-reel-final.mp4?X-Amz-Expires=300&X-Amz-Signature=...",
"expires_in_seconds": 300,
"filename": "ridgeline-reel-final.mp4",
"mime_type": "video/mp4"
},
"_timing": {
"duration_ms": 42
}
}- OpportunitiesYour campaigns with their briefs, compensation, deliverables and every host assignment, so you can track a program from your own systems.