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
      • POSTSplit File (Sync)
      • POSTSplit File (Async)
      • GETGet Split Run
      • POSTCancel Split Run
      • DELDelete Split Run
      • GETList Split Runs
      • POSTCreate Splitter
      • GETGet Splitter
      • POSTUpdate Splitter
      • GETList Splitters
      • POSTCreate Splitter Version
      • GETGet Splitter Version
      • GETList Splitter Versions
  • Webhook Events
LogoLogo
EndpointsSplit

Create Splitter Version

POST
/splitters/:splitterId/versions
POST
/splitters/:splitterId/versions
1import { ExtendClient } from "extend-ai";
2
3const client = new ExtendClient({ token: "YOUR_TOKEN" });
4await client.splitterVersions.create("splitter_id_here", {
5 releaseType: "minor",
6 description: "Improved split boundary detection"
7});
1{
2 "object": "splitter_version",
3 "id": "splv_xK9mLPqRtN3vS8wF5hB2cQ",
4 "description": "Updated split rules for multi-invoice packets",
5 "version": "draft",
6 "config": {
7 "splitClassifications": [
8 {
9 "id": "my_unique_id",
10 "type": "invoice",
11 "description": "An invoice is a document that lists the items purchased and the total amount due.",
12 "identifierKey": "Extract the invoice number from the document header"
13 }
14 ],
15 "baseProcessor": "splitting_performance",
16 "baseVersion": "string",
17 "splitRules": "string",
18 "advancedOptions": {
19 "splitExcelDocumentsBySheetEnabled": false,
20 "pageRanges": [
21 {
22 "start": 1,
23 "end": 10
24 },
25 {
26 "start": 20,
27 "end": 30
28 }
29 ],
30 "pageOverlapEnabled": false,
31 "splitIdentifierRules": "string",
32 "splitMethod": "high_precision"
33 },
34 "parseConfig": {
35 "target": "markdown",
36 "chunkingStrategy": {
37 "type": "page",
38 "options": {
39 "minCharacters": 500,
40 "maxCharacters": 10000
41 }
42 },
43 "engine": "parse_performance",
44 "engineVersion": "latest",
45 "blockOptions": {
46 "figures": {
47 "enabled": true,
48 "figureImageClippingEnabled": true,
49 "advancedChartExtractionEnabled": false
50 },
51 "tables": {
52 "targetFormat": "html",
53 "tableHeaderContinuationEnabled": false,
54 "cellBlocksEnabled": false,
55 "agentic": {
56 "enabled": false,
57 "customInstructions": "string"
58 },
59 "enabled": true
60 },
61 "text": {
62 "signatureDetectionEnabled": false,
63 "agentic": {
64 "enabled": false,
65 "customInstructions": "string"
66 }
67 },
68 "keyValue": {
69 "blankFieldFormattingEnabled": false
70 },
71 "barcodes": {
72 "imageClippingEnabled": false,
73 "readingEnabled": false
74 },
75 "formulas": {
76 "enabled": false
77 }
78 },
79 "advancedOptions": {
80 "pageRotationEnabled": true,
81 "pageRanges": [
82 {
83 "start": 1,
84 "end": 10
85 },
86 {
87 "start": 20,
88 "end": 30
89 }
90 ],
91 "excelParsingMode": "basic",
92 "excelSkipHiddenContent": false,
93 "excelUseRawCellValues": false,
94 "excelSkipCalculation": true,
95 "verticalGroupingThreshold": 1,
96 "returnOcr": {
97 "words": false
98 },
99 "alwaysConvertToPdf": false,
100 "enrichmentFormat": "xml",
101 "imageConversionQuality": "medium",
102 "formattingDetection": [
103 {
104 "type": "change_tracking"
105 }
106 ]
107 }
108 }
109 },
110 "splitterId": "spl_Xj8mK2pL9nR4vT7qY5wZ",
111 "createdAt": "2024-03-21T16:45:00Z"
112}
This endpoint allows you to publish a new version of an existing splitter. Publishing a new version creates a snapshot of the splitter's current configuration and makes it available for use in workflows. Publishing a new version does not automatically update existing workflows using this splitter. You may need to manually update workflows to use the new version if desired.
Was this page helpful?
Previous

Get Splitter Version

Next
Built with

Authentication

AuthorizationBearer

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

Path parameters

splitterIdstringRequired

The ID of the splitter.

Example: "spl_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 splitter.

Response

Successfully published splitter version
objectenum

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

Allowed values:
idstring

The unique identifier for this version of the splitter.

Example: "splv_xK9mLPqRtN3vS8wF5hB2cQ"

descriptionstring or null

A description of this version of the splitter.

Example: "Updated split rules for multi-invoice packets"

versionstring

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

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

configobject
The configuration settings for this version of the splitter.
splitterIdstring

The ID of the splitter that this version belongs to.

Example: "spl_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.