You are viewing the documentation of the new API versions. We would love to hear from you. You can write to use at support@crustdata.co for feedback and clarifications.
curl --request POST \
--url https://api.crustdata.com/job/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-api-version: <x-api-version>' \
--data '
{
"filters": {
"op": "and",
"conditions": [
{
"field": "company.basic_info.company_id",
"type": "=",
"value": 631394
},
{
"field": "job_details.category",
"type": "=",
"value": "Engineering"
},
{
"field": "metadata.date_added",
"type": "=>",
"value": "2025-01-01"
}
]
},
"fields": [
"job_details.title",
"job_details.url",
"metadata.date_added",
"location.country"
],
"sorts": [
{
"column": "metadata.date_added",
"order": "desc"
}
],
"limit": 2
}
'{
"job_listings": [
{
"job_details": {
"title": "Integration Engineer (AUNZ)",
"url": "https://www.linkedin.com/jobs/view/4398377738"
},
"location": {
"country": "Australia"
},
"metadata": {
"date_added": "2026-04-07T11:37:29"
}
},
{
"job_details": {
"title": "Integration Engineer (AUNZ)",
"url": "https://www.linkedin.com/jobs/view/4398371967"
},
"location": {
"country": "Australia"
},
"metadata": {
"date_added": "2026-04-07T11:37:27"
}
}
],
"next_cursor": "H4sIAJJG1mkC_xXMPQ7CMAwG0KtEmTvYiR0nXAWhyvlBHRARbTogxN0J01s-vY99nW1_r5sem70YSzEJErG_VwdSnfeMiVpSjhmbUmkanXqXa5rlqsUlTJApUPO1NrsYe_R9zNcVRZgDRhIAWAwhsA_Ct0lGH_pYSz-ffykR8PsDw2G2zooAAAA=",
"total_count": 1676
}Search the Crustdata job dataset using filter conditions. Each result includes the job’s details (title, category, URL, openings), the hiring company’s core firmographics (basic info, headcount, followers, revenue, funding, competitors), the job location, full job description text, and metadata timestamps.
Default rate-limit is 15 requests per minute. Send an email to gtm@crustdata.co to discuss higher limits if needed for your use case.
Supports complex AND/OR filter logic, cursor-based pagination, sorting, field
selection, and aggregations (count and group_by). Only indexed fields are
filterable and sortable — see the field description on SearchCondition for
the full list.
curl --request POST \
--url https://api.crustdata.com/job/search \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-api-version: <x-api-version>' \
--data '
{
"filters": {
"op": "and",
"conditions": [
{
"field": "company.basic_info.company_id",
"type": "=",
"value": 631394
},
{
"field": "job_details.category",
"type": "=",
"value": "Engineering"
},
{
"field": "metadata.date_added",
"type": "=>",
"value": "2025-01-01"
}
]
},
"fields": [
"job_details.title",
"job_details.url",
"metadata.date_added",
"location.country"
],
"sorts": [
{
"column": "metadata.date_added",
"order": "desc"
}
],
"limit": 2
}
'{
"job_listings": [
{
"job_details": {
"title": "Integration Engineer (AUNZ)",
"url": "https://www.linkedin.com/jobs/view/4398377738"
},
"location": {
"country": "Australia"
},
"metadata": {
"date_added": "2026-04-07T11:37:29"
}
},
{
"job_details": {
"title": "Integration Engineer (AUNZ)",
"url": "https://www.linkedin.com/jobs/view/4398371967"
},
"location": {
"country": "Australia"
},
"metadata": {
"date_added": "2026-04-07T11:37:27"
}
}
],
"next_cursor": "H4sIAJJG1mkC_xXMPQ7CMAwG0KtEmTvYiR0nXAWhyvlBHRARbTogxN0J01s-vY99nW1_r5sem70YSzEJErG_VwdSnfeMiVpSjhmbUmkanXqXa5rlqsUlTJApUPO1NrsYe_R9zNcVRZgDRhIAWAwhsA_Ct0lGH_pYSz-ffykR8PsDw2G2zooAAAA=",
"total_count": 1676
}Documentation Index
Fetch the complete documentation index at: https://docs.crustdata.com/llms.txt
Use this file to discover all available pages before exploring further.
API key passed as a Bearer token in the Authorization header.
API version to use. This endpoint currently requires 2025-11-01.
2025-11-01 "2025-11-01"
Search filters, pagination, sorting, field selection, and aggregations
Request body for searching the indexed job dataset with filters, pagination, sorting, field selection, and aggregations.
Search filter conditions. Can be a single condition or a nested group
combined with AND/OR logic. Only indexed fields are filterable — see
SearchCondition.field for the full list.
Show child attributes
{
"field": "company.basic_info.company_id",
"type": "=",
"value": 631394
}Opaque pagination cursor returned in a prior response's next_cursor field. Pass this to fetch the next page of results with the same filter, sort, and field selection.
"H4sIAJJG1mkC_xXMPQ7CMAwG0KtEmTvYiR0nXAWhyvlBHRARbTogxN0J01s-vY99nW1_r5sem70YSzEJErG_VwdSnfeMiVpSjhmbUmkanXqXa5rlqsUlTJApUPO1NrsYe_R9zNcVRZgDRhIAWAwhsA_Ct0lGH_pYSz-ffykR8PsDw2G2zooAAAA="
Maximum number of job listings to return per page. Set to 0 when you only want aggregations.
0 <= x <= 100020
Sort specifications for ordering results. Sorts are applied in order.
Show child attributes
[
{
"column": "metadata.date_added",
"order": "desc"
}
]Fields to return in each job listing. Use dot-notation for nested fields (e.g., "job_details.title", "company.basic_info.name"). If omitted, all available fields are returned.
Valid top-level groups: crustdata_job_id, job_details, company,
location, content, metadata. Nested fields are supported
(e.g., company.basic_info, company.headcount, company.funding).
[
"job_details.title",
"job_details.url",
"company.basic_info.name",
"location.raw",
"metadata.date_added"
]Aggregation queries to run alongside the search. Set limit: 0 if you want only aggregation results and no job rows.
Show child attributes
[
{
"type": "group_by",
"column": "company.basic_info.company_id",
"agg": "count",
"size": 5
}
]Jobs matching the search criteria with pagination cursor and total count
Paginated response from the indexed job search endpoint.
Job listings matching the search criteria for the current page. Empty when limit is 0 or when an aggregation-only query is made.
Show child attributes
[]Opaque cursor for fetching the next page of results. Pass this value as cursor in the next request. null when there are no more pages.
"H4sIAJJG1mkC_xXMPQ7CMAwG0KtEmTvYiR0nXAWhyvlBHRARbTogxN0J01s-vY99nW1_r5sem70YSzEJErG_VwdSnfeMiVpSjhmbUmkanXqXa5rlqsUlTJApUPO1NrsYe_R9zNcVRZgDRhIAWAwhsA_Ct0lGH_pYSz-ffykR8PsDw2G2zooAAAA="
Total number of job listings matching the query across all pages.
1676
Aggregation results, present only when the request included an aggregations array.
Show child attributes
[
{
"type": "count",
"column": null,
"value": 4354217
}
]Was this page helpful?