> ## Documentation Index > Fetch the complete documentation index at: https://docs.extend.ai/llms.txt > Use this file to discover all available pages before exploring further. > > ## API version > The current API version is `2026-02-09`, served at the site root (no version prefix in URLs). > If this page URL contains `/2025-04-21/` or `/2024-12-23/`, you are reading an older API version. > Prefer the current docs at https://docs.extend.ai/llms.txt unless the user explicitly needs that older version. > Do not treat older-version pages as the source of truth for new integrations. # Create Processor This endpoint allows you to create a new processor or clone an existing one. Typically processors are created and configured in the Extend Studio, but this endpoint can be used to create processors programmatically in order to sync ID's across systems. ### Body **`name`** `string` — required The name of the new processor. --- **`type`** `string` — required The type of the processor. --- **`cloneProcessorId`** `string` The ID of an existing processor to clone. If provided, a new processor will be created that clones the config of this processor. --- ### Response **`success`** `boolean` A true or false value indicating whether the processor was created successfully or not. --- **`processor`** `DocumentProcessor` A Processor object representing the newly created processor. See the [DocumentProcessor object](/2024-12-23/developers/objects/processor) for more details. --- ### Error Responses **`success`** `boolean` Will be `false` if the request failed. --- **`error`** `string` A description of the error that occurred. --- #### Possible Common Errors * **400 Bad Request**: If the request body fails schema validation. * **404 Not Found**: If the processor to clone (cloneProcessorId) is not found. ```curl curl --request POST \ --url https://api-prod.extend.app/processors \ --header 'Authorization: Bearer ' \ --header 'Content-Type: application/json' \ --data '{ "name": "", "type": "", "cloneProcessorId": "", "jsonSchemaEnabled": true }' ``` ```python import requests url = "https://api-prod.extend.app/processors" payload = { "name": "", "type": "", "cloneProcessorId": "", "jsonSchemaEnabled": True } headers = { "Authorization": "Bearer ", "Content-Type": "application/json" } response = requests.request("POST", url, json=payload, headers=headers) print(response.text) ``` ```javascript const options = { method: 'POST', headers: {Authorization: 'Bearer ', 'Content-Type': 'application/json'}, body: '{"name":"","type":"","cloneProcessorId":"","jsonSchemaEnabled":true}' }; fetch('https://api-prod.extend.app/processors', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err)); ``` ```php "https://api-prod.extend.app/processors", CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "POST", CURLOPT_POSTFIELDS => "{\n \"name\": \"\",\n \"type\": \"\",\n \"cloneProcessorId\": \"\",\n \"jsonSchemaEnabled\": true\n}", CURLOPT_HTTPHEADER => [ "Authorization: Bearer ", "Content-Type: application/json" ], ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) { echo "cURL Error #:" . $err; } else { echo $response; } ``` ```go package main import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://api-prod.extend.app/processors" payload := strings.NewReader("{\n \"name\": \"\",\n \"type\": \"\",\n \"cloneProcessorId\": \"\",\n \"jsonSchemaEnabled\": true\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Authorization", "Bearer ") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```java HttpResponse response = Unirest.post("https://api-prod.extend.app/processors") .header("Authorization", "Bearer ") .header("Content-Type", "application/json") .body("{\n \"name\": \"\",\n \"type\": \"\",\n \"cloneProcessorId\": \"\",\n \"jsonSchemaEnabled\": true\n}") .asString(); ``` **`Example Success Response`** ```json Example Success Response { "success": true, "processor": { "object": "document_processor", "id": "processor_1234", "name": "New Invoice Processor", "type": "EXTRACT", "createdAt": "2024-03-01T12:00:00Z", "updatedAt": "2024-03-01T12:00:00Z" } } ``` > Ship your document processing with Extend. Get started with our APIs, SDKs, and guides.