Create a chat completion
OpenAI-compatible chat completions endpoint. The model is a Dynamiq router model slug; the gateway resolves it to the configured upstream provider and relays the request. Set stream: true to receive Server-Sent Events of chat.completion.chunk objects. Unknown request fields are passed through to the upstream provider.
Authorization
accessKey Organization or project Access Key created in the Dynamiq console. Valid only on synapse-served hosts: deployed app hostnames, knowledge base hostnames, the AI Gateway (router.*), and the traces collector (collector.*). Prefix dynamiq_acc_. NOT accepted by the management API (api.*). Send as Authorization: Bearer <access-key>.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
OpenAI-compatible chat completion request. Additional provider-specific fields are passed through to the upstream provider.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/v1/chat/completions" \ -H "Content-Type: application/json" \ -d '{ "model": "gpt-4o-mini", "messages": [ { "role": "system", "content": "You are a support-triage assistant. Classify tickets." }, { "role": "user", "content": "Customer says they were charged twice for the June invoice." } ], "temperature": 0.2, "max_tokens": 256 }'{
"id": "chatcmpl-9x1YzAbC",
"object": "chat.completion",
"created": 1781430921,
"model": "gpt-4o-mini",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "{\"category\":\"billing\",\"priority\":\"high\"}"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 64,
"completion_tokens": 18,
"total_tokens": 82
}
}{
"error": {
"code": "bad_request",
"message": "Bad Request",
"details": {
"input": "cannot be blank"
}
}
}{
"error": {
"code": "unauthorized",
"message": "Unauthorized"
}
}{
"error": {
"code": "bad_request",
"message": "Failed to parse data",
"details": {
"error": "1 validation error for LLMRequest"
}
}
}Update a dataset item
Replaces a dataset item's `data`. The new data must satisfy the schema of the item's dataset version.
Parse a document with OCR
Extracts the text of a PDF or image as Markdown using an LLM-based OCR pipeline. The `options` form field is a JSON string selecting the LLM. With `"stream": true` the response is an SSE stream of extraction events instead of JSON.