Skip to main content

Account Configuration

Configure the account details for a bundle. Account configuration is required before a bundle can be published.


Configure Account

Set or update the account details for a bundle.

PUT /bundles/:id/account

Request Body

FieldTypeRequiredDescription
usernamestringYesAccount username. 1-24 characters, alphanumeric plus . and _.
visible_namestringYesDisplay name. 1-30 characters.
biographystringYesAccount biography. Max 80 characters.
profile_picture_urlstringYesURL to the profile picture image.
link_in_biostringNoLink displayed in the bio. Instagram only.
niche_warming_instructionsstringNoInstructions for niche warming behavior. Only applies when niche_warming is enabled.

Validation Rules

FieldRule
username1-24 characters. Allowed: [a-zA-Z0-9_.]
visible_name1-30 characters.
biographyMax 80 characters.
profile_picture_urlMust be a valid URL.
link_in_bioMust be a valid URL. Instagram only.

Requirements

  • Bundle must be in pending_setup or configured status.
  • You cannot modify account configuration after the bundle has been published (unpublish first).

Example

curl -X PUT https://app.tokportal.com/api/ext/bundles/bnd_abc123/account \
-H "X-API-Key: tok_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"username": "streetstyle.nyc",
"visible_name": "Street Style NYC",
"biography": "Daily street fashion from New York City.",
"profile_picture_url": "https://cdn.example.com/profiles/streetstyle.jpg",
"niche_warming_instructions": "Engage with fashion and streetwear content in NYC area."
}'

Response

{
"data": {
"id": "bnd_abc123",
"account": {
"username": "streetstyle.nyc",
"visible_name": "Street Style NYC",
"biography": "Daily street fashion from New York City.",
"profile_picture_url": "https://cdn.example.com/profiles/streetstyle.jpg",
"link_in_bio": null,
"niche_warming_instructions": "Engage with fashion and streetwear content in NYC area.",
"configured_at": "2026-02-10T10:00:00Z"
}
}
}
curl -X PUT https://app.tokportal.com/api/ext/bundles/bnd_d4e5f6/account \
-H "X-API-Key: tok_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"username": "cafe.paris_",
"visible_name": "Caf\u00e9 Paris",
"biography": "Les meilleurs caf\u00e9s parisiens.",
"profile_picture_url": "https://cdn.example.com/profiles/cafeparis.jpg",
"link_in_bio": "https://cafeparis.example.com"
}'

Response

{
"data": {
"id": "bnd_d4e5f6",
"account": {
"username": "cafe.paris_",
"visible_name": "Caf\u00e9 Paris",
"biography": "Les meilleurs caf\u00e9s parisiens.",
"profile_picture_url": "https://cdn.example.com/profiles/cafeparis.jpg",
"link_in_bio": "https://cafeparis.example.com",
"niche_warming_instructions": null,
"configured_at": "2026-02-10T10:15:00Z"
}
}
}

Get Account

Retrieve the current account configuration for a bundle.

GET /bundles/:id/account

Example

curl -X GET https://app.tokportal.com/api/ext/bundles/bnd_abc123/account \
-H "X-API-Key: tok_live_xxx"

Response

{
"data": {
"username": "streetstyle.nyc",
"visible_name": "Street Style NYC",
"biography": "Daily street fashion from New York City.",
"profile_picture_url": "https://cdn.example.com/profiles/streetstyle.jpg",
"link_in_bio": null,
"niche_warming_instructions": "Engage with fashion and streetwear content in NYC area.",
"configured_at": "2026-02-10T10:00:00Z",
"status": "configured"
}
}

Error Responses

StatusCodeDescription
400invalid_usernameUsername does not match allowed pattern [a-zA-Z0-9_.] or exceeds 24 characters.
400invalid_visible_nameVisible name is empty or exceeds 30 characters.
400biography_too_longBiography exceeds 80 characters.
400invalid_urlprofile_picture_url or link_in_bio is not a valid URL.
400link_in_bio_instagram_onlylink_in_bio is only supported on Instagram.
409invalid_statusBundle is not in pending_setup or configured status.
404bundle_not_foundBundle does not exist.