---
title: "Replace a profile"
method: PUT
path: "/profiles/{user_id}"
tags: ["User Profiles"]
---

# Replace a profile

`PUT /profiles/{user_id}`

When using `PUT`, be sure to include all the key-value pairs required by the recipient's profile. 
Any key-value pairs that exist in the profile but fail to be included in the `PUT` request will be 
removed from the profile. Remember, a `PUT` update is a full replacement of the data. For partial updates, 
use the [Patch](https://www.courier.com/docs/reference/profiles/patch/) request.

## Path parameters

- `user_id` string, required

## Request body

- object
  - `profile` object, required

## Response `200`

- ReplaceProfileResponse
  - `status` 'SUCCESS', required

## Other responses

- `400`

## Changes

- **2025-10-15** `e67d02739533` — 2 info
  - api tag `User Profiles` added
  - api tag `Profiles` removed

[Change history](https://skmtc.dev/trycourier/apis/courier/changes/profiles/:user_id/put.md)

---

[API](https://skmtc.dev/trycourier/apis/courier.md) · [All operations](https://skmtc.dev/trycourier/apis/courier/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/trycourier/courier/revisions/b07d3a8aa2fe/schema)
