Creators Data Structures
All data structures used in the Creators API endpoint.
Account Platform
Social media platform
Account Platform
stringSocial media platform
Account Status
Account status
Account Status
stringAccount status
Create Creator Request
Request body for creating a new creator
Create Creator Request
objectRequest body for creating a new creator
namestringrequiredCreator name
Example: "John Doe"
Create Creator Response
Response from creating a creator
Create Creator Response
objectResponse from creating a creator
okbooleanrequiredWhether the creator was created successfully
creatorSlugintegerrequiredThe 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
objectA creator with associated accounts and statistics
idstringrequiredUnique creator identifier
workspaceIdstringrequiredWorkspace identifier
slugintegerrequiredCreator slug (numeric identifier)
namestringrequiredCreator name
createdAtstring (date-time)requiredISO 8601 timestamp when the creator was created
updatedAtstring (date-time)requiredISO 8601 timestamp when the creator was last updated
accountsCountinteger | nullrequiredTotal number of accounts
followersTotalinteger | nullTotal followers across all accounts
followingTotalinteger | nullTotal following across all accounts
postsCountinteger | nullTotal number of posts
minGapinteger | nullMinimum time gap between posts (in seconds)
likesinteger | nullTotal likes
commentsinteger | nullTotal comments
sharesinteger | nullTotal shares
savesinteger | nullTotal saves
viewsinteger | nullTotal views
topViewsinteger | nullTop views count
costnumber | nullTotal cost
cpmnumber | nullCost per mille (cost per 1000 views)
costSummaryobject[]Payment cost summary breakdown
profitMinnumber | nullMinimum profit estimate
profitMaxnumber | nullMaximum profit estimate
revenueMinnumber | nullMinimum revenue estimate
revenueMaxnumber | nullMaximum revenue estimate
rpmMinnumber | nullMinimum revenue per mille (revenue per 1000 views)
rpmMaxnumber | nullMaximum revenue per mille (revenue per 1000 views)
earliestPostedAtstring (date-time) | nullISO 8601 timestamp of the earliest post
latestPostedAtstring (date-time) | nullISO 8601 timestamp of the latest post
lastPostedAtstring (date-time) | nullISO 8601 timestamp of the most recent post
trackingStartedAtstring (date-time) | nullISO 8601 timestamp when tracking started
lastStatsAtstring (date-time) | nullISO 8601 timestamp of the last stats update
engagementRatenumber | nullEngagement rate percentage
owednumber | nullAmount owed to creator
limitedDatabooleanrequiredWhether the creator has limited data available
Creator Account
A creator account on a platform
Creator Account
objectA creator account on a platform
idstringrequiredUnique account identifier
workspaceIdstringrequiredWorkspace identifier
creatorIdstringrequiredCreator identifier
accountUrlstringrequiredAccount URL
platformAccountPlatformrequiredusernamestringrequiredAccount username
displayNamestring | nullAccount display name
avatarUrlstring | nullAccount avatar URL
biostring | nullAccount bio
bioLinkstring | nullAccount bio link
verifiedbooleanWhether the account is verified
createdAtstring (date-time)requiredISO 8601 timestamp when the account was created
updatedAtstring (date-time)requiredISO 8601 timestamp when the account was last updated
statusAccountStatusrequiredplatformUserIdstring | nullPlatform user ID
postsToTrackintegerNumber of posts to track
hashtagsToTrackstring[]requiredArray of hashtags to track
mentionsToTrackstring[]requiredArray of mentions to track
paymentRulesobject[]requiredArray of payment rules for this account
accountStatsobject[]requiredArray of account statistics
costSummaryobject[]Payment cost summary
followersTotalinteger | nullTotal followers
followingTotalinteger | nullTotal following
postsCountinteger | nullTotal number of posts
likesinteger | nullTotal likes
commentsinteger | nullTotal comments
sharesinteger | nullTotal shares
savesinteger | nullTotal saves
viewsinteger | nullTotal views
topViewsinteger | nullTop views count
revenueMinnumber | nullMinimum revenue estimate
revenueMaxnumber | nullMaximum revenue estimate
rpmMinnumber | nullMinimum revenue per mille
rpmMaxnumber | nullMaximum revenue per mille
costnumber | nullTotal cost
cpmnumber | nullCost per mille
earliestPostedAtstring (date-time) | nullISO 8601 timestamp of the earliest post
latestPostedAtstring (date-time) | nullISO 8601 timestamp of the latest post
lastPostedAtstring (date-time) | nullISO 8601 timestamp of the most recent post
lastStatsAtstring (date-time) | nullISO 8601 timestamp of the last stats update
trackingStartedAtstring (date-time) | nullISO 8601 timestamp when tracking started
engagementRatenumber | nullEngagement rate percentage
Creator Account Payment Rule Input
Payment rule input for account creation
Creator Account Payment Rule Input
objectPayment rule input for account creation
rulePaymentRulerequiredamountUsdnumber | nullFixed amount in USD (for flat rate rules)
percentnumber | nullPercentage (for revenue share rules)
minViewsinteger | nullMinimum views threshold
maxViewsinteger | nullMaximum views threshold
Delete Creator Response
Response from deleting a creator
Delete Creator Response
objectResponse from deleting a creator
okbooleanrequiredWhether the creator was deleted successfully
New Creator Account Payload
Account payload for creating a new creator account
New Creator Account Payload
objectAccount payload for creating a new creator account
platformAccountPlatformrequiredusernamestringrequiredAccount username (with @ prefix recommended)
Example: "@johndoe"
accountUrlstringrequiredFull 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: []
accountStatusAccountStatusAccount 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
objectPaginated creators response
pageintegerrequiredCurrent page number (1-indexed)
limitintegerrequiredNumber of items per page
totalintegerrequiredTotal number of items across all pages
totalPagesintegerrequiredTotal number of pages
hasNextbooleanrequiredWhether there is a next page
hasPrevbooleanrequiredWhether there is a previous page
Payment Rule
Payment rule type
Payment Rule
stringPayment rule type
Update Creator Request
Request body for updating an existing creator
Update Creator Request
objectRequest body for updating an existing creator
idstring (uuid)requiredCreator ID (UUID) to update
Example: "550e8400-e29b-41d4-a716-446655440000"
namestringrequiredCreator name
Example: "John Doe Updated"
Update Creator Response
Response from updating a creator
Update Creator Response
objectResponse from updating a creator
okbooleanrequiredWhether the creator was updated successfully
creatorSlugintegerThe 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[];
}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[];
}