For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
GuidesAPI ReferenceChangelogModel Versioning
GuidesAPI ReferenceChangelogModel Versioning
    • Getting Started
    • Authentication
    • API Versioning
    • SDKs
    • Deployments
    • Error Codes
    • Async Processing
  • Endpoints
      • POSTExtract File (Sync)
      • POSTExtract File (Async)
      • GETGet Extract Run
      • POSTCancel Extract Run
      • DELDelete Extract Run
      • GETList Extract Runs
      • POSTCreate Extractor
      • GETGet Extractor
      • POSTUpdate Extractor
      • GETList Extractors
      • POSTCreate Extractor Version
      • GETGet Extractor Version
      • GETList Extractor Versions
  • Webhook Events
LogoLogo
EndpointsExtract

Create Extractor Version

POST
/extractors/:extractorId/versions
POST
/extractors/:extractorId/versions
1import { ExtendClient } from "extend-ai";
2
3const client = new ExtendClient({ token: "YOUR_TOKEN" });
4await client.extractorVersions.create("extractor_id_here", {
5 releaseType: "minor",
6 description: "Updated extraction rules for better accuracy"
7});
1{
2 "object": "extractor_version",
3 "id": "exv_xK9mLPqRtN3vS8wF5hB2cQ",
4 "description": "Updated extraction fields for new invoice format",
5 "version": "draft",
6 "config": {
7 "baseProcessor": "extraction_performance",
8 "baseVersion": "string",
9 "extractionRules": "string",
10 "schema": {},
11 "advancedOptions": {
12 "modelReasoningInsightsEnabled": true,
13 "advancedMultimodalEnabled": true,
14 "citationsEnabled": true,
15 "citationMode": "line",
16 "arrayCitationStrategy": "item",
17 "arrayStrategy": {
18 "type": "large_array_heuristics"
19 },
20 "chunkingOptions": {
21 "chunkingStrategy": "standard",
22 "pageChunkSize": 1,
23 "chunkSelectionStrategy": "intelligent",
24 "customSemanticChunkingRules": "string"
25 },
26 "excelSheetRanges": [
27 {
28 "start": 1,
29 "end": 1
30 }
31 ],
32 "excelSheetSelectionStrategy": "intelligent",
33 "pageRanges": [
34 {
35 "start": 1,
36 "end": 10
37 },
38 {
39 "start": 20,
40 "end": 30
41 }
42 ],
43 "reviewAgent": {
44 "enabled": true
45 },
46 "currentDateEnabled": true
47 },
48 "parseConfig": {
49 "target": "markdown",
50 "chunkingStrategy": {
51 "type": "page",
52 "options": {
53 "minCharacters": 500,
54 "maxCharacters": 10000
55 }
56 },
57 "engine": "parse_performance",
58 "engineVersion": "latest",
59 "blockOptions": {
60 "figures": {
61 "enabled": true,
62 "figureImageClippingEnabled": true,
63 "advancedChartExtractionEnabled": false
64 },
65 "tables": {
66 "enabled": true,
67 "targetFormat": "html",
68 "tableHeaderContinuationEnabled": false,
69 "cellBlocksEnabled": false,
70 "agentic": {
71 "enabled": false,
72 "customInstructions": "string"
73 }
74 },
75 "text": {
76 "signatureDetectionEnabled": false,
77 "agentic": {
78 "enabled": false,
79 "customInstructions": "string"
80 }
81 },
82 "keyValue": {
83 "blankFieldFormattingEnabled": false
84 },
85 "barcodes": {
86 "imageClippingEnabled": false,
87 "readingEnabled": false
88 },
89 "formulas": {
90 "enabled": false
91 }
92 },
93 "advancedOptions": {
94 "pageRotationEnabled": true,
95 "pageRanges": [
96 {
97 "start": 1,
98 "end": 10
99 },
100 {
101 "start": 20,
102 "end": 30
103 }
104 ],
105 "excelParsingMode": "basic",
106 "excelSkipHiddenContent": false,
107 "excelUseRawCellValues": false,
108 "excelSkipCalculation": true,
109 "verticalGroupingThreshold": 1,
110 "returnOcr": {
111 "words": false
112 },
113 "alwaysConvertToPdf": false,
114 "enrichmentFormat": "xml",
115 "imageConversionQuality": "medium",
116 "formattingDetection": [
117 {
118 "type": "change_tracking"
119 }
120 ]
121 }
122 }
123 },
124 "extractorId": "ex_Xj8mK2pL9nR4vT7qY5wZ",
125 "createdAt": "2024-03-21T16:45:00Z"
126}
This endpoint allows you to publish a new version of an existing extractor. Publishing a new version creates a snapshot of the extractor's current configuration and makes it available for use in workflows. Publishing a new version does not automatically update existing workflows using this extractor. You may need to manually update workflows to use the new version if desired.
Was this page helpful?
Previous

Get Extractor Version

Next
Built with

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

extractorIdstringRequired

The ID of the extractor.

Example: "ex_Xj8mK2pL9nR4vT7qY5wZ"

Headers

x-extend-api-version"2026-02-09"Optional
API version to use for the request. If you're using an SDK, you can ignore this parameter. If you are not using an SDK and do not specify a version, you will either receive a `400 Bad Request` or be set to a previous legacy version. See [API Versioning](https://docs.extend.ai/2026-02-09/developers/api-versioning) for more details.
x-extend-workspace-idstringOptional
The workspace ID to target. **Required** when using an organization-scoped API key; optional for workspace-scoped keys (the key is already tied to a workspace). See [Authentication](https://docs.extend.ai/2026-02-09/developers/authentication) for details on API key scopes.

Request

This endpoint expects an object.
releaseTypeenumRequired
The type of release for this version. The two options are "major" and "minor", which will increment the version number accordingly.
Allowed values:
descriptionstringOptional
A description of the changes in this version. This helps track the evolution of the processor over time.
configobjectOptional
The configuration for this version of the extractor.

Response

Successfully published extractor version
objectenum

The type of object. Will always be "extractor_version".

Allowed values:
idstring

The unique identifier for this version of the extractor.

Example: "exv_xK9mLPqRtN3vS8wF5hB2cQ"

descriptionstring or null

A description of this version of the extractor.

Example: "Updated extraction fields for new invoice format"

versionstring

The version number or identifier for this specific version of the extractor. The draft version will have version=“draft”.

Examples: "1.0", "2.1", "draft"

configobject

The configuration settings for this version of the extractor. This is a union of two possible shapes:

  • JSON Schema config: The current config format. All extractors created through this API version use this shape.
  • Legacy config: A fields-array config from a previous API version. This shape is only returned for extractors that were originally configured with the legacy format. This API version does not support creating extractors with legacy configs.
extractorIdstring

The ID of the extractor that this version belongs to.

Example: "ex_Xj8mK2pL9nR4vT7qY5wZ"

createdAtstringformat: "date-time"

The time (in UTC) at which the object was created. Will follow the RFC 3339 format.

Example: "2024-03-21T16:45:00Z"

Errors

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
422
Unprocessable Entity Error
429
Too Many Requests Error
500
Internal Server Error

API version to use for the request. If you’re using an SDK, you can ignore this parameter. If you are not using an SDK and do not specify a version, you will either receive a 400 Bad Request or be set to a previous legacy version. See API Versioning for more details.

The workspace ID to target. Required when using an organization-scoped API key; optional for workspace-scoped keys (the key is already tied to a workspace). See Authentication for details on API key scopes.