Reference · Creative Director
POST/director/messages/quote
Price a message to the Creative Director
The most the reply’s first step holds, as the panel shows it under the box. A reply that reads a page or edits a board takes more steps, each held and settled the same way. Nothing is sent.
- Key needs
create· Make things and spend credits- Runs it
POST /director/messages- Answers
- A quote · free
Request
curl -X POST https://vessero.com/api/v1/director/messages/quote \ -H "Authorization: Bearer $VESSERO_API_KEY" \ -H "Idempotency-Key: 47f8f6f5-ea00-4fb1-925f-76aac956a0ec" \ -H "Content-Type: application/json" \ -d '{ "message": "Plan three 15 second UGC ads for our linen shirts: hooks, scripts and shots." }'
Response200 OK
{ "object": "quote", "credits": 12, "balance": 840, "lines": [ "1 image × 12 (Nano Banana Pro · 4K)" ], "notes": [], "requestId": "47f8f6f5-ea00-4fb1-925f-76aac956a0ec", "run": { "method": "POST", "path": "/api/v1/images", "confirmCredits": 12, "idempotencyKey": "47f8f6f5-ea00-4fb1-925f-76aac956a0ec" } }
Header
- Idempotency-KeystringYour id for this request: 8–64 letters, digits, - or _. A repeat within 10 minutes gets the first answer back and never runs twice. Use the same one for the quote and the run.
Body
- messagestringrequiredWhat you ask the Creative Director, as a person would type it.
- threadIdstringThe conversation to carry on; left out, a new one.
- attachmentsstring[] · up to 8Storage keys from POST /files: product pictures, a clip, a recording.
- productIdstringA product from GET /products, for the director to work from.
- boardIdstringA board to work on: its free edits reach it.
- fromstringThe studio the message is about (ugc, video, images, …).
Answers
- 200quoteThe price for exactly this body, your balance and any notes. Nothing ran.
- 400invalid_requestA field is missing or not accepted: see details.
- 403feature_unavailableThe studio this needs is switched off for the account right now.
- 429rate_limitedToo many calls this minute: see Retry-After.