UGCBloom API
Read-only API for brands to access campaign data, creator performance, and video statistics.
https://ugcbloom.com/api/v1Authorization: Bearer ugcb_live_...data + meta envelopeBuilding with AI agents?
Skip the REST API — connect Claude or other AI agents directly via the MCP Server. OAuth-based, no manual auth setup needed.
Authentication
Create API keys in your organization's Settings > API Keys page. Pass the key in the Authorization header:
curl https://ugcbloom.com/api/v1/campaigns \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
readalways includedCampaigns, creators, videos, stats, leaderboards
messagesoptionalDM conversations and message history
Request & Response
Response Format
// Success
{ "data": [ ... ], "meta": { "page": 1, "per_page": 25, "total": 42 } }
// Error
{ "error": { "code": "not_found", "message": "Campaign not found" } }Pagination
Use page and per_page (max 100). Check meta.total for total count.
Campaigns
/campaignsList all campaigns
Returns a paginated list of all campaigns. This is typically the first endpoint to call — use the campaign id from the response with other endpoints.
| Parameter | Type | Description |
|---|---|---|
| page | integer | Page number (default: 1) |
| per_page | integer | Items per page, max 100 (default: 25) |
| search | string | Search by campaign title |
| status | enum | draft, requires_payment, active, under_review, ended, disapproved |
| sort | string | Field to sort by (e.g. created_at, budget) |
| order | enum | asc or desc (default: desc) |
| since | date | Filter campaigns created after this date (ISO 8601) |
| until | date | Filter campaigns created before this date (ISO 8601) |
curl "https://ugcbloom.com/api/v1/campaigns" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Example response
{
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"title": "Summer TikTok Campaign",
"status": "active",
"budget": 5000,
"platforms": ["tiktok", "instagram"],
"created_at": "2026-01-15T10:00:00Z"
}
],
"meta": { "page": 1, "per_page": 25, "total": 3 }
}/campaigns/{campaignId}Get campaign details
Full details for a single campaign including brief URL, geo targeting, and configuration.
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
/campaigns/{campaignId}/statsGet campaign statistics
Comprehensive stats with optional sections. Always includes overview (views, spend, CPM, video status). Optional: growth (creator growth 48h/7d), production (submitted/approved/live with 7d deltas), spend (breakdown by unit), top_videos (ranked with per-video CPM).
| Parameter | Type | Description |
|---|---|---|
| include | string | Comma-separated sections: growth, production, spend, top_videos. Omit for all. |
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/stats" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Example response
{
"data": {
"overview": {
"total_creators": 12, "total_videos": 28,
"videos_by_status": { "submitted": 3, "approved": 10, "live": 15 },
"total_views": 450000, "total_spend": 2340.50,
"cpm": 5.20, "cpm_with_fees": 6.80
},
"growth": {
"active_creators": 8, "new_creators_7d": 3, "new_creators_48h": 1
},
"production": {
"total_live": 15, "new_live_7d": 4
}
}
}/campaigns/{campaignId}/chartCampaign growth time-series
Daily data points for views, likes, comments, CPM, and budget remaining. Use to track growth trends, CPM trajectory, and budget burn rate.
| Parameter | Type | Description |
|---|---|---|
| days | integer | Number of days (default: 30, max: 365) |
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/chart" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Example response
{
"data": [
{
"date": "2026-03-15",
"total_views": 125000,
"total_likes": 8500,
"cpm": 5.20,
"cpm_with_fees": 6.80,
"budget_remaining": 2660.50
}
]
}/campaigns/{campaignId}/analyticsCreator cohort analysis
Follower tier distribution, country distribution, active creator rate, and average reach. Answers: where are my creators from? What size are they? What % have gone live?
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/analytics" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Example response
{
"data": {
"total_participants": 45,
"active_creator_rate": 0.67,
"average_creator_reach": 28500,
"follower_distribution": [
{ "tier": "0-5K", "count": 12 },
{ "tier": "10K-50K", "count": 15 }
],
"country_distribution": [
{ "country": "US", "label": "United States", "count": 18 }
]
}
}/campaigns/{campaignId}/leaderboardGet creator leaderboard
Ranked list of top-performing videos. Sort by views, likes, comments, or payout.
| Parameter | Type | Description |
|---|---|---|
| limit | integer | Number of entries, max 100 (default: 25) |
| sort | enum | views, likes, comments, or payout (default: views) |
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/leaderboard" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Creators
/campaigns/{campaignId}/creatorsList creators in a campaign
Creators with performance metrics, CPM, cost per video, live video count, and social accounts. Sort by cpm or cost_per_video to find best/worst performers.
| Parameter | Type | Description |
|---|---|---|
| page | integer | Page number |
| per_page | integer | Items per page |
| search | string | Search by creator name |
| status | enum | active or blocked |
| sort | string | total_views, total_likes, total_payout, cpm, cost_per_video |
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/creators" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
/campaigns/{campaignId}/creators/{creatorId}Get creator details
Detailed creator info including all their video submissions with per-platform stats.
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/creators/:creatorId" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Videos
/campaigns/{campaignId}/videosList videos in a campaign
All video submissions with performance stats. Filter by status.
| Parameter | Type | Description |
|---|---|---|
| page | integer | Page number |
| per_page | integer | Items per page |
| status | enum | submitted, approved, rejected, live, resubmitted |
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/videos" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
/campaigns/{campaignId}/videos/{videoId}Get video details
Single video with current stats, plus full stats_history showing engagement over time (all snapshots). Use to assess video growth trajectory.
curl "https://ugcbloom.com/api/v1/campaigns/:campaignId/videos/:videoId" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Statistics
/statsOrganization-wide statistics
Comprehensive org stats with optional sections. Always includes overview (campaigns, creators, spend, CPM). Optional: growth (active/new creators), production (submitted/approved/live with 7d deltas), spend (by unit), campaigns (per-campaign breakdown), top_videos.
| Parameter | Type | Description |
|---|---|---|
| include | string | Comma-separated sections: growth, production, spend, campaigns, top_videos. Omit for all. |
curl "https://ugcbloom.com/api/v1/stats" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
/stats/historicalHistorical statistics
Daily time-series with CPM tracking. Each day includes views, likes, comments, creators, campaigns, plus cumulative CPM and CPM with fees.
| Parameter | Type | Description |
|---|---|---|
| days | integer | Number of days of history (default: 30, max: 365) |
curl "https://ugcbloom.com/api/v1/stats/historical" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
Messages
/conversationsmessagesList conversations
All DM conversations involving your org members. Includes participants and last message.
| Parameter | Type | Description |
|---|---|---|
| page | integer | Page number |
| per_page | integer | Items per page |
curl "https://ugcbloom.com/api/v1/conversations" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"
/conversations/{conversationId}/messagesmessagesGet messages
Paginated messages from a conversation. Includes sender info, attachments, and reactions.
| Parameter | Type | Description |
|---|---|---|
| page | integer | Page number |
| per_page | integer | Messages per page |
curl "https://ugcbloom.com/api/v1/conversations/:conversationId/messages" \ -H "Authorization: Bearer ugcb_live_your_api_key_here"