---
title: "Update Cube Values (batch)"
method: POST
path: "/cube/update_batch"
tags: ["Cube Data"]
---

# Update Cube Values (batch)

`POST /cube/update_batch`

Submit multiple matrix publishes in one request. Batch-level `message`, `currency`, and `metadata` apply to the whole run; each element of `publishes` contains a `matrix` (and optional per-publish `metadata`). Publishes are processed in order in the background. A batch may contain at most 50 publishes. Overlapping subcubes between any two publishes are rejected with 400. Optional per-publish `metadata.Range` sets the range label in the completion email (same key family as Document, Sheet, Software, URL, Publish Currency, Range); otherwise the server uses `Range {index}`.

## Request body

- CubeBatchUpdateRequest
  - `message` string
  - `metadata` object
  - `currency` object
  - `publishes` CubeBatchUpdatePublishItem[], required
    - `matrix` object, required
    - `metadata` object
    - `sheet_name` string
    - `range_name` string

## Response `202`

Batch accepted for asynchronous processing. `backgrounding_info` includes `batch_id` and `publish_count`.

- CubeBatchDataResponse
  - `backgrounding_info` object, required

## Other responses

- `400` — Validation failed. Possible error codes: `BATCH_SUBCUBE_INTERSECTION` - Two or more publishes overlap in the cube. `meta.conflicting_ranges` lists the offending publishes. `BATCH_PUBLISH_COUNT_EXCEEDED` - Batch contains more than 50 publishes. `meta.limit` and `meta.count` carry the configured maximum and the submitted count.

---

[API](https://skmtc.net/cubesoftware/apis/cube-api.md) · [All operations](https://skmtc.net/cubesoftware/apis/cube-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cubesoftware/cube-api/revisions/67d9f45bb99b/schema)
