---
title: batch_not_cancellable — Batch not cancellable
description: "HTTP 409 batch_not_cancellable: Batch is in status status and cannot be cancelled."
canonical_url: "https://cascades.crscreditapi.com/docs/api/errors/batch_not_cancellable"
doc_version: "1.0.0"
last_updated: "2026-10-09T18:04:24Z"
http_status: 409
source: config/api_error_codes.yml
---

# `batch_not_cancellable` — Batch not cancellable

**HTTP 409 Conflict**

Message: "Batch is in status <status> and cannot be cancelled."

Envelope schema: `ErrorEnvelope` in [openapi.json](https://cascades.crscreditapi.com/openapi.json#/components/schemas/ErrorEnvelope) ([YAML](https://cascades.crscreditapi.com/openapi.yaml)).

## What causes it
- The batch is not `pending`, `running`, or `interrupted` — it already completed, failed, or was cancelled.

## How to fix it
1. Read the final counts with `GET /batches/{id}` and the per-row outcomes with `GET /batches/{id}/executions`.

## Operations that return it
- [POST /batches/{id}/cancel](/docs/api/batches/cancel-batch) — Cancel a batch

## Example response

```http
HTTP/1.1 409 Conflict
Content-Type: application/json
```

```json
{
  "error": {
    "code": "batch_not_cancellable",
    "message": "Batch is in status <status> and cannot be cancelled.",
    "details": [],
    "request_id": "6f1c2a3e-8d4b-4c5e-9f0a-1b2c3d4e5f60",
    "doc_url": "https://cascades.crscreditapi.com/docs/api/errors/batch_not_cancellable"
  }
}
```

## Related
- [/docs/concepts/batches](/docs/concepts/batches)

[All error codes](https://cascades.crscreditapi.com/docs/api/errors.md)

## Sitemap

See the full [sitemap](https://cascades.crscreditapi.com/sitemap.md) for all pages.
