---
title: "Create or update profile attributes"
method: POST
path: "/api/cdp/profiles/public/v1/app/{app_id}/update-profile"
tags: ["Data Activation"]
---

# Create or update profile attributes

`POST /api/cdp/profiles/public/v1/app/{app_id}/update-profile`

A single request can be used to create or update multiple profile attributes.
The data payload should consist of a key-value map where each attribute's name is denoted by a key, along with its corresponding value.
It will exclusively impact the app associated with the provided `app_id` in the URL path.

Provided data must have at least one identifier:

  - ``user_id``
  - ``cookie_id``

## Path parameters

- `app_id` string, uuid, required — ID of the app.

## Request body

- object — Profile attributes object for creating and updating user custom attributes.
  - `identifiers` union, required — Identifiers associated with a user.
    - object
      - `user_id` string, required — User ID identifier
    - object
      - `cookie_id` string, hex, required — Cookie ID identifier
  - `attributes` object, required — Attributes of the occurred event.

## Response `202`

Request accepted and waiting for processing.

## Other responses

- `400` — Bad request response (e.g. missing GET parameter, parameter value out of bounds)
- `402` — Data Activation module is disabled
- `404` — Given organization was not found
- `422` — Data in body does not meet requirements (e.g. missing field)
- `500` — Internal application error response (some service encountered unexpected error)

---

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