Get one creator you can act for
API reference

Get one creator you can act for

One account from [GET /creators](/developers/reference/list-creators): its relationship to you, your permissions on it and whether creator-scoped calls work for it right now.

View as MarkdownUpdated Nov 1, 2026
GET/api/external/v1/creators/{id}also served at /api/external/creators/{id}New

One account from GET /creators: its relationship to you, your permissions on it and whether creator-scoped calls work for it right now.

Authentication

Send the creator's API key as a bearer token: Authorization: Bearer dpfn_…. See Authentication & API keys.

Path parameters

NameTypeRequiredDescription
idstringRequiredThe account id.

Responses

200The account.
NameTypeDescription
idstringAccount id — the {creatorId} of /api/external/v1/creators/{creatorId}/….
usernamestring | nullPublic @handle, without the @.
namestring | nullDisplay name.
imagestring | nullProfile image URL.
Format: uri
relationshipstringmanaged = a creator who accepted your agency; ai_persona = a persona your agency runs; onboarded = an account your app created with POST /accounts.
One of: managed, ai_persona, onboarded
activebooleanWhether creator-scoped calls are accepted right now. False when the account is suspended, banned or deleted — or, for onboarded, when it no longer holds a key bound to your app (the creator revoked your access).
permissionsAgencyPermissionsWhat you may do on the account. onboarded accounts get everything except co-performers.
Show child attributes
canEditProfilebooleanProfile, timezone, subscription tier and Telegram notification settings.
canManageDropsbooleanDrops, orders and posts.
canManageVaultbooleanVault media, folders, tags and video uploads.
canViewStatsbooleanEarnings, tips, balance and subscription reads.
canManageCoPerformersbooleanCo-performer management (dashboard only — no API endpoint uses it yet).
creatorPathstringPrefix for creator-scoped calls, e.g. ${creatorPath}/drops.
profileUrlstring | nullPublic profile URL, null until the account has a username.
Format: uri
sincestring | nullWhen the management was accepted, or when your app created the account.
Format: date-time
Example response
{
  "id": "cmh4v2q8k0003xy9z7w6v5u4t",
  "username": "valeria",
  "name": "Valeria",
  "image": null,
  "relationship": "ai_persona",
  "active": true,
  "permissions": {
    "canEditProfile": true,
    "canManageDrops": true,
    "canManageVault": true,
    "canViewStats": true,
    "canManageCoPerformers": true
  },
  "creatorPath": "/api/external/v1/creators/cmh4v2q8k0003xy9z7w6v5u4t",
  "profileUrl": "https://www.dropfans.io/u/valeria",
  "since": "2026-10-20T09:00:00.000Z"
}

Errors

StatusBodyWhen
401{"error":"Unauthorized","code":"unauthorized"}Missing or invalid API key.
403{"error":"This endpoint needs a verified agency's own key or your app owner's own key.","code":"roster_key_required"}Neither a verified agency’s own key nor the key of your app’s owner — e.g. a creator’s key, or a key an agency minted for one of its creators.
400{"error":"This endpoint only acts as the key’s own account — send it without X-Dropfans-Account.","code":"account_header_not_allowed"}The request carried `X-Dropfans-Account`.
404{"error":"Creator not found","code":"creator_not_found"}Not on your roster — the same answer for an id that does not exist.

Rate limiting

Every response carries the X-RateLimit-Tier header and, on limited tiers, the per-minute and per-day trios — read X-RateLimit-Remaining and X-RateLimit-Reset instead of hardcoding limits. Details in Rate limits.

Code samples

curl "https://www.dropfans.io/api/external/v1/creators/$ID" \
  -H "Authorization: Bearer $DROPFANS_API_KEY"

Questions? [email protected]