trackagoat logotrackagoat/Docs

Getting started

  • Welcome
  • Quickstart
  • Core concepts

Guides

  • Creators
  • Videos
  • Campaigns
  • Creator Goals
  • Tracking Inbox
  • Content calendar
  • How scraping works
  • Analytics & metrics
  • Similar creator pools
  • Over-posting & suppression
  • Program Health
  • Sentiment Radar
  • API keys
  • Limits & plan tiers
  • Notifications
  • Payouts

API reference

  • Overview
  • Authentication
  • Errors
  • Projects
  • Creators
  • Videos
  • Campaigns
  • Analytics
  • Aggregate Analytics
  • Goal Compliance
  • Payouts
  • Schema

For agents

  • Agent guide
  • Data model
  • MCP & tooling

Platform

  • Brand
  • Changelog
  • Support
DocsAPI reference

API overview

Base URL, response envelope, pagination, date ranges, and API versioning.

PreviousPayoutsNextAuthentication

On this page

  • Authentication
  • Response envelope
  • Pagination
  • Date ranges
  • API key scopes
  • Idempotency
  • Available endpoints
  • Creators
  • Videos
  • Campaigns, Projects, Goals
  • Organizations, Members, Invitations, API Keys
  • Payouts
  • Analytics

The trackagoat v1 API gives programmatic read and write access to your organization's data. All endpoints are under /api/v1/ and require API key authentication.

OpenAPI spec: GET /api/v1/openapi.json — importable into Postman, Insomnia, or any OpenAPI-compatible tool.

Base URL: https://www.trackagoat.com/api/v1

The apex domain trackagoat.com redirects to www.trackagoat.com. Always use www.trackagoat.com as your base URL to avoid redirect overhead.

Authentication

See Authentication for how to generate and use API keys.

Response envelope

Every endpoint returns JSON with this shape:

json
{
  "data": <payload or null>,
  "error": <error string or null>,
  "meta": <pagination info or null>
}

Successful responses have data set and error: null. Error responses have data: null and error set to a message string.

Pagination

List endpoints use cursor-based pagination:

bash
GET /api/v1/creators?limit=50&cursor=<value>
ParameterDefaultMaxDescription
limit50100Items per page
cursor::Pass meta.nextCursor from the previous response

The meta object on list responses:

json
{
  "hasMore": true,
  "nextCursor": "2026-03-15T10:00:00Z"
}

Keep fetching until meta.hasMore is false.

Date ranges

Analytics and stats endpoints accept ?from=YYYY-MM-DD&to=YYYY-MM-DD. Both default to the last 30 days if omitted.

bash
GET /api/v1/analytics?entity=creator&entity_id=<uuid>&metric=views&from=2026-01-01&to=2026-03-31

API key scopes

Keys carry explicit permission scopes set at creation time:

ScopeGrants access to
readAll GET endpoints
writeAll POST, PATCH, and DELETE endpoints
adminPlatform-admin-only endpoints (key owner must also be a platform admin)

Write endpoints reject keys that only have read scope with 403 insufficient_scope.

Idempotency

POST endpoints that create resources accept an Idempotency-Key header. Replaying the same key within 24 hours returns the cached response — safe for agent retries.

bash
curl -X POST \
  -H "Authorization: Bearer tga_<key>" \
  -H "Idempotency-Key: 550e8400-e29b-41d4-a716-446655440000" \
  -H "Content-Type: application/json" \
  -d '{"tiktok_handle": "charlidamelio"}' \
  "https://www.trackagoat.com/api/v1/projects/<id>/creators"

Available endpoints

For the full machine-readable spec, download /api/v1/openapi.json.

Creators

MethodPathScopeDescription
GET/api/v1/creatorsreadList creators
POST/api/v1/projects/{id}/creatorswriteAdd creator(s); bulk up to 50
PATCH/api/v1/creators/{id}writeUpdate handle, readme, tracking settings
DELETE/api/v1/creators/{id}

Videos

MethodPathScopeDescription
GET/api/v1/videosreadList videos
POST/api/v1/projects/{id}/videoswriteAdd video(s) by URL; bulk up to 50
PATCH/api/v1/videos/{id}writeUpdate title, readme, tracking_status
DELETE/api/v1/videos/{id}

Campaigns, Projects, Goals

MethodPathScopeDescription
GET/api/v1/campaignsreadList campaigns
POST/api/v1/projects/{id}/campaignswriteCreate campaign
PATCH/api/v1/campaigns/{id}writeUpdate campaign
DELETE/api/v1/campaigns/{id}write

Organizations, Members, Invitations, API Keys

MethodPathScopeDescription
POST/api/v1/user/organizationswriteCreate organization
POST/api/v1/organizations/{id}/memberswriteAdd member
PATCH/api/v1/organizations/{id}/members/{uid}writeChange member role
DELETE/api/v1/organizations/{id}/members/{uid}

Payouts

MethodPathScopeDescription
GET/POST/api/v1/payout-structuresread/writeList / create payout structures
GET/PATCH/DELETE/api/v1/payout-structures/{id}read/writeRead / update / delete structure
GET/POST/DELETE/api/v1/payout-structures/{id}/assignmentsread/writeManage creator assignments
GET/POST/api/v1/payout-methods

Analytics

MethodPathScopeDescription
GET/api/v1/analyticsreadUnified analytics (time-series + aggregates)
GET/api/v1/schemareadMachine-readable data model

Authentication

API key setup and Bearer token usage.

Errors

Status codes, rate limits, and error handling.

write
Soft-delete creator
POST/api/v1/creators/{id}/scrapewriteTrigger manual scrape
POST/api/v1/projects/{id}/creators/bulk-reenablewriteRe-enable disabled creators
POST/api/v1/projects/{id}/creators/bulk-removewriteBulk soft-delete creators
write
Hard-delete video
POST/api/v1/videos/{id}/scrapewriteTrigger manual scrape
POST/api/v1/videos/{id}/tracking-disablewriteDisable tracking
POST/api/v1/videos/{id}/tracking-enablewriteRe-enable tracking
POST/api/v1/videos/{id}/tracking-unexemptwriteRemove exemption flag
POST/api/v1/projects/{id}/videos/bulk-tracking-disablewriteBulk disable
POST/api/v1/projects/{id}/videos/bulk-tracking-enablewriteBulk enable
Delete campaign
POST/api/v1/campaigns/{id}/itemswriteAdd item to campaign
DELETE/api/v1/campaigns/{id}/itemswriteRemove item from campaign
GET/api/v1/projectsreadList projects
POST/api/v1/organizations/{id}/projectswriteCreate project
PATCH/api/v1/organizations/{id}/projects/{pid}writeUpdate project
PATCH/api/v1/projects/{id}/inboxwriteApprove/exclude inbox videos
POST/api/v1/creators/{id}/goalswriteCreate goal
PATCH/api/v1/creators/{id}/goals/{gid}writeUpdate goal
DELETE/api/v1/creators/{id}/goals/{gid}writeDelete goal
write
Remove member
POST/api/v1/organizations/{id}/invitationswriteSend invitation
DELETE/api/v1/organizations/{id}/invitations/{iid}writeRevoke invitation
POST/api/v1/organizations/{id}/api-keyswriteCreate API key
DELETE/api/v1/organizations/{id}/api-keys/{kid}writeRevoke API key
read/write
List / create payout methods
GET/PATCH/DELETE/api/v1/payout-methods/{id}read/writeRead / update / delete method
GET/POST/api/v1/payout-paymentsread/writeList / create payments
GET/PATCH/api/v1/payout-payments/{id}read/writeRead / update payment
GET/PATCH/api/v1/payout-accruals/{id}read/writeRead / update accrual
POST/api/v1/payouts/payment-receipts/upload-urlwriteGet signed receipt upload URL

Schema

Machine-readable data model for agents.