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

# ExtractionsRequest

## Example Usage

```typescript theme={null}
import { ExtractionsRequest } from "@openrouter/sdk/models";

let value: ExtractionsRequest = {
  fields: {},
  model: "Camaro",
  state: "Arizona",
};
```

## Fields

| Field | Type | Required | Description | Example |
| - | - | - | - | - |
| `assets` | Record\<string, [models.DecisionsImageAsset](../models/decisionsimageasset.mdx)> | ➖ | Images keyed by reference string, as in TypeSafe's API. Write a reference wherever the image belongs in `state`, `instructions`, or `criteria`; every asset must be referenced at least once. Jev reads a reference as a whole string value or inside longer text. Other Decisions models read a whole-string reference wherever they read an `image_url` part and reject a reference inside longer text. | |
| `fields` | Record\<string, *models.Fields*> | ✔️ | Map of field name to typed field spec. | |
| `model` | *string* | ✔️ | N/A | |
| `provider` | [models.ProviderPreferences](../models/providerpreferences.mdx) | ➖ | N/A | \{ "allow\_fallbacks": true } |
| `referenceDate` | *string* | ➖ | ISO date that anchors dates written without a year. | |
| `sessionId` | *string* | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 |
| `state` | *string* | ✔️ | The text to read from. May be empty only when the request carries image assets. | |
| `trace` | [models.TraceConfig](../models/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace\_id, trace\_name, span\_name, generation\_name, parent\_span\_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{ "trace\_id": "trace-abc123", "trace\_name": "my-app-trace" } |
| `user` | *string* | ➖ | N/A | |
