Get Started

Creators Data Structures

All data structures used in the Creators API endpoint.

View API:Creators API

Account Platform

Social media platform

Account Platform

string

Social media platform

tiktokinstagramyoutube

Account Status

Account status

Account Status

string

Account status

activeinactiveerror

Create Creator Request

Request body for creating a new creator

Create Creator Request

object

Request body for creating a new creator

namestringrequired

Creator name

Example: "John Doe"

Create Creator Response

Response from creating a creator

Create Creator Response

object

Response from creating a creator

okbooleanrequired

Whether the creator was created successfully

creatorSlugintegerrequired

The slug (numeric identifier) of the created creator

warningsstring[]

Array of warning messages if some accounts failed to be added (optional)

Example: ["@account1 (tiktok): Account not found"]

Creator

A creator with associated accounts and statistics

Creator

object

A creator with associated accounts and statistics

idstringrequired

Unique creator identifier

workspaceIdstringrequired

Workspace identifier

slugintegerrequired

Creator slug (numeric identifier)

namestringrequired

Creator name

createdAtstring (date-time)required

ISO 8601 timestamp when the creator was created

updatedAtstring (date-time)required

ISO 8601 timestamp when the creator was last updated

accountsCountinteger | nullrequired

Total number of accounts

followersTotalinteger | null

Total followers across all accounts

followingTotalinteger | null

Total following across all accounts

postsCountinteger | null

Total number of posts

minGapinteger | null

Minimum time gap between posts (in seconds)

likesinteger | null

Total likes

commentsinteger | null

Total comments

sharesinteger | null

Total shares

savesinteger | null

Total saves

viewsinteger | null

Total views

topViewsinteger | null

Top views count

costnumber | null

Total cost

cpmnumber | null

Cost per mille (cost per 1000 views)

costSummaryobject[]

Payment cost summary breakdown

profitMinnumber | null

Minimum profit estimate

profitMaxnumber | null

Maximum profit estimate

revenueMinnumber | null

Minimum revenue estimate

revenueMaxnumber | null

Maximum revenue estimate

rpmMinnumber | null

Minimum revenue per mille (revenue per 1000 views)

rpmMaxnumber | null

Maximum revenue per mille (revenue per 1000 views)

earliestPostedAtstring (date-time) | null

ISO 8601 timestamp of the earliest post

latestPostedAtstring (date-time) | null

ISO 8601 timestamp of the latest post

lastPostedAtstring (date-time) | null

ISO 8601 timestamp of the most recent post

trackingStartedAtstring (date-time) | null

ISO 8601 timestamp when tracking started

lastStatsAtstring (date-time) | null

ISO 8601 timestamp of the last stats update

engagementRatenumber | null

Engagement rate percentage

owednumber | null

Amount owed to creator

limitedDatabooleanrequired

Whether the creator has limited data available

Creator Account

A creator account on a platform

Creator Account

object

A creator account on a platform

idstringrequired

Unique account identifier

workspaceIdstringrequired

Workspace identifier

creatorIdstringrequired

Creator identifier

accountUrlstringrequired

Account URL

platformAccountPlatformrequired
usernamestringrequired

Account username

displayNamestring | null

Account display name

avatarUrlstring | null

Account avatar URL

biostring | null

Account bio

bioLinkstring | null

Account bio link

verifiedboolean

Whether the account is verified

createdAtstring (date-time)required

ISO 8601 timestamp when the account was created

updatedAtstring (date-time)required

ISO 8601 timestamp when the account was last updated

statusAccountStatusrequired
platformUserIdstring | null

Platform user ID

postsToTrackinteger

Number of posts to track

hashtagsToTrackstring[]required

Array of hashtags to track

mentionsToTrackstring[]required

Array of mentions to track

paymentRulesobject[]required

Array of payment rules for this account

accountStatsobject[]required

Array of account statistics

costSummaryobject[]

Payment cost summary

followersTotalinteger | null

Total followers

followingTotalinteger | null

Total following

postsCountinteger | null

Total number of posts

likesinteger | null

Total likes

commentsinteger | null

Total comments

sharesinteger | null

Total shares

savesinteger | null

Total saves

viewsinteger | null

Total views

topViewsinteger | null

Top views count

revenueMinnumber | null

Minimum revenue estimate

revenueMaxnumber | null

Maximum revenue estimate

rpmMinnumber | null

Minimum revenue per mille

rpmMaxnumber | null

Maximum revenue per mille

costnumber | null

Total cost

cpmnumber | null

Cost per mille

earliestPostedAtstring (date-time) | null

ISO 8601 timestamp of the earliest post

latestPostedAtstring (date-time) | null

ISO 8601 timestamp of the latest post

lastPostedAtstring (date-time) | null

ISO 8601 timestamp of the most recent post

lastStatsAtstring (date-time) | null

ISO 8601 timestamp of the last stats update

trackingStartedAtstring (date-time) | null

ISO 8601 timestamp when tracking started

engagementRatenumber | null

Engagement rate percentage

Creator Account Payment Rule Input

Payment rule input for account creation

Creator Account Payment Rule Input

object

Payment rule input for account creation

rulePaymentRulerequired
amountUsdnumber | null

Fixed amount in USD (for flat rate rules)

percentnumber | null

Percentage (for revenue share rules)

minViewsinteger | null

Minimum views threshold

maxViewsinteger | null

Maximum views threshold

Delete Creator Response

Response from deleting a creator

Delete Creator Response

object

Response from deleting a creator

okbooleanrequired

Whether the creator was deleted successfully

New Creator Account Payload

Account payload for creating a new creator account

New Creator Account Payload

object

Account payload for creating a new creator account

platformAccountPlatformrequired
usernamestringrequired

Account username (with @ prefix recommended)

Example: "@johndoe"

accountUrlstringrequired

Full URL to the account profile

Example: "https://tiktok.com/@johndoe"

hashtagsToTrackstring[]

Array of hashtags to track (optional)

Example: ["fitness","workout"]

mentionsToTrackstring[]

Array of mentions to track (optional)

Example: []

accountStatusAccountStatus

Account status (optional, defaults to active)

postsToTrack"10" | "20" | "40" | "60" | "80" | "100"

Number of posts to track for this account. Must be one of: 10, 20, 40, 60, 80, 100. Maximum is 100. (optional, defaults to 20)

Paginated Creators

Paginated creators response

Paginated Creators

object

Paginated creators response

pageintegerrequired

Current page number (1-indexed)

limitintegerrequired

Number of items per page

totalintegerrequired

Total number of items across all pages

totalPagesintegerrequired

Total number of pages

hasNextbooleanrequired

Whether there is a next page

hasPrevbooleanrequired

Whether there is a previous page

Payment Rule

Payment rule type

Payment Rule

string

Payment rule type

per_post_flatcpmmonthly_flatpost_bonus_viewsrevenue_share

Update Creator Request

Request body for updating an existing creator

Update Creator Request

object

Request body for updating an existing creator

idstring (uuid)required

Creator ID (UUID) to update

Example: "550e8400-e29b-41d4-a716-446655440000"

namestringrequired

Creator name

Example: "John Doe Updated"

Update Creator Response

Response from updating a creator

Update Creator Response

object

Response from updating a creator

okbooleanrequired

Whether the creator was updated successfully

creatorSluginteger

The slug (numeric identifier) of the updated creator (if returned)

Example: 123

warningsstring[]

Array of warning messages if some account updates failed (optional)

Example: ["@account1 (tiktok): Account not found"]

type AccountPlatform = "tiktok" | "instagram" | "youtube";

type AccountStatus = "active" | "inactive" | "error";

interface CreateCreatorRequest {
  /** Creator name */
  name: string;
  /** Array of accounts to associate with this creator */
  accounts: NewCreatorAccountPayload[];
}

interface CreateCreatorResponse {
  /** Whether the creator was created successfully */
  ok: boolean;
  /** The slug (numeric identifier) of the created creator */
  creatorSlug: number;
  /** Array of warning messages if some accounts failed to be added (optional) */
  warnings?: string[];
}

interface Creator {
  /** Unique creator identifier */
  id: string;
  /** Workspace identifier */
  workspaceId: string;
  /** Creator slug (numeric identifier) */
  slug: number;
  /** Creator name */
  name: string;
  /** ISO 8601 timestamp when the creator was created */
  createdAt: string;
  /** ISO 8601 timestamp when the creator was last updated */
  updatedAt: string;
  /** Array of creator accounts */
  accounts: CreatorAccount[];
  /** Total number of accounts */
  accountsCount: number;
  /** Total followers across all accounts */
  followersTotal?: number;
  /** Total following across all accounts */
  followingTotal?: number;
  /** Total number of posts */
  postsCount?: number;
  /** Minimum time gap between posts (in seconds) */
  minGap?: number;
  /** Total likes */
  likes?: number;
  /** Total comments */
  comments?: number;
  /** Total shares */
  shares?: number;
  /** Total saves */
  saves?: number;
  /** Total views */
  views?: number;
  /** Top views count */
  topViews?: number;
  /** Total cost */
  cost?: number;
  /** Cost per mille (cost per 1000 views) */
  cpm?: number;
  /** Payment cost summary breakdown */
  costSummary?: object[];
  /** Minimum profit estimate */
  profitMin?: number;
  /** Maximum profit estimate */
  profitMax?: number;
  /** Minimum revenue estimate */
  revenueMin?: number;
  /** Maximum revenue estimate */
  revenueMax?: number;
  /** Minimum revenue per mille (revenue per 1000 views) */
  rpmMin?: number;
  /** Maximum revenue per mille (revenue per 1000 views) */
  rpmMax?: number;
  /** ISO 8601 timestamp of the earliest post */
  earliestPostedAt?: string;
  /** ISO 8601 timestamp of the latest post */
  latestPostedAt?: string;
  /** ISO 8601 timestamp of the most recent post */
  lastPostedAt?: string;
  /** ISO 8601 timestamp when tracking started */
  trackingStartedAt?: string;
  /** ISO 8601 timestamp of the last stats update */
  lastStatsAt?: string;
  /** Engagement rate percentage */
  engagementRate?: number;
  /** Amount owed to creator */
  owed?: number;
  /** Whether the creator has limited data available */
  limitedData: boolean;
}

interface CreatorAccount {
  /** Unique account identifier */
  id: string;
  /** Workspace identifier */
  workspaceId: string;
  /** Creator identifier */
  creatorId: string;
  /** Account URL */
  accountUrl: string;
  platform: AccountPlatform;
  /** Account username */
  username: string;
  /** Account display name */
  displayName?: string;
  /** Account avatar URL */
  avatarUrl?: string;
  /** Account bio */
  bio?: string;
  /** Account bio link */
  bioLink?: string;
  /** Whether the account is verified */
  verified?: boolean;
  /** ISO 8601 timestamp when the account was created */
  createdAt: string;
  /** ISO 8601 timestamp when the account was last updated */
  updatedAt: string;
  status: AccountStatus;
  /** Platform user ID */
  platformUserId?: string;
  /** Number of posts to track */
  postsToTrack?: number;
  /** Array of hashtags to track */
  hashtagsToTrack: string[];
  /** Array of mentions to track */
  mentionsToTrack: string[];
  /** Array of payment rules for this account */
  paymentRules: object[];
  /** Array of account statistics */
  accountStats: object[];
  /** Payment cost summary */
  costSummary?: object[];
  /** Total followers */
  followersTotal?: number;
  /** Total following */
  followingTotal?: number;
  /** Total number of posts */
  postsCount?: number;
  /** Total likes */
  likes?: number;
  /** Total comments */
  comments?: number;
  /** Total shares */
  shares?: number;
  /** Total saves */
  saves?: number;
  /** Total views */
  views?: number;
  /** Top views count */
  topViews?: number;
  /** Minimum revenue estimate */
  revenueMin?: number;
  /** Maximum revenue estimate */
  revenueMax?: number;
  /** Minimum revenue per mille */
  rpmMin?: number;
  /** Maximum revenue per mille */
  rpmMax?: number;
  /** Total cost */
  cost?: number;
  /** Cost per mille */
  cpm?: number;
  /** ISO 8601 timestamp of the earliest post */
  earliestPostedAt?: string;
  /** ISO 8601 timestamp of the latest post */
  latestPostedAt?: string;
  /** ISO 8601 timestamp of the most recent post */
  lastPostedAt?: string;
  /** ISO 8601 timestamp of the last stats update */
  lastStatsAt?: string;
  /** ISO 8601 timestamp when tracking started */
  trackingStartedAt?: string;
  /** Engagement rate percentage */
  engagementRate?: number;
}

interface CreatorAccountPaymentRuleInput {
  rule: PaymentRule;
  /** Fixed amount in USD (for flat rate rules) */
  amountUsd?: number;
  /** Percentage (for revenue share rules) */
  percent?: number;
  /** Minimum views threshold */
  minViews?: number;
  /** Maximum views threshold */
  maxViews?: number;
}

interface DeleteCreatorResponse {
  /** Whether the creator was deleted successfully */
  ok: boolean;
}

interface NewCreatorAccountPayload {
  platform: AccountPlatform;
  /** Account username (with @ prefix recommended) */
  username: string;
  /** Full URL to the account profile */
  accountUrl: string;
  /** Array of hashtags to track (optional) */
  hashtagsToTrack?: string[];
  /** Array of mentions to track (optional) */
  mentionsToTrack?: string[];
  /** Payment rules for this account (optional) */
  paymentRules?: CreatorAccountPaymentRuleInput[];
  /** Account status (optional, defaults to active) */
  accountStatus?: AccountStatus;
  /** Number of posts to track for this account. Must be one of: 10, 20, 40, 60, 80, 100. Maximum is 100. (optional, defaults to 20) */
  postsToTrack?: "10" | "20" | "40" | "60" | "80" | "100";
}

interface PaginatedCreators {
  /** Array of creators */
  items: Creator[];
  /** Current page number (1-indexed) */
  page: number;
  /** Number of items per page */
  limit: number;
  /** Total number of items across all pages */
  total: number;
  /** Total number of pages */
  totalPages: number;
  /** Whether there is a next page */
  hasNext: boolean;
  /** Whether there is a previous page */
  hasPrev: boolean;
}

type PaymentRule = "per_post_flat" | "cpm" | "monthly_flat" | "post_bonus_views" | "revenue_share";

interface UpdateCreatorRequest {
  /** Creator ID (UUID) to update */
  id: string;
  /** Creator name */
  name: string;
  /** Array of accounts to associate with this creator */
  accounts: NewCreatorAccountPayload[];
}

interface UpdateCreatorResponse {
  /** Whether the creator was updated successfully */
  ok: boolean;
  /** The slug (numeric identifier) of the updated creator (if returned) */
  creatorSlug?: number;
  /** Array of warning messages if some account updates failed (optional) */
  warnings?: string[];
}