Create entities in batch
curl --request POST \
--url https://catchall.newscatcherapi.com/catchAll/entities/batch \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"entities": [
{
"name": "OpenAI",
"entity_type": "company",
"description": "Artificial intelligence research company",
"additional_attributes": {
"company_attributes": {
"domain": "openai.com",
"alternative_names": [
"Open AI"
],
"key_persons": [
"Sam Altman"
]
}
}
},
{
"name": "Stripe",
"entity_type": "company",
"description": "Online payment processing platform",
"additional_attributes": {
"company_attributes": {
"domain": "stripe.com",
"key_persons": [
"Patrick Collison",
"John Collison"
]
}
}
}
]
}
'import requests
url = "https://catchall.newscatcherapi.com/catchAll/entities/batch"
payload = { "entities": [
{
"name": "OpenAI",
"entity_type": "company",
"description": "Artificial intelligence research company",
"additional_attributes": { "company_attributes": {
"domain": "openai.com",
"alternative_names": ["Open AI"],
"key_persons": ["Sam Altman"]
} }
},
{
"name": "Stripe",
"entity_type": "company",
"description": "Online payment processing platform",
"additional_attributes": { "company_attributes": {
"domain": "stripe.com",
"key_persons": ["Patrick Collison", "John Collison"]
} }
}
] }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
entities: [
{
name: 'OpenAI',
entity_type: 'company',
description: 'Artificial intelligence research company',
additional_attributes: {
company_attributes: {
domain: 'openai.com',
alternative_names: ['Open AI'],
key_persons: ['Sam Altman']
}
}
},
{
name: 'Stripe',
entity_type: 'company',
description: 'Online payment processing platform',
additional_attributes: {
company_attributes: {domain: 'stripe.com', key_persons: ['Patrick Collison', 'John Collison']}
}
}
]
})
};
fetch('https://catchall.newscatcherapi.com/catchAll/entities/batch', 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://catchall.newscatcherapi.com/catchAll/entities/batch",
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([
'entities' => [
[
'name' => 'OpenAI',
'entity_type' => 'company',
'description' => 'Artificial intelligence research company',
'additional_attributes' => [
'company_attributes' => [
'domain' => 'openai.com',
'alternative_names' => [
'Open AI'
],
'key_persons' => [
'Sam Altman'
]
]
]
],
[
'name' => 'Stripe',
'entity_type' => 'company',
'description' => 'Online payment processing platform',
'additional_attributes' => [
'company_attributes' => [
'domain' => 'stripe.com',
'key_persons' => [
'Patrick Collison',
'John Collison'
]
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://catchall.newscatcherapi.com/catchAll/entities/batch"
payload := strings.NewReader("{\n \"entities\": [\n {\n \"name\": \"OpenAI\",\n \"entity_type\": \"company\",\n \"description\": \"Artificial intelligence research company\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"openai.com\",\n \"alternative_names\": [\n \"Open AI\"\n ],\n \"key_persons\": [\n \"Sam Altman\"\n ]\n }\n }\n },\n {\n \"name\": \"Stripe\",\n \"entity_type\": \"company\",\n \"description\": \"Online payment processing platform\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"stripe.com\",\n \"key_persons\": [\n \"Patrick Collison\",\n \"John Collison\"\n ]\n }\n }\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://catchall.newscatcherapi.com/catchAll/entities/batch")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"entities\": [\n {\n \"name\": \"OpenAI\",\n \"entity_type\": \"company\",\n \"description\": \"Artificial intelligence research company\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"openai.com\",\n \"alternative_names\": [\n \"Open AI\"\n ],\n \"key_persons\": [\n \"Sam Altman\"\n ]\n }\n }\n },\n {\n \"name\": \"Stripe\",\n \"entity_type\": \"company\",\n \"description\": \"Online payment processing platform\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"stripe.com\",\n \"key_persons\": [\n \"Patrick Collison\",\n \"John Collison\"\n ]\n }\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://catchall.newscatcherapi.com/catchAll/entities/batch")
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["Content-Type"] = 'application/json'
request.body = "{\n \"entities\": [\n {\n \"name\": \"OpenAI\",\n \"entity_type\": \"company\",\n \"description\": \"Artificial intelligence research company\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"openai.com\",\n \"alternative_names\": [\n \"Open AI\"\n ],\n \"key_persons\": [\n \"Sam Altman\"\n ]\n }\n }\n },\n {\n \"name\": \"Stripe\",\n \"entity_type\": \"company\",\n \"description\": \"Online payment processing platform\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"stripe.com\",\n \"key_persons\": [\n \"Patrick Collison\",\n \"John Collison\"\n ]\n }\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"entities": [
{
"id": "88430468-d784-485d-84d5-6964a29ccd1e",
"status": "pending"
},
{
"id": "ad4908fe-6db5-4237-a137-68dd8fc9fedc",
"status": "pending"
}
],
"count": 2
}Entities
Create entities in batch
Creates multiple entities in a single request. Each entity is processed independently — a failure in one does not affect others.
Each entity requires a name plus at least one of: a description or a domain. See Create entity for the full field reference.
Returns an array of {id, status} objects in the same order as the input array.
POST
/
catchAll
/
entities
/
batch
Create entities in batch
curl --request POST \
--url https://catchall.newscatcherapi.com/catchAll/entities/batch \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"entities": [
{
"name": "OpenAI",
"entity_type": "company",
"description": "Artificial intelligence research company",
"additional_attributes": {
"company_attributes": {
"domain": "openai.com",
"alternative_names": [
"Open AI"
],
"key_persons": [
"Sam Altman"
]
}
}
},
{
"name": "Stripe",
"entity_type": "company",
"description": "Online payment processing platform",
"additional_attributes": {
"company_attributes": {
"domain": "stripe.com",
"key_persons": [
"Patrick Collison",
"John Collison"
]
}
}
}
]
}
'import requests
url = "https://catchall.newscatcherapi.com/catchAll/entities/batch"
payload = { "entities": [
{
"name": "OpenAI",
"entity_type": "company",
"description": "Artificial intelligence research company",
"additional_attributes": { "company_attributes": {
"domain": "openai.com",
"alternative_names": ["Open AI"],
"key_persons": ["Sam Altman"]
} }
},
{
"name": "Stripe",
"entity_type": "company",
"description": "Online payment processing platform",
"additional_attributes": { "company_attributes": {
"domain": "stripe.com",
"key_persons": ["Patrick Collison", "John Collison"]
} }
}
] }
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
entities: [
{
name: 'OpenAI',
entity_type: 'company',
description: 'Artificial intelligence research company',
additional_attributes: {
company_attributes: {
domain: 'openai.com',
alternative_names: ['Open AI'],
key_persons: ['Sam Altman']
}
}
},
{
name: 'Stripe',
entity_type: 'company',
description: 'Online payment processing platform',
additional_attributes: {
company_attributes: {domain: 'stripe.com', key_persons: ['Patrick Collison', 'John Collison']}
}
}
]
})
};
fetch('https://catchall.newscatcherapi.com/catchAll/entities/batch', 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://catchall.newscatcherapi.com/catchAll/entities/batch",
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([
'entities' => [
[
'name' => 'OpenAI',
'entity_type' => 'company',
'description' => 'Artificial intelligence research company',
'additional_attributes' => [
'company_attributes' => [
'domain' => 'openai.com',
'alternative_names' => [
'Open AI'
],
'key_persons' => [
'Sam Altman'
]
]
]
],
[
'name' => 'Stripe',
'entity_type' => 'company',
'description' => 'Online payment processing platform',
'additional_attributes' => [
'company_attributes' => [
'domain' => 'stripe.com',
'key_persons' => [
'Patrick Collison',
'John Collison'
]
]
]
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://catchall.newscatcherapi.com/catchAll/entities/batch"
payload := strings.NewReader("{\n \"entities\": [\n {\n \"name\": \"OpenAI\",\n \"entity_type\": \"company\",\n \"description\": \"Artificial intelligence research company\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"openai.com\",\n \"alternative_names\": [\n \"Open AI\"\n ],\n \"key_persons\": [\n \"Sam Altman\"\n ]\n }\n }\n },\n {\n \"name\": \"Stripe\",\n \"entity_type\": \"company\",\n \"description\": \"Online payment processing platform\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"stripe.com\",\n \"key_persons\": [\n \"Patrick Collison\",\n \"John Collison\"\n ]\n }\n }\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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://catchall.newscatcherapi.com/catchAll/entities/batch")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"entities\": [\n {\n \"name\": \"OpenAI\",\n \"entity_type\": \"company\",\n \"description\": \"Artificial intelligence research company\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"openai.com\",\n \"alternative_names\": [\n \"Open AI\"\n ],\n \"key_persons\": [\n \"Sam Altman\"\n ]\n }\n }\n },\n {\n \"name\": \"Stripe\",\n \"entity_type\": \"company\",\n \"description\": \"Online payment processing platform\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"stripe.com\",\n \"key_persons\": [\n \"Patrick Collison\",\n \"John Collison\"\n ]\n }\n }\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://catchall.newscatcherapi.com/catchAll/entities/batch")
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["Content-Type"] = 'application/json'
request.body = "{\n \"entities\": [\n {\n \"name\": \"OpenAI\",\n \"entity_type\": \"company\",\n \"description\": \"Artificial intelligence research company\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"openai.com\",\n \"alternative_names\": [\n \"Open AI\"\n ],\n \"key_persons\": [\n \"Sam Altman\"\n ]\n }\n }\n },\n {\n \"name\": \"Stripe\",\n \"entity_type\": \"company\",\n \"description\": \"Online payment processing platform\",\n \"additional_attributes\": {\n \"company_attributes\": {\n \"domain\": \"stripe.com\",\n \"key_persons\": [\n \"Patrick Collison\",\n \"John Collison\"\n ]\n }\n }\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"entities": [
{
"id": "88430468-d784-485d-84d5-6964a29ccd1e",
"status": "pending"
},
{
"id": "ad4908fe-6db5-4237-a137-68dd8fc9fedc",
"status": "pending"
}
],
"count": 2
}Authorizations
API key for authentication.
Body
application/json
Array of entities to create. Each item follows the same schema as single entity creation.
Minimum array length:
1Show child attributes
Show child attributes
Was this page helpful?
⌘I

