Endpoints
Create Extraction Job
POST
/
run-job
Create Extraction Job
curl --request POST \
--url https://api.documind.xyz/run-job \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"file": "<string>",
"schema": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": [
"<string>"
],
"children": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": [
"<string>"
]
}
]
}
]
}
'import requests
url = "https://api.documind.xyz/run-job"
payload = {
"file": "<string>",
"schema": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": ["<string>"],
"children": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": ["<string>"]
}
]
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
file: '<string>',
schema: [
{
name: '<string>',
description: '<string>',
type: '<string>',
values: ['<string>'],
children: [
{
name: '<string>',
description: '<string>',
type: '<string>',
values: ['<string>']
}
]
}
]
})
};
fetch('https://api.documind.xyz/run-job', 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.documind.xyz/run-job",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'file' => '<string>',
'schema' => [
[
'name' => '<string>',
'description' => '<string>',
'type' => '<string>',
'values' => [
'<string>'
],
'children' => [
[
'name' => '<string>',
'description' => '<string>',
'type' => '<string>',
'values' => [
'<string>'
]
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.documind.xyz/run-job"
payload := strings.NewReader("{\n \"file\": \"<string>\",\n \"schema\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ],\n \"children\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ]\n }\n ]\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
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.documind.xyz/run-job")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"file\": \"<string>\",\n \"schema\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ],\n \"children\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ]\n }\n ]\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.documind.xyz/run-job")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"file\": \"<string>\",\n \"schema\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ],\n \"children\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ]\n }\n ]\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"createdAt": "<string>",
"status": "<string>",
"pages": 123,
"fileName": "<string>",
"result": "<string>",
"urls": {}
}Body
string
required
The file URL.
object[]
required
The schema that defines the structure of the data you want to extract
Show schema object
Show schema object
string
required
A unique identifier for the field.
string
required
A brief explanation of what the field represents.
string
required
The type of data. Options are:
string, number, array, object, enum, boolean.string[]
Used when the field type is
enum, to specify available options.object[]
Nested fields for
array or object types.Response
string
The unique id of the extraction job.
string
Date and time when the job was created.
string
Status of the job. At the point of the job creation, this will be
CREATED.number
Number of pages in the document processed.
string
The file URL.
string
The result of the extracted job. At the point of job creation, this will be
null.object
The full endpoint url to poll for the results of the job.
⌘I
Create Extraction Job
curl --request POST \
--url https://api.documind.xyz/run-job \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"file": "<string>",
"schema": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": [
"<string>"
],
"children": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": [
"<string>"
]
}
]
}
]
}
'import requests
url = "https://api.documind.xyz/run-job"
payload = {
"file": "<string>",
"schema": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": ["<string>"],
"children": [
{
"name": "<string>",
"description": "<string>",
"type": "<string>",
"values": ["<string>"]
}
]
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
file: '<string>',
schema: [
{
name: '<string>',
description: '<string>',
type: '<string>',
values: ['<string>'],
children: [
{
name: '<string>',
description: '<string>',
type: '<string>',
values: ['<string>']
}
]
}
]
})
};
fetch('https://api.documind.xyz/run-job', 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.documind.xyz/run-job",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'file' => '<string>',
'schema' => [
[
'name' => '<string>',
'description' => '<string>',
'type' => '<string>',
'values' => [
'<string>'
],
'children' => [
[
'name' => '<string>',
'description' => '<string>',
'type' => '<string>',
'values' => [
'<string>'
]
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.documind.xyz/run-job"
payload := strings.NewReader("{\n \"file\": \"<string>\",\n \"schema\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ],\n \"children\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ]\n }\n ]\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
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.documind.xyz/run-job")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"file\": \"<string>\",\n \"schema\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ],\n \"children\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ]\n }\n ]\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.documind.xyz/run-job")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"file\": \"<string>\",\n \"schema\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ],\n \"children\": [\n {\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"type\": \"<string>\",\n \"values\": [\n \"<string>\"\n ]\n }\n ]\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "<string>",
"createdAt": "<string>",
"status": "<string>",
"pages": 123,
"fileName": "<string>",
"result": "<string>",
"urls": {}
}