Zoe
Ask Zoe music-business questions from your own software. /zoe/v1 speaks OpenAI's chat-completions protocol, so the official OpenAI SDK works unchanged.
/zoe/v1/chat/completions- Price: 5 credits per answer
- Request: application/json
- Response: JSON, or an SSE stream
OpenAI compatibility
Set base_url to your base URL plus /zoe/v1, your key as the API key, and model to zoe. Plain and streaming (stream: true, ending in data: [DONE]) responses both use OpenAI's shapes, and GET /zoe/v1/models lists the one model for SDKs that probe it.
Request and response
Zoe on the API is stateless: she keeps no memory between calls and has no access to documents stored in Remediio, so send the whole context (earlier turns, a contract's text) in messages, exactly as you would with OpenAI. Other OpenAI fields are ignored rather than rejected, so a stock client never fails on them.
modelstring: "zoe" (the default if omitted). Anything else is a 404 model_not_found.messagesarray required: Roles system, developer, user and assistant; content as a string or text parts. Up to 100 messages and 100,000 characters in total. Apart from system messages, the first and last must be from the user.streamboolean: Default false, which returns one chat.completion; true streams chat.completion.chunk frames, then data: [DONE].temperaturenumber: 0–2, passed through.max_tokensinteger: 1–4,000; also the default.
choices OpenAI's shape: the answer is choices[0].message.content.
billing What this answer cost. On a stream it rides on the final finish_reason: "stop" frame, before data: [DONE].
creditsinteger: Credits charged for this answer. No token counts are returned.request_idstring: Quote it to support.
What Zoe answers
Music-business questions (deals, royalties, rights, publishing, management), answered from general knowledge and from anything you include in the conversation. She politely declines unrelated topics. Every delivered answer is billed; a failed one (502 zoe_failed, or an error frame before [DONE] on a stream) is not.