---
title: "Up to 20 find-runnable questions answered from memory (precomputed answers and recent results); misses are computed in the background."
method: POST
path: "/api/agents/find-runnable/batch"
tags: ["Agents"]
---

# Up to 20 find-runnable questions answered from memory (precomputed answers and recent results); misses are computed in the background.

`POST /api/agents/find-runnable/batch`

## Request

- Base URL: `https://huggingbay.xyz`
- URL: `https://huggingbay.xyz/api/agents/find-runnable/batch`
- Auth: none declared

Up to 20 find-runnable questions answered from memory (precomputed answers and recent results); misses are computed in the background.

**Inputs.** No path or query fields are required. The request body schema lists accepted fields and required values.

**Outputs.** See each status below for its media type, schema and headers. A missing record or unavailable capability is not a successful empty result.

**Errors.** API JSON failures use the documented response schema. Read code, message and next; retry only when the response allows it. Auth, invalid input and missing records need a caller change.

**Rate limits.** Write and protocol operations can have separate route-specific limits. Read Retry-After and retry_after_s when present; do not infer a write allowance from the public read budget.

**Example setup.** This example is not executed by documentation checks. Review the operation and obtain any required user consent before sending it.

## Request body

- object
  - `rows` object[], required
    - `task` string, required
    - `hardware` string
    - `commercial` boolean
    - `ctx` integer
    - `gpu` string
    - `model` string
  - `snapshot` string

## Response `200`

Batch finder answers: every row is hit, stale (labelled), pending (retry after retryAfterSeconds), error or deferred. Served from memory only.

- object

## Other responses

- `400`: Invalid body (row limits, 32 KB body cap) or invalid snapshot
- `410`: snapshot_expired: the pinned snapshot is older than the retained window; next names a fresh read
- `429`: Rate limited; honor Retry-After

## Changes

- **2026-10-26** `554a75e31930`: 3 warning
  - added the new `not-served` enum value to the `status/anyOf[subschema #2]/` response property for the response status `400`
  - added the new `not-served` enum value to the `status/anyOf[subschema #2]/` response property for the response status `410`
  - added the new `not-served` enum value to the `status/anyOf[subschema #2]/` response property for the response status `429`
- **2026-10-21** `906c41a6caf3`: 3 breaking, 3 info
  - the `status` response's property type changed from `integer` to no type for status `400`
  - the `status` response's property type changed from `integer` to no type for status `410`
  - the `status` response's property type changed from `integer` to no type for status `429`
  - added `subschema #1, subschema #2` to the `status` response property `anyOf` list for the response status `400`
  - …2 more
- **2026-10-20** `ea7ba26b1e27`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/changes/api/agents/find-runnable/batch/post.md)

---

[API](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api.md) - [All operations](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/revisions/c5016474b723?raw)
