---
title: "Batch people update"
method: PATCH
path: "/people/2/persons/batch"
tags: ["customer-engagement", "people", "person-profile"]
---

# Batch people update

`PATCH /people/2/persons/batch`

## Request

- Base URL: `https://api.infobip.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.infobip.com/people/2/persons/batch`
- Auth: one of:
  - HTTP basic
  - API key in header `Authorization`
  - API key in header `Authorization`
  - OAuth 2
    - Client credentials
    - Token URL: `https://api.infobip.com/auth/1/oauth2/token`

Use this method to update multiple person profiles with the data passed in the request body as follows:<br>1. New values for standard and custom profile attributes replace existing values on the profile. If no value is passed in the request, the attribute keeps its value.<br>2. Tags in the request are appended to the profile tag list.<br>3. New contact information (email addresses and phone numbers) in the request is appended to the contact list of the profile.<br>**NOTE** Array size of the batch update request is limited to `1000` persons.

## Request body

- object
  - `people` object[]: List of people.
    - `query` D4672690671974f6265c4d7a3cef5f9272fe4290e9edb608eab676ae3febd3a1IdentityQuery
      - `identifier` string: Person ID. ID type must match the `type` parameter. Some channels (e,g., Apple Business Chat) use identifiers that contain unsafe characters. Make sure you URL-encode them in your API request
      - `sender` string: Sender or application ID. `sender` is required for all identifier types except `ID`, `EXTERNAL_ID`, `PHONE`, `EMAIL`.
      - `type` 'ID' | 'EXTERNAL_ID' | 'PHONE' | 'EMAIL' | 'LINE' | 'FACEBOOK' | 'TELEGRAM' | 'PUSH' | 'WEB_PUSH' | 'LIVE_CHAT' | 'VIBER_BOTS' | 'INSTAGRAM' | 'INSTAGRAM_DM' | 'TWITTER' | 'APPLE_BUSINESS_CHAT' | 'KAKAO_SANGDAM' | 'OPEN_CHANNEL' | 'ZALO_FOLLOWER' | 'TIKTOK_BM' | 'WHATSAPP' | 'KAKAO_TALK'
    - `update` A8ed60f1ed4abc0dfe4d5460edd3205f89585f2cd4b436e4d83a1231d28c264cIamPersonV2
      - `address` string: Person's address, 256 characters max.
      - `birthDate` string: Person's date of birth, format `YYYY-MM-DD`.
      - `city` string: Person's city, 50 characters max.
      - `computedAttributes` object: Person's computed attributes grouped by type.
      - `contactInformation` 61aa42c3f981b5eedf39f88f62d783e335a4e6b75d3b1bbc6a07b0633bb93eb9IamPersonContactsV2
        - `appleBusinessChat` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Apple Business Chat destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `email` 61aa42c3f981b5eedf39f88f62d783e335a4e6b75d3b1bbc6a07b0633bb93eb9IamEmailContactV2[]: A list of person's email addresses. Max 100 emails per person.
          - `address` string: Person's email address. Must comply with the [email format](https://tools.ietf.org/html/rfc2822) and cannot exceed 255 characters. One person can have up to 100 email addresses.
        - `facebook` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Messenger destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `instagram` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Instagram destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `instagramDm` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Instagram DM destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `kakaoSangdam` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Kakao Sangdam destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `kakaoTalk` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's KakaoTalk destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `line` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Line destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `liveChat` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Live Chat destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `openChannel` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Open Channel destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `phone` 61aa42c3f981b5eedf39f88f62d783e335a4e6b75d3b1bbc6a07b0633bb93eb9IamPhoneContactV2[]: A list of person's phone numbers. Max 100 numbers per person.
          - `number` string: Person's phone number. Must be in [international format](https://en.wikipedia.org/wiki/E.164) and cannot exceed 50 characters. One person can have up to 100 phone numbers.
        - `push` 61aa42c3f981b5eedf39f88f62d783e335a4e6b75d3b1bbc6a07b0633bb93eb9IamPushContactV2[]: List of person's push registrations.
          - `additionalData` object: Additional data collected from the user's profile
          - `applicationId` string: Application Id on which the user is subscribed.
          - `isPrimary` boolean: Set to true if this device is a primary device of a user among other devices.
          - `registrationId` string: Push registration ID.
          - `systemData` object: System data collected from the user's profile
        - `telegram` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Telegram destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `tiktokBm` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's TikTok Business Messaging destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `twitter` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Twitter destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `viberBots` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Viber Bots destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `webpush` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonPushContact[]: A list of person's web push registrations
          - `additionalData` object: Additional data collected from the user's profile
          - `applicationId` string: Application Id on which the user is subscribed.
          - `registrationId` string: Push registration ID.
          - `systemData` object: System data collected from the user's profile
        - `whatsapp` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's WhatsApp destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
        - `zaloFollower` B19dbfd240ca6293d80ae57437ec266d186a81682210bc56a1b7636c4c62d0e7CommonOttContact[]: A list of person's Zalo Follower destinations.
          - `applicationId` string: Application Id on which the user is subscribed.
          - `systemData` object: System data collected from the user's profile.
          - `userId` string: Unique user ID for a person.
      - `country` string: Person's country, 50 characters max.
      - `createdAt` string: Date and time of creation. Has the following format: yyyy-MM-dd'T'HH:mm:ss.
      - `customAttributes` object: List of custom attributes for the person, 4096 characters max per value.
      - `externalId` string: Unique ID for a person from your or another external system, 256 characters max.
      - `firstName` string: Person's first name, 255 characters max.
      - `gender` 'MALE' | 'FEMALE'
      - `id` integer: Unique id of the entity.
      - `integrations` A8ed60f1ed4abc0dfe4d5460edd3205f89585f2cd4b436e4d83a1231d28c264cIamIntegrationsV2
        - `salesforce` A8ed60f1ed4abc0dfe4d5460edd3205f89585f2cd4b436e4d83a1231d28c264cIamSalesforceV2
          - `contactId` string: Salesforce contact id.
          - `leadId` string: Salesforce lead id.
      - `lastName` string: Person's last name, 255 characters max.
      - `middleName` string: Person's middle name, 50 characters max.
      - `modifiedAt` string: Date and time of last modification. Has the following format: yyyy-MM-dd'T'HH:mm:ss.
      - `modifiedFrom` 'API' | 'PORTAL' | 'WEB_SDK' | 'INTEGRATION' | 'PUSH' | 'FACEBOOK' | 'LINE' | 'TELEGRAM' | 'SALESFORCE' | 'DYNAMICS' | 'ZAPIER' | 'FORMS' | 'COMPUTED' | 'ANSWERS' | 'CONVERSATIONS'
      - `origin` 'API' | 'PORTAL' | 'WEB_SDK' | 'INTEGRATION' | 'PUSH' | 'FACEBOOK' | 'LINE' | 'TELEGRAM' | 'SALESFORCE' | 'DYNAMICS' | 'ZAPIER' | 'FORMS' | 'COMPUTED' | 'ANSWERS' | 'CONVERSATIONS'
      - `preferredLanguage` string: Person's preferred language. Must be in two letter ISO (xx) or language-region BCP-47 (xx-YY) format.
      - `profilePicture` string: URL for the person's profile picture, 2083 characters max.
      - `tags` string[]: List of tags that this person has.
      - `type` 'CUSTOMER' | 'LEAD'

## Response `200`

successful response

- 2a46bdef7a59052adf56f3586860f3d5ab1636f1aff3d3f91907d1203b8dad63BatchUpdateResponse
  - `results` 2a46bdef7a59052adf56f3586860f3d5ab1636f1aff3d3f91907d1203b8dad63BatchUpdateResult[]: List of any unsuccessful result from the batch operation for each processed entry. Example, email used in the request already exists.
    - `errors` 3206ab1528b990358dc5d8da723b52b5db6e1d582712d39b5ed66ac5c4b1e84fBatchOperationError[]: List of errors
      - `message` string: Error message
    - `isModified` boolean
    - `query` D4672690671974f6265c4d7a3cef5f9272fe4290e9edb608eab676ae3febd3a1IdentityQuery
      - `identifier` string: Person ID. ID type must match the `type` parameter. Some channels (e,g., Apple Business Chat) use identifiers that contain unsafe characters. Make sure you URL-encode them in your API request
      - `sender` string: Sender or application ID. `sender` is required for all identifier types except `ID`, `EXTERNAL_ID`, `PHONE`, `EMAIL`.
      - `type` 'ID' | 'EXTERNAL_ID' | 'PHONE' | 'EMAIL' | 'LINE' | 'FACEBOOK' | 'TELEGRAM' | 'PUSH' | 'WEB_PUSH' | 'LIVE_CHAT' | 'VIBER_BOTS' | 'INSTAGRAM' | 'INSTAGRAM_DM' | 'TWITTER' | 'APPLE_BUSINESS_CHAT' | 'KAKAO_SANGDAM' | 'OPEN_CHANNEL' | 'ZALO_FOLLOWER' | 'TIKTOK_BM' | 'WHATSAPP' | 'KAKAO_TALK'
    - `status` integer: HTTP status

## Other responses

- `207`: successful response
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `429`: Too Many Requests
- `500`: Internal Server Error
- `4XX`: Error responses
- `5XX`: Error responses

---

[API](https://skmtc.dev/infobip/apis/infobip-openapi-specification.md) - [All operations](https://skmtc.dev/infobip/apis/infobip-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/infobip/apis/infobip-openapi-specification/revisions/9dcbbaf902de?raw)
