Since Trackagoat 2.0, a creator is a person or brand that owns one or more platform accounts (tiktok, instagram, youtube). A creator has no handle of its own. It embeds an accounts[] array and exposes a derived top-level handle (the primary account's handle: TikTok first, else the earliest-created active account). Handle and tracking configuration live on the account. See Accounts.
GET /api/v2/creators
List creators being tracked in your organization, with their accounts embedded.
Creator-level counts are the sum across the creator's accounts. Add an Instagram account and the creator's follower total grows to include it.
Share links
share_link carries the creator's shareable page — the URL is always {site}/share/creator/{creator_id}, so you can construct it from any creator id without a lookup.
The entrance pin is omitted unless the request passes include_pin=trueand the key holds the admin scope; anything else returns 403 insufficient_scope. See Share Links for the full rules and the management endpoints.
POST /api/v2/creators
Create a creator with one or more accounts (at least one is required). Requires the write scope. Dispatches a profile + discovery scrape automatically: the scraper fans out to every account.
Arbitrary JSON for your own identifiers, so an external system can map its records back to this creator. Also settable later via PATCH, which replaces the whole object rather than merging.
accounts
array
required
Each object in accounts[]:
Field
Type
Default
Description
platform
tiktok | instagram | youtube
required
Which platform this account is on.
handle
string
required
Platform @username (1–60 chars). Leading @ is stripped.
tracking_mode
auto | selective | hashtag
auto
Responses
HTTP
Cause
201
Creator created; body is the full creator with embedded accounts[].
402
max_accounts_per_org limit reached (accounts, not creators, are counted).
403
Key lacks the write scope.
404
Project not found (or not in your org).
POST /api/v2/projects//creators
Add one creator or a batch (up to 50) to a specific project. Requires the write scope. Each creator carries an accounts[] array (min 1).
Each creator object accepts the same display_name (optional), metadata (optional) and accounts[] (1–20) fields as POST /api/v2/creators. Returns 402 if the account limit is reached and 404 if the project is not found.
Trigger a manual scrape for a creator. By default every account under the creator is scraped; pass ?account_id=<uuid> to scrape only a single account. Consumes from the org's daily manual-scrape quota. Requires the write scope.
bash
# Scrape all accountscurl -X POST \ -H "Authorization: Bearer tga_<key>" \ -H "Content-Type: application/json" \ -d '{"job_type": "discover_videos"}' \ https://www.trackagoat.com/api/v2/creators/<uuid>/scrape# Scrape a single accountcurl -X POST \ -H "Authorization: Bearer tga_<key>" \ "https://www.trackagoat.com/api/v2/creators/<uuid>/scrape?account_id=<accountUuid>"
Field
Where
Values
Description
account_id
query
uuid
Restrict the scrape to one account.
job_type
body
creator_profiles | video_stats | discover_videos
Which scrape job to dispatch.
The response echoes { job_type, creator_id, account_id, job_id } (account_id is null when scraping all accounts).
HTTP
Cause
200
Scrape dispatched.
400
Creator is inactive.
429
Daily scrape limit exceeded.
POST /api/v2/projects//creators/bulk-reenable
Re-enable creators that were automatically disabled. Requires the write scope. Subject to the 24-hour cooldown per creator.
The creator's PIN-gated public page, or null if they don't have one. See Share Links
created_at
ISO 8601
When creator was added
updated_at
ISO 8601
Last update
1–20 account objects (see below).
auto: track all videos. selective: new videos land in the inbox for review. hashtag: auto-track videos whose caption contains a tracked hashtag.
tracking_hashtags
string[]
[]
Required (non-empty) when tracking_mode is hashtag. Normalized server-side and by a database trigger: NFC + lowercase, leading # stripped, and characters that can't appear in a hashtag removed (#Black-Friday becomes blackfriday). Whitespace and commas separate tags. Max 50 tags, 100 chars each.
hashtag_inbox_non_matching
boolean
true
Hashtag mode: inbox non-matching videos (true) or exclude them (false).