import type * as Extend from "../../../../index"; /** * @example * { * processorId: "processor_id_here" * } */ export interface ProcessorRunCreateRequest { processorId: Extend.LegacyProcessorId; /** * An optional version of the processor to use. When not supplied, the most recent published version of the processor will be used. Special values include: * - `"latest"` for the most recent published version. If there are no published versions, the draft version will be used. * - `"draft"` for the draft version. * - Specific version numbers corresponding to versions your team has published, e.g. `"1.0"`, `"2.2"`, etc. */ version?: string; /** The file to be processed. One of `file` or `rawText` must be provided. Supported file types can be found [here](https://docs.extend.ai/2026-02-09/product/general/supported-file-types). */ file?: Extend.LegacyProcessorRunFileInput; /** A raw string to be processed. Can be used in place of file when passing raw text data streams. One of `file` or `rawText` must be provided. */ rawText?: string; /** * Whether to run the processor synchronously. When `true`, the request will wait for the processor run to complete and return the final results. When `false` (default), the request returns immediately with a `PROCESSING` status, and you can poll for completion or use webhooks. For production use cases, we recommending leaving sync off and building around an async integration for more resiliency, unless your use case is predictably fast (e.g. sub < 30 seconds) run time or otherwise have integration constraints that require a synchronous API. See [Async Processing](https://docs.extend.ai/2026-02-09/developers/async-processing) for more details. * * **Timeout**: Synchronous requests have a 5-minute timeout. If the processor run takes longer, it will continue processing asynchronously and you can retrieve the results via the GET endpoint. */ sync?: boolean; /** An optional value used to determine the relative order of ProcessorRuns when rate limiting is in effect. Lower values will be prioritized before higher values. */ priority?: number; /** * An optional object that can be passed in to identify the run of the document processor. It will be returned back to you in the response and webhooks. * * To categorize processor runs for billing and usage tracking, include `extend:usage_tags` with an array of string values (e.g., `{"extend:usage_tags": ["production", "team-eng", "customer-123"]}`). Tags must contain only alphanumeric characters, hyphens, and underscores; any special characters will be automatically removed. */ metadata?: Extend.LegacyJsonObject; /** The configuration for the processor run. If this is provided, this config will be used. If not provided, the config for the specific version you provide will be used. The type of configuration must match the processor type. */ config?: Extend.ProcessorRunCreateRequestConfig; }