Example Usage
import { ExtractionsRequest } from "@openrouter/sdk/models";
let value: ExtractionsRequest = {
fields: {},
model: "Camaro",
state: "Arizona",
};
Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
assets | Record<string, models.ExtractionAsset> | ➖ | Assets keyed by reference string. Write a reference wherever the asset belongs in state or a field instructions; every asset must be referenced at least once. A state that is exactly the sole asset’s key carries no text of its own and is read as file-only. A model that reads either text or a document per request, not both (ScaleDown Extract with a PDF), needs that form: any other text around the key is state text and is rejected with 400. | |
fields | Record<string, models.Fields> | ✔️ | Map of field name to typed field spec. | |
model | string | ✔️ | N/A | |
provider | models.ProviderPreferences | ➖ | 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 | ➖ | 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 |