---
title: "Get Search Batch"
method: GET
path: "/searches/batch/{id}"
tags: ["Search"]
---

# Get Search Batch

`GET /searches/batch/{id}`

Retrieve a SearchBatch by ID and return it in `SearchBatchResponse` format.

## Path parameters

- `id` string, uuid, required — The unique identifier of the search batch to retrieve searches for.

## Response `200`

Successful Response

- V1BusinessSearchBatchResponse — Represents a batch business search response. For real-time progress updates during batch processing, subscribe to SSE events on the /events endpoint and listen for SearchBatch.progress events.
  - `id` string, uuid, required — Unique identifier for the business search batch.
  - `name` string, required — The name of the business search batch.
  - `state` 'PENDING' | 'EXECUTING' | 'COMPLETED' | 'FAILED' | 'CANCELLED', required
  - `progress` number, nullable — Processing progress from 0.0 to 1.0. Null if not yet started.
  - `completed_count` integer, nullable — Number of rows that have been processed. Null if not yet started.
  - `total_count` integer, nullable — Total number of rows to process. Null if not yet started.
  - `created_at` string, date-time, required — The datetime the business search batch was created.
  - `options` string[] — Optional features to enable during business search execution.
  - `warnings` string[] — Any warnings that occurred.
  - `export_csv_uri` string, nullable — GCS URI for the pre-computed CSV export. Available after batch completion.
  - `export_jsonl_uri` string, nullable — GCS URI for the pre-computed JSONL export. Available after batch completion.
  - `report_version` integer, nullable — Report schema version. Available after batch completion.
  - `questionnaire` DataTestQuestionnaire — Answers collected from the data-test Product Selection step. Persisted on the parent :class:`osiris.models.SearchBatch` row as a JSONB column for later analysis, and echoed to Slack for real-time ops visibility.
    - `kyb` DataTestKYBAnswers — Business Verification / KYB answers from the data-test questionnaire.
      - `current_provider` string, nullable
      - `new_applications_per_month` integer, nullable
      - `avg_uw_time_hours` integer, nullable
      - `avg_uw_time_minutes` integer, nullable
      - `match_rate_pct` number, nullable
      - `approval_rate_pct` number, nullable
    - `web_presence` DataTestWebPresenceAnswers — Web Presence Review answers from the data-test questionnaire. The list of sub-products the prospect opted into for Web Presence (Industry Prediction, Website Analysis, etc.) is deliberately not captured here — those selections are already represented by :class:`osiris.enums.BusinessSearchOptions` on the parent batch (``options`` on :class:`BusinessSearchBatchRequest`).
      - `existing_workflow_step` boolean, nullable
      - `current_provider` string, nullable
    - `liens` DataTestLiensAnswers — Liens Search answers from the data-test questionnaire.
      - `current_provider` string, nullable
    - `litigations` DataTestLitigationsAnswers — Litigations Search answers from the data-test questionnaire.
      - `current_provider` string, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/baselayer/apis/baselayer-api-service.md) · [All operations](https://skmtc.net/baselayer/apis/baselayer-api-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/baselayer/baselayer-api-service/versions/0cc89938bc26/schema)
