Parse an HTTPS PDF file URL into structured JSON
curl --request POST \
--url https://api.agentbody.io/v1/documents/pdf/parse \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>",
"extract_tables": false
}
'import requests
url = "https://api.agentbody.io/v1/documents/pdf/parse"
payload = {
"url": "<string>",
"extract_tables": False
}
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({url: '<string>', extract_tables: false})
};
fetch('https://api.agentbody.io/v1/documents/pdf/parse', 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.agentbody.io/v1/documents/pdf/parse",
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([
'url' => '<string>',
'extract_tables' => false
]),
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.agentbody.io/v1/documents/pdf/parse"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"extract_tables\": false\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.agentbody.io/v1/documents/pdf/parse")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"extract_tables\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.agentbody.io/v1/documents/pdf/parse")
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 \"url\": \"<string>\",\n \"extract_tables\": false\n}"
response = http.request(request)
puts response.read_body{
"file_name": "dummy.pdf",
"page_count": 1,
"source_url": "https://example.com/dummy.pdf",
"success": true,
"tables_count": 0,
"text": "Dummy PDF file"
}{
"error": {
"code": "INVALID_ARGUMENT",
"message": "example error"
}
}{
"error": {
"code": "UNAUTHENTICATED",
"message": "example error"
}
}{
"error": {
"code": "CONFLICT",
"message": "example error"
}
}{
"error": {
"code": "UPSTREAM_INVALID_RESPONSE",
"message": "example error"
}
}{
"error": {
"code": "UPSTREAM_UNAVAILABLE",
"message": "example error"
}
}{
"error": {
"code": "UPSTREAM_TIMEOUT",
"message": "example error"
}
}documents
Parse an HTTPS PDF file URL into structured JSON
Use this operation to extract text, tables, and metadata from one https PDF file url into structured JSON. OCR is not included; scanned image-only PDFs are not supported.
POST
/
v1
/
documents
/
pdf
/
parse
Parse an HTTPS PDF file URL into structured JSON
curl --request POST \
--url https://api.agentbody.io/v1/documents/pdf/parse \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"url": "<string>",
"extract_tables": false
}
'import requests
url = "https://api.agentbody.io/v1/documents/pdf/parse"
payload = {
"url": "<string>",
"extract_tables": False
}
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({url: '<string>', extract_tables: false})
};
fetch('https://api.agentbody.io/v1/documents/pdf/parse', 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.agentbody.io/v1/documents/pdf/parse",
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([
'url' => '<string>',
'extract_tables' => false
]),
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.agentbody.io/v1/documents/pdf/parse"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"extract_tables\": false\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.agentbody.io/v1/documents/pdf/parse")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"extract_tables\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.agentbody.io/v1/documents/pdf/parse")
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 \"url\": \"<string>\",\n \"extract_tables\": false\n}"
response = http.request(request)
puts response.read_body{
"file_name": "dummy.pdf",
"page_count": 1,
"source_url": "https://example.com/dummy.pdf",
"success": true,
"tables_count": 0,
"text": "Dummy PDF file"
}{
"error": {
"code": "INVALID_ARGUMENT",
"message": "example error"
}
}{
"error": {
"code": "UNAUTHENTICATED",
"message": "example error"
}
}{
"error": {
"code": "CONFLICT",
"message": "example error"
}
}{
"error": {
"code": "UPSTREAM_INVALID_RESPONSE",
"message": "example error"
}
}{
"error": {
"code": "UPSTREAM_UNAVAILABLE",
"message": "example error"
}
}{
"error": {
"code": "UPSTREAM_TIMEOUT",
"message": "example error"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Optional key for safely retrying a billable write request.
Required string length:
1 - 255Body
application/json
Was this page helpful?
