---
title: "ImportMappingMasks.batch_create_or_update"
method: POST
path: "/entities/ImportMappingMasks/batch-modify"
tags: ["Import"]
---

# ImportMappingMasks.batch_create_or_update

`POST /entities/ImportMappingMasks/batch-modify`

## Request

- Base URL: `https://us-east.api.coevera.com/api/v100/rest/spaces/your_space_id`
- URL: `https://us-east.api.coevera.com/api/v100/rest/spaces/your_space_id/entities/ImportMappingMasks/batch-modify`
- Auth: HTTP basic
- TypeScript: <https://skmtc.dev/coevera/apis/coevera-crm-api/docs/entities/ImportMappingMasks/batch-modify/post.ts> (a function with typed inputs; its response is checked against the schema)

Creates or updates ImportMappingMask records in one request: an item with an id updates that record, an item without one creates a new record.

## Query parameters

- `validation-level` integer
- `rollback-method` 0 | 1

## Request body

- BatchImportMappingMaskInput[]
  - `entity_api_name` string: API name of the entity this mask is configured for (e.g. "Account", "Contact", a custom entity's API name).
  - `entity_type` 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8: Entity the mask imports records into, such as leads, accounts, users or product prices. For custom entities, entity_api_name identifies the custom entity. Integer enum value: 1 - Lead, 2 - Opportunity, 3 - Account, 4 - Contact, 5 - Client, 6 - Product, 7 - ProductPriceListPrice, 8 - CustomEntity
  - `mapping` object: How the import file fills each field, as a JSON array of objects conforming to the `ImportMappingMaskItem` type: field_id, mapping_type (ColumnIndex, UseDefaultValues or CalculateValue) and, for ColumnIndex, column_index. Validated on write.
  - `name` string: Display name of the mask.
  - `owner_id` string, uuid: Id of the owning user.
  - `relation_types` object: Record type selected for each mapped relation field, as a JSON array of objects conforming to the `ImportMappingRelationType` type, each with field_id and entity_type_id. Validated on write.
  - `share_mode` 0 | 1 | 2: Who besides the owner can use the import mapping mask: nobody (Private, the default), the users and sales units in sharing_clients and sharing_units, or all users. Integer enum value: 1 - Private, 2 - Public, 0 - SelectedUnitsAndUsers
  - `revision` integer: Revision when entity was lastly changed.
  - `sharing_clients` object[]: Users granted shared access to this import mapping mask (custom share mode).
    - `id` string, uuid: Id of the related Client record.
  - `sharing_units` object[]: Sales units granted shared access to this import mapping mask (custom share mode).
    - `id` string, uuid: Id of the related SalesUnit record.
  - `id` string, uuid: ID of object to update.

## Response `200`

Result per item, in request order: the id of the created or updated record, or the error.

- object
  - `success` boolean: True when the request succeeded; false on error.
  - `data` union[]
    - union
      - string, uuid: Id of the created or updated record.
      - Error: The body of every REST error. `code` and `name` are stable identifiers; `message` is for people. The full list of codes is at https://developers.coevera.com/reference/errors/.
        - `http_status` integer, required: HTTP status code.
        - `code` integer: Numeric code of the API error.
        - `name` string: Name of the API error.
        - `message` string: Message describing the error.
        - `success` boolean, required: Always false on error.

## Other responses

- `400`: Bad request: a bad or unknown parameter (codes 117, 118), a missing permission (code 50), conflicting data (code 2002) or any other API error. The REST API answers 400 where others answer 403 or 409; check `code`.
- `401`: Not authenticated: missing or wrong credentials, a credential of another space, or an expired token (code 401, ERROR_UNAUTHORIZED).
- `422`: Validation failed (code 40000, with the failing fields) or a required parameter is missing (code 119). By default one failed item fails a whole batch and nothing is written.
- `429`: Too many requests (code 182). Wait for the seconds in Retry-After, then retry.
- `500`: Unexpected server error (code 1000, ERROR_UNKNOWN).

---

[API](https://skmtc.dev/coevera/apis/coevera-crm-api.md) - [All operations](https://skmtc.dev/coevera/apis/coevera-crm-api/llms.txt) - [OpenAPI document](https://skmtc.dev/coevera/apis/coevera-crm-api/revisions/40ebbc83f179?raw)
