Skip to main content
POST
/
v2
/
jobs
/
export
Export Jobs
curl --request POST \
  --url https://api.hirebase.org/v2/jobs/export \
  --header 'Content-Type: application/json' \
  --data '{
  "search": {
    "job_titles": [
      "<string>"
    ],
    "keywords": [
      "<string>"
    ],
    "job_board": "<string>",
    "job_slug": "<string>",
    "location_group": "<string>",
    "location_types": [
      "<string>"
    ],
    "locations": [
      {
        "city": "<string>",
        "region": "<string>",
        "country": "<string>"
      }
    ],
    "experience": [
      "<string>"
    ],
    "yoe": {
      "min": 123,
      "max": 123
    },
    "company_name": "<string>",
    "company_slug": "<string>",
    "salary": {
      "min": 123,
      "max": 123
    },
    "job_type": [
      "<string>"
    ],
    "industry": [
      "<string>"
    ],
    "sub_industry": [
      "<string>"
    ],
    "date_posted": "<string>",
    "visa": "<string>",
    "sort_by": "<string>",
    "sort_order": "<string>",
    "currency": "<string>",
    "days_ago": 123,
    "include_expired": "<string>",
    "include_no_salary": "<string>",
    "include_yoe": "<string>",
    "month": "<string>",
    "page": 123,
    "limit": 123
  },
  "format": "<string>"
}'
{
  "id": "<string>",
  "type": "<string>",
  "state": "<string>",
  "progress": 123,
  "created_at": "<string>",
  "updated_at": "<string>",
  "started_at": "<string>",
  "completed_at": "<string>",
  "user_id": "<string>",
  "error": "<string>",
  "worker_id": "<string>",
  "priority": 123,
  "input": {},
  "result": {
    "download_url": "<string>",
    "file_size": 123,
    "record_count": 123,
    "expiry_time": "<string>"
  },
  "format": "<string>"
}
Export job search results using the same search parameters as /v2/jobs/search, but save the result as a downloadable file. This endpoint creates a task and returns its status and identifier. The user can poll the task using the Get Task Status endpoint.

Endpoint

POST /v2/jobs/export

Request Body

Note:
  • While some top-level request fields are required (such as search), the attributes within those fields are optional. You can include only the filters you need, for example, specifying just job_titles inside search is valid.
  • Filter combinations can be mixed and matched.
  • Use specific filters to narrow down search results and get relevant matches.
Parameters used to filter job search results
format
string
required
Export file format (csv, or json)

Response

Returns a task object representing the export job.
id
string
Unique task ID
Note:Use this task ID to check the export status using the Get Task Status endpoint and download the result once it’s ready.
type
string
Type of the task, always "export_job_data" for this endpoint
state
string
Current state of the task (queued, processing, finished, failed, canceled)
progress
number
Task progress as a float between 0.0 and 1.0
created_at
string
ISO timestamp of task creation
updated_at
string
ISO timestamp of last update
started_at
string
ISO timestamp of when the task started, or null
completed_at
string
ISO timestamp of when the task completed, or null
user_id
string
ID of the user who initiated the task
error
string
Error message if the task failed, otherwise null
worker_id
string
ID of the worker that processed the task, or null
priority
integer
Task priority level (higher means more urgent)
input
object
Task input payload, including the search query and export format
result
object
Present only when the task is complete
format
string
Format of the exported file (e.g., json, csv).

Example Request

{
    "search": {
  "job_titles": ["Site/Civil Engineer"],
  "geo_locations": [{"city": "Richmond", "region": "Virginia", "country": "United States"}],
  "yoe": {"min": 1, "max": 6},
  "company_name": "CompanyXYZ",
  "job_types": ["Full-time"],
  "industry": ["Design", "Construction"],
  "sub_industry": ["Architecture", "Building Construction"],
  "visa": "true",
  "sort_by": "relevance",
  "sort_order": "desc",
  "page": 1,
  "limit": 10
},
  "format": "json"
}

Example Response

{
    "id": "7700n868-05b7-4763-af74-e2c789c3260d",
    "type": "export_job_data",
    "state": "queued",
    "progress": 0.0,
    "created_at": "2025-06-13T06:10:07.605259",
    "updated_at": "2025-06-13T06:10:07.605260",
    "started_at": null,
    "completed_at": null,
    "user_id": "27893d278da3e42f2878gh90",
    "error": null,
    "worker_id": null,
    "priority": 0,
    "input": {
        "query": {
            "job_titles": [
                "Site/Civil Engineer"
            ],
            "keywords": null,
            "location_group": null,
            "location_types": [
                "In-Person"
            ],
            "geo_locations": [
                {
                    "city": "Richmond",
                    "region": "Virginia",
                    "country": "United States"
                }
            ],
            "experience": null,
            "yoe": {
                "min": 1.0,
                "max": 6.0
            },
            "include_yoe": null,
            "company_types": null,
            "company_name": "CompanyXYZ",
            "date_posted": null,
            "days_ago": null,
            "month": null,
            "salary": null,
            "include_no_salary": null,
            "currency": null,
            "job_types": [
                "Full-time"
            ],
            "job_category": null,
            "industry": [
                "Design",
                "Construction"
            ],
            "sub_industry": [
                "Architecture",
                "Building Construction"
            ],
            "visa": "false",
            "include_expired": null,
            "hide_seen_jobs": null,
            "user_id": null,
            "company_slug": null,
            "job_slug": null,
            "job_board": null,
            "sort_by": "relevance",
            "sort_order": "desc",
            "page": 1,
            "limit": 10
        },
        "format": "json"
    },
    "result": null
}

Error Responses

Returns when the API key is missing, invalid, or incorrect.
Returns when your account does not have permission to access the requested feature.
  • This usually means the feature is restricted to certain subscription tiers.
Returns when the request contains invalid or improperly formatted data.
  • Occurs when the industry field is missing, not a string, or doesn’t match any value from the list of valid industries.
  • Can also be returned if sub_industry is not a valid string from the list of allowed sub-industries.
  • May result from JSON decoding errors, such as malformed JSON or incorrect data types in the request body.
Returns when an unexpected error occurs on the server.
  • Also occurs during unhandled server-side failures or bugs that prevent the request from being processed.