---
title: "Get creator details by ID"
method: GET
path: "/creators/{id}"
tags: ["Creators"]
---

# Get creator details by ID

`GET /creators/{id}`

## Request

- Base URL: `https://viral.app/api/v1`
- URL: `https://viral.app/api/v1/creators/{id}`
- Auth: API key in header `x-api-key`

Retrieves detailed information about a specific creator including comprehensive user data, invitation status, associated tracked social media accounts, and profile information. Returns null if the creator is not found or doesn't belong to your organization. This endpoint provides all necessary data for viewing creator profiles and managing creator-account associations.

## Path parameters

- `id` string, required: Organization creator ID with orgcre_ prefix

## Response `200`

OK

- object, nullable: Creator details with user information, accounts, and invitation status. Returns null if creator not found or doesn't belong to organization.
  - `id` string, required
  - `creatorUserId` string, required
  - `notes` string, nullable, required
  - `sourceApplicationId` string, nullable, required
  - `sourceJobId` string, nullable, required
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required
  - `deletedAt` string, date-time, nullable, required
  - `actorType` 'user' | 'system' | 'api_token', required
  - `userId` string, required
  - `orgId` string, required
  - `user` object, required
    - `id` string, required
    - `name` string, required
    - `email` string, required
    - `emailVerified` boolean, required
    - `image` string, nullable, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `role` string, nullable, required
    - `banned` boolean, nullable, required
    - `banReason` string, nullable, required
    - `banExpires` string, date-time, nullable, required
    - `firstName` string, required
    - `lastName` string, required
    - `creatorContactProfileId` string, nullable, required
    - `creatorDiscoveryProfileId` string, nullable, required
    - `affiliateDashboardFirstOpenedAt` string, date-time, nullable, required
    - `isCreator` boolean, required
  - `createdByUser` object, nullable
    - `id` string, required
    - `name` string, required
    - `email` string, required
    - `emailVerified` boolean, required
    - `image` string, nullable, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `role` string, nullable, required
    - `banned` boolean, nullable, required
    - `banReason` string, nullable, required
    - `banExpires` string, date-time, nullable, required
    - `firstName` string, required
    - `lastName` string, required
    - `creatorContactProfileId` string, nullable, required
    - `creatorDiscoveryProfileId` string, nullable, required
    - `affiliateDashboardFirstOpenedAt` string, date-time, nullable, required
    - `isCreator` boolean, required
  - `creatorProfile` object, nullable
    - `id` string, required
    - `address` string, nullable, required
    - `city` string, nullable, required
    - `postalCode` string, nullable, required
    - `countryCode` string, nullable, required
    - `phoneNumber` string, nullable, required
    - `dateOfBirth` string, nullable, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
  - `member` object, nullable
    - `id` string, required
  - `invitation` object, nullable
    - `id` string, required
    - `expiresAt` string, date-time, required
    - `status` 'pending' | 'accepted' | 'rejected' | 'canceled', required
  - `status` 'not invited' | 'invitation sent' | 'invitation rejected' | 'joined', required
  - `creatorStatus` 'active' | 'archived', required
  - `isMarketplaceCreator` boolean
  - `accounts` object[], required
    - `id` string, required
    - `platform` 'facebook' | 'instagram' | 'tiktok' | 'youtube' | 'snapchat', required
    - `platformAccountId` string, required
    - `isCompetitor` boolean
    - `username` string, nullable, required
    - `displayName` string, nullable
    - `analyticsDataRefreshedAt` string, nullable
  - `tags` object[]
    - `id` string, required
    - `name` string, required
    - `description` string, nullable, required
    - `scope` 'system' | 'org' | 'project', required: Tag scope
    - `color` string, nullable, required: Tag color in hex format
    - `kind` string, nullable, required
    - `refId` string, nullable, required
    - `logo` string, nullable, required
  - `accountTags` object[]
    - `id` string, required
    - `name` string, required
    - `description` string, nullable, required
    - `scope` 'system' | 'org' | 'project', required: Tag scope
    - `color` string, nullable, required: Tag color in hex format
    - `kind` string, nullable, required
    - `refId` string, nullable, required
    - `logo` string, nullable, required
    - `accountCount` integer, required
  - `activeCampaign` object, nullable
    - `value` string, required
    - `label` string, required
  - `activeCampaignEndsAt` string, nullable
  - `campaignDisplay` object, nullable
    - `assignmentId` string
    - `id` string, required
    - `name` string, required
    - `status` 'upcoming' | 'active' | 'closing' | 'ended', required: Campaign lifecycle status derived from validity window. upcoming: validFrom in the future; active: started with no end date; closing: started and has an end date in the present/future; ended: end date is in the past.
    - `currency` 'USD' | 'EUR' | 'CHF' | 'GBP' | 'CNY' | 'JPY' | 'KRW' | 'THB' | 'IDR' | 'VND' | 'RUB', nullable
    - `startDate` string, nullable, required
    - `endDate` string, nullable, required
    - `validFrom` string, nullable
    - `validUntil` string, nullable
    - `assignmentValidFrom` string, nullable
    - `assignmentValidUntil` string, nullable
    - `interval` 'day' | 'week' | 'month'
    - `intervalCount` integer
    - `billingAnchor` 'rolling' | 'fixed'
    - `timeZone` string: IANA time zone the campaign's periods and dates follow (a period ends at midnight in this zone). Views are still counted per UTC day.
    - `description` string, nullable
    - `customRates` boolean
  - `campaignProrationApplied` boolean, nullable
  - `upcomingCampaign` object, nullable
    - `assignmentId` string, required
    - `id` string, required
    - `name` string, required
    - `startDate` string, nullable, required
  - `hasPreviousCampaignAssignments` boolean
  - `warnings` union[]
    - union
      - object
        - `type` 'account_sync_error', required
        - `accounts` object[], required
          - `id` string, required: Organization account ID with orgacc_ prefix. Not the same as platform account ID.
          - `platform` 'facebook' | 'instagram' | 'tiktok' | 'youtube' | 'snapchat', required: Social media platform (facebook, instagram, tiktok, youtube, snapchat)
          - `platformAccountId` string, required: Native platform account id
          - `username` string, nullable, required
          - `maxVideos` integer, required
          - `errorCode` 'NOT_FOUND' | 'INVALID_DATA' | 'PRIVATE_CONTENT' | 'RESTRICTED' | 'UNSUPPORTED_CONTENT' | 'APPLE_REQUIRED_AGREEMENT' | 'APPLE_INVALID_VENDOR' | 'APPLE_INVALID_CREDENTIALS', required
          - `errorLastSeenAt` string, nullable, required
      - object
        - `type` 'no_account', required
      - object
        - `type` 'individual_tracking_only', required
        - `accounts` object[], required
          - `id` string, required: Organization account ID with orgacc_ prefix. Not the same as platform account ID.
          - `platform` 'facebook' | 'instagram' | 'tiktok' | 'youtube' | 'snapchat', required: Social media platform (facebook, instagram, tiktok, youtube, snapchat)
          - `platformAccountId` string, required: Native platform account id
          - `username` string, nullable, required
          - `maxVideos` integer, required
          - `individualVideoCount` integer, required
      - object
        - `type` 'tracking_paused', required
        - `accounts` object[], required
          - `id` string, required: Organization account ID with orgacc_ prefix. Not the same as platform account ID.
          - `platform` 'facebook' | 'instagram' | 'tiktok' | 'youtube' | 'snapchat', required: Social media platform (facebook, instagram, tiktok, youtube, snapchat)
          - `platformAccountId` string, required: Native platform account id
          - `username` string, nullable, required
          - `maxVideos` integer, required
          - `individualVideoCount` integer, required
  - `campaignHistory` object[], required
    - `id` string, required
    - `validFrom` string, required
    - `validUntil` string, nullable, required
    - `status` 'previous' | 'active' | 'upcoming', required
    - `campaign` object, required
      - `id` string, required
      - `name` string, required
      - `status` 'upcoming' | 'active' | 'closing' | 'ended', required: Campaign lifecycle status derived from validity window. upcoming: validFrom in the future; active: started with no end date; closing: started and has an end date in the present/future; ended: end date is in the past.
      - `currency` 'USD' | 'EUR' | 'CHF' | 'GBP' | 'CNY' | 'JPY' | 'KRW' | 'THB' | 'IDR' | 'VND' | 'RUB', nullable
      - `validFrom` string, nullable
      - `validUntil` string, nullable
      - `interval` 'day' | 'week' | 'month'
      - `intervalCount` integer
      - `billingAnchor` 'rolling' | 'fixed'
      - `timeZone` string: IANA time zone the campaign's periods and dates follow (a period ends at midnight in this zone). Views are still counted per UTC day.
      - `description` string, nullable

## Other responses

- `400`: 400
- `401`: 401
- `402`: 402
- `404`: 404
- `408`: 408
- `429`: 429
- `500`: 500

---

[API](https://skmtc.dev/viral/apis/viral-app-api.md) · [All operations](https://skmtc.dev/viral/apis/viral-app-api/llms.txt) · [OpenAPI document](https://skmtc.dev/viral/apis/viral-app-api/revisions/31e97fa79ef1?raw)
