> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trynito.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Response format

> The JSON envelopes, the object discriminator, and the no-store rule.

Responses are `application/json; charset=utf-8`. Each is an envelope whose `object` field names its shape.

| `object` | Returned by |
| - | - |
| `chat.completion` | Chat completions (non-streaming) |
| `chat.completion.chunk` | Streaming chat completion chunks |
| `fusion.completion` | Fusion synthesis |
| `list` | Model lists and other collections |
| `attestation` | The attestation endpoint |

A non-streaming chat response carries `id`, `object: "chat.completion"`, `created` (unix seconds), `model`, a one-element `choices[]`, and `usage`. List responses carry `data[]`. Field-by-field schemas are on each endpoint page.

Inference responses set `Cache-Control: no-store`; do not cache generated output on the client either.

With `stream: true`, chat returns a Server-Sent Events stream of `chat.completion.chunk` objects ending in `[DONE]`. See [Server-Sent Events](/api/api-reference/streaming-format/server-sent-events). Errors use a separate `{"error": {...}}` envelope. See [Error format](/api/api-reference/overview/error-format).

## Related

* [Error format](/api/api-reference/overview/error-format)
* [Request format](/api/api-reference/overview/request-format)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.