Skip to main content
POST
/
v1
/
knowledge
/
query
Query
curl --request POST \
  --url https://api.cala.ai/v1/knowledge/query \
  --header 'Content-Type: application/json' \
  --header 'X-API-KEY: <api-key>' \
  --data '
{
  "input": "companies.industry=fintech.founded_year>=2020"
}
'
import requests

url = "https://api.cala.ai/v1/knowledge/query"

payload = { "input": "companies.industry=fintech.founded_year>=2020" }
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({input: 'companies.industry=fintech.founded_year>=2020'})
};

fetch('https://api.cala.ai/v1/knowledge/query', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
{
  "entities": [
    {
      "entity_type": "Company",
      "id": "e2932ee7-7b57-42b7-8c58-cdfcdf56ceb5",
      "mentions": [
        "Amenitiz"
      ],
      "name": "Amenitiz"
    },
    {
      "entity_type": "Company",
      "id": "e843fc48-8339-4c99-a6e2-e7fb1cc738b1",
      "mentions": [
        "H2SITE"
      ],
      "name": "H2SITE"
    },
    {
      "entity_type": "Company",
      "id": "af3ff4b5-27a9-45d5-8c67-b656cb38e6b8",
      "mentions": [
        "Fracttal"
      ],
      "name": "Fracttal"
    }
  ],
  "results": [
    {
      "company": "Amenitiz",
      "funding_amount": "€38.9M",
      "round_type": "Series B",
      "sector": "Hospitality SaaS",
      "year": 2025
    },
    {
      "company": "H2SITE",
      "funding_amount": "€36M ($37.2M)",
      "round_type": "Series B",
      "sector": "Hydrogen Energy",
      "year": 2025
    },
    {
      "company": "Fracttal",
      "funding_amount": "€29.8M ($35M)",
      "round_type": "Series B",
      "sector": "AI Maintenance",
      "year": 2026
    }
  ]
}
{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}
{
"error": "rate_limit_exceeded",
"message": "Rate limit exceeded. Too many requests."
}

Authorizations

X-API-KEY
string
header
required

Body

application/json
input
string
required

Natural language question or Dot-Notation Syntax (e.g. "companies.industry=fintech.founded_year>=2020"). Dot-Notation Syntax is not a strict grammar — there is no syntax to get wrong. An empty or fallback result means no match, not a syntax error.

Example:

"companies.industry=fintech.founded_year>=2020"

return_entities
boolean
default:true

Whether to return the entities identified in the query response.

Example:

true

Response

Successful Response

Response in case of a successful structured query.

results
Results · object[]
required

A list of structured results for the query. Shape and schema will be determined by the query.

Example:
[
{
"company": "Amenitiz",
"funding_amount": "€38.9M",
"round_type": "Series B",
"sector": "Hospitality SaaS",
"year": 2025
},
{
"company": "H2SITE",
"funding_amount": "€36M ($37.2M)",
"round_type": "Series B",
"sector": "Hydrogen Energy",
"year": 2025
},
{
"company": "Fracttal",
"funding_amount": "€29.8M ($35M)",
"round_type": "Series B",
"sector": "AI Maintenance",
"year": 2026
}
]
entities
EntityMention · object[] | null
required

Entities identified in the query response.