---
title: "Bulk table operations"
method: POST
path: "/bulk"
tags: ["Index"]
---

# Bulk table operations

`POST /bulk`

Sends multiple operatons like inserts, updates, replaces or deletes. 
For each operation it's object must have same format as in their dedicated method. 
The method expects a raw string as the batch in NDJSON.
 Each operation object needs to be serialized to 
 JSON and separated by endline (\n). 
 
  An example of raw input:
  
  ```
  {"insert": {"table": "movies", "doc": {"plot": "A secret team goes to North Pole", "rating": 9.5, "language": [2, 3], "title": "This is an older movie", "lon": 51.99, "meta": {"keywords":["travel","ice"],"genre":["adventure"]}, "year": 1950, "lat": 60.4, "advise": "PG-13"}}}
  \n
  {"delete": {"table": "movies","id":700}}
  ```
  
  Responds with an object telling whenever any errors occured and an array with status for each operation:
  
  ```
  {
    'items':
    [
      {
        'update':{'table':'products','id':1,'result':'updated'}
      },
      {
        'update':{'table':'products','id':2,'result':'updated'}
      }
    ],
    'errors':false
  }
  ```

## Response `200`

item updated

- BulkResponse — Success response for bulk search requests
  - `items` object[] — List of results
  - `errors` boolean — Errors occurred during the bulk operation
  - `error` string — Error message describing an error if such occurred
  - `current_line` integer — Number of the row returned in the response
  - `skipped_lines` integer — Number of rows skipped in the response

## Other responses

- `default` — error

## Changes

- **2025-02-13** `8f90aac993c7` — 1 warning, 1 info
  - removed the optional property `error/oneOf[#/components/schemas/responseErrorDetails]/index` from the response with the `default` status
  - added the optional property `error/oneOf[#/components/schemas/responseErrorDetails]/table` to the response with the `default` status
- **2024-11-14** `88a0ac494d8e` — 1 warning, 1 info
  - removed the optional property `error/oneOf[#/components/schemas/responseErrorDetails]/table` from the response with the `default` status
  - added the optional property `error/oneOf[#/components/schemas/responseErrorDetails]/index` to the response with the `default` status

[Change history](https://skmtc.dev/manticoresoftware/apis/manticore-search-client/changes/bulk/post.md)

---

[API](https://skmtc.dev/manticoresoftware/apis/manticore-search-client.md) · [All operations](https://skmtc.dev/manticoresoftware/apis/manticore-search-client/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/manticoresoftware/manticore-search-client/revisions/eb39c8083035/schema)
