Skip to main content
POST
/
agencies
/
{uuid}
Update
curl --request POST \
  --url https://studio-api.onlytraffic.com/api/external/v1/agencies/{uuid} \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "name": "Bright Studio",
  "slug": "bright-studio",
  "code": "BST",
  "description": "<string>",
  "website": "<string>",
  "tg_contact": "<string>",
  "email": "jsmith@example.com",
  "email_published": true,
  "model_commission": 50,
  "model_commission_max": 50,
  "model_commission_custom": "<string>",
  "model_requirements": "<string>",
  "platforms": [],
  "offered_services": [],
  "founded": "2023-12-25",
  "topagencies_publish": true
}
'
{
  "success": true,
  "data": {
    "uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
  }
}

Documentation Index

Fetch the complete documentation index at: https://onlytraffic.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

X-API-Key
string
header
required

Your API key from the Studio Dashboard

Path Parameters

uuid
string<uuid>
required

Agency UUID. Use the uuid value from the agency response.

Body

application/json

Editable fields for create/update. Image fields (avatar/header) live on dedicated upload endpoints (POST /agencies/{uuid}/avatar, POST /agencies/{uuid}/header).

name
string

Required on create. Immutable afterwards: passed name is silently ignored on update.

Required string length: 2 - 55
Example:

"Bright Studio"

slug
string

URL-friendly identifier, lowercase letters / digits / hyphens. Required on create, immutable afterwards (silently ignored on update).

Required string length: 3 - 35
Pattern: ^[a-z0-9-]+$
Example:

"bright-studio"

code
string

Agency code: 3 to 6 uppercase letters. Required on create, immutable afterwards (silently ignored on update).

Required string length: 3 - 6
Pattern: ^[A-Z]+$
Example:

"BST"

description
string | null
Maximum string length: 500
website
string<uri> | null
Maximum string length: 255
tg_contact
string | null
Maximum string length: 64
email
string<email> | null
email_published
boolean
models_count_size
enum<string>
Available options:
not_specified,
0_10,
10_50,
50_100,
100_plus
countries

worldwide (string), an empty array [] (collapses to worldwide), or an array of ISO 3166-1 alpha-2 country codes.

Available options:
worldwide
model_commission
number
Required range: 0 <= x <= 100
model_commission_max
number
Required range: 0 <= x <= 100
model_commission_custom
string
Maximum string length: 120
model_requirements
string
Maximum string length: 2000
platforms
enum<string>[]
Maximum array length: 10
Available options:
onlyfans,
fansly
offered_services
enum<string>[]
Maximum array length: 30
Available options:
growth_marketing,
chatting_management,
social_media_management,
content_support,
branding_pr,
dmca_protection,
legal_support,
coaching_consulting
founded
string<date>
service_model
enum<string> | null
Available options:
not_specified,
full_service,
boutique,
specialized,
coaching
topagencies_publish
boolean

Response

Changes are staged in the moderation queue. The agency row only flips to the new state once an admin approves the pending review; until then, list endpoints continue to return the prior values. Returns status: "moderation" while the change is pending.

success
boolean
Example:

true

data
object