---
title: "Update or delete custom object records"
method: POST
path: "/objects/batch/default/{object}"
tags: ["Custom Object Records"]
---

# Update or delete custom object records

`POST /objects/batch/default/{object}`

Makes a batch update or delete of custom object records.

### Limitations

This call has the following limitations:

* The maximum number of records that you can update by one call is 1,000.
* The maximum number of records that you can delete by one call is 1,000.
* The storage of empty strings in records is not supported.
* Null values must be formatted as the following example:
  ```
  {
    "action": {
      "type": "update",
      "records": {
        "64edb2a5-2796-4e95-9559-846f8636a01b": {
          "fieldName__c": null
        }
      }
    }
  }
  ```
* When creating or updating custom object records with relationship-type fields, Zuora verifies the related objects against the transactional databases, which are updated in near real-time. The record creation or modification fails upon unsuccessful verifications. <br />If the related objects are newly created in your tenant, it might need some time for the transactional database synchronization.

## Path parameters

- `object` string, required

## Headers

- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Track-Id` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Version` string, date

## Request body

- CustomObjectRecordBatchRequest — Request of processing custom object records in batch.
  - `action` CustomObjectRecordBatchAction, required — The batch action on custom object records
    - `allowPartialSuccess` boolean — Indicates whether the records that pass the schema validation should be updated when not all records in the request pass the schema validation. Only applicable when `type` is `update`.
    - `ids` string[] — Ids of the custom object records that you want to delete. Each ID must be a string of 36 characters. Only applicable when `type` is `delete`.
    - `records` CustomObjectRecordBatchUpdateMapping — Object records that you want to update. Only applicable when `type` is `update`.
    - `type` 'delete' | 'update', required — The type of the batch action

## Response `200`

OK

For the bacth `delete` action, it indicates the batch records have been successfully deleted.

For the batch `update` action, it indicates that the batch records have been partially or completely updated.

* If the `allowPartialSuccess` flag is set to `false`, the 200 response indicates that all object records have been successfully updated.
* If the `allowPartialSuccess` flag is set to `true`, the 200 response indicates that some records might not be succesffully updated and the error information might be contained in the response body.

- CustomObjectRecordsBatchUpdatePartialSuccessResponse
  - `error` CustomObjectRecordsErrorResponse
    - `code` integer
    - `details` CustomObjectRecordsWithError[]
      - `code` 71012520 | 71012521 | 71012522 | 71012523 | 71012524 | 71012525 | 71012526 | 71012530 — See <a href="https://docs.zuora.com/en/zuora-platform/extensibility/custom-objects/custom-objects-api/custom-objects-api-error-code" target="_blank">Custom Objects API error code</a> for details.
      - `message` string
      - `record` CustomObjectRecordWithAllFields — Record data from an object
        - `CreatedById` string — The creator's Id
        - `CreatedDate` string, date-time — The record creation time in the date-time format
        - `Id` string, uuid — The unique Id of the custom object record
        - `UpdatedById` string — The modifier's Id
        - `UpdatedDate` string, date-time — The record modification time in the date-time format
        - `type` string — The type of the custom object record. It is the API name of the custom object definition.
    - `message` string

## Other responses

- `400` — Failed schema validation For the batch `update` action, the 400 response only returns when the `allowPartialSuccess` flag is set to `false` and the batch records have failed schema validation.
- `401` — Unauthorized
- `500` — Internal error. Retry the returned records.

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
