---
title: "Create a Batch Job"
method: POST
path: "/v1/search/batches"
tags: ["Batch Search"]
---

# Create a Batch Job

`POST /v1/search/batches`

Process large volumes of requests asynchronously with [50% lower costs](/getting-started/bigdata_api_pricing).

Batch Search provides a simple set of endpoints to initiate batch processing jobs, monitor progress as requests are executed, and collect results once processing completes.

Each batch begins with a `.jsonl` file where every line represents an individual Search request.

Once your input file is ready, call the following endpoint to obtain a `batch_id` and `presigned_url`.

Copy the `presigned_url` from the response. You will need this URL to [upload your input file](/api-reference/batch-search/upload-your-input-file).

For a step-by-step walkthrough, see the [Batch Search how-to guide](/how-to-guides/search/batch_search).

## Response `200`

OK

- BatchJobUploadResponse
  - `batch_id` string, required — A unique identifier for your batch job. Use this ID to [check the status of your batch](/api-reference/batch-search/get-batch-job-info).
  - `presigned_url` string, uri, required — A temporary, secure URL for uploading your input file. Upload your .jsonl file to this URL [using a PUT request](/api-reference/batch-search/upload-your-input-file). Once uploaded, your batch job will begin processing automatically.

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.dev/bigdata/apis/bigdata-structured-data-api.md) · [All operations](https://skmtc.dev/bigdata/apis/bigdata-structured-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bigdata/bigdata-structured-data-api/revisions/18082de268c4/schema)
