---
title: "Batch Update User Properties"
method: POST
path: "/{WSID}/{version}/profiles/properties/batch"
tags: ["User Properties"]
---

# Batch Update User Properties

`POST /{WSID}/{version}/profiles/properties/batch`

This API enables you to modify user properties of your users listed in your [User Profiles](../user-profiles-overview) in bulk:
- [Update User Properties](./update-user-property) - `$set`
- [Set Unset Properties](./set-an-unset-property) - `$once`
- [Increment/Decrement Numeric Properties](./increment-decrement-numeric-property) - `$add`
- [Append Values to List](./append-values-to-list) - `$append`
- [Remove Values From List](./remove-value-from-list) - `$remove`
- [Unset User Properties](./unset-user-property) - `$unset`

**Please refer to function specific API documentation for [\$set](./update-user-property), [\$once](./set-an-unset-property), [\$add](./increment-decrement-numeric-property), [\$append](./append-values-to-list), [\$remove](./remove-value-from-list), [\$unset](./unset-user-property) before using this API.**

**Note:** The user properties in User Profiles can be used to filter your users for creating [user cohorts](../creating-cohorts) and [campaigns](../campaign_creation#creating-a-campaign-using-cohort).

## Path parameters

- `WSID` string, required
- `version` 'live' | 'test', required

## Request body

- UserPropertyBulk
  - `batch` object[], required — Enter an array of objects with `distinct_id` and `action` to perform on the user properties
    - `distinct_id` string, required — Enter the distinct ID that you use to identify the recipient.
    - `action` object, required
      - `$set` SetUserPropertyFields — Enter the property name as JSON key and the value to set as JSON value
      - `$once` SetUserPropertyOnceFields — Enter the property name as JSON key and the value to set as JSON value
      - `$add` IncrementUserPropertyFields — Enter the property name as JSON key and the numeric value to increment/decrement as JSON value
      - `$append` AppendToUserPropertyFields — Enter the property name as JSON key and the numeric or string value to append as JSON value
      - `$remove` RemoveFromUserPropertyListFields — Enter the property name as JSON key and the value to remove as JSON value
      - `$unset` string[] — Enter the property names to unset in an array

## Response `202`

Request has been accepted and will be processed asynchronously.

- object
  - `request_id` string, required
  - `batch` object[], required
    - `$set` string
    - `$once` string
    - `$add` string
    - `$append` string
    - `$remove` string
    - `$unset` string

## Other responses

- `400` — $unset object is empty
- `401` — API Key or Workspace ID is invalid. User is unauthorised.

---

[API](https://skmtc.net/fynoio/apis/fyno-rest-api.md) · [All operations](https://skmtc.net/fynoio/apis/fyno-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fynoio/fyno-rest-api/versions/021088e9cb30/schema)
