Cancel Job
curl --request POST \
--url https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel \
--header 'x-api-key: <api-key>' \
--header 'x-selected-account-id: <api-key>'import requests
url = "https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel"
headers = {
"x-api-key": "<api-key>",
"x-selected-account-id": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'x-selected-account-id': '<api-key>'}
};
fetch('https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>",
"x-selected-account-id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("x-selected-account-id", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel")
.header("x-api-key", "<api-key>")
.header("x-selected-account-id", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["x-selected-account-id"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"project_id": "<string>",
"operation": "parse",
"status": "pending",
"created_at": "2023-11-07T05:31:56Z",
"object": "job",
"source_id": "<string>",
"correlation_id": "<string>",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"result": {},
"progress": {
"total": 123,
"succeeded": 123,
"failed": 123,
"cancelled": 123,
"pending": 123,
"child_jobs": [
{
"source_document_id": "<string>",
"job_id": "<string>",
"status": "pending",
"parse_result_id": "<string>",
"error": "<string>"
}
]
},
"error": "<string>",
"history": [
{
"step": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"duration_ms": 123,
"status": "<string>",
"details": {}
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Jobs
Cancel Job
Cancel a running or pending job.
Idempotent: cancelling an already-cancelled job returns 200. For RUNNING jobs, returns 202 since the workflow handles cancellation asynchronously.
POST
/
v1
/
projects
/
{project_id}
/
jobs
/
{job_id}
/
cancel
Cancel Job
curl --request POST \
--url https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel \
--header 'x-api-key: <api-key>' \
--header 'x-selected-account-id: <api-key>'import requests
url = "https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel"
headers = {
"x-api-key": "<api-key>",
"x-selected-account-id": "<api-key>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'x-selected-account-id': '<api-key>'}
};
fetch('https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>",
"x-selected-account-id: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("x-selected-account-id", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel")
.header("x-api-key", "<api-key>")
.header("x-selected-account-id", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/projects/{project_id}/jobs/{job_id}/cancel")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["x-selected-account-id"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"project_id": "<string>",
"operation": "parse",
"status": "pending",
"created_at": "2023-11-07T05:31:56Z",
"object": "job",
"source_id": "<string>",
"correlation_id": "<string>",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"result": {},
"progress": {
"total": 123,
"succeeded": 123,
"failed": 123,
"cancelled": 123,
"pending": 123,
"child_jobs": [
{
"source_document_id": "<string>",
"job_id": "<string>",
"status": "pending",
"parse_result_id": "<string>",
"error": "<string>"
}
]
},
"error": "<string>",
"history": [
{
"step": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"duration_ms": 123,
"status": "<string>",
"details": {}
}
]
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
API key for authentication
Selected Account ID
Response
Job cancelled (PENDING) or already cancelled (idempotent)
Job response model representing an asynchronous operation.
ID of the entity
ID of the project
Operation type (e.g., 'parse')
Available options:
parse, batch_parse, extract, research, vector_store, chunk, summarization, create_index, update_index Current job status
Available options:
pending, running, succeeded, partially_succeeded, failed, cancelled When the job was created
Allowed value:
"job"Source document/file ID
Request correlation ID for tracing
When the job started processing
When the job completed
Job result payload when completed
Live progress payload (used by batch jobs)
Show child attributes
Show child attributes
Error message if job failed
Timeline of job execution events
Show child attributes
Show child attributes

