---
title: "Changes to Update user's team membership."
method: PUT
path: "/teams/{teamId}/memberships/{userId}"
---

# Changes to Update user's team membership.

`PUT /teams/{teamId}/memberships/{userId}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 2 of 8 revisions.

- **2026-04-03** `9db0d09caf2a`: 6 info
- **2025-05-16** `80a3a05166d4`: 9 breaking, 27 warning, 42 info

## Changes

- **2026-04-03** `9db0d09caf2a`: 6 info
  - added the optional property `isEnabled` to the response with the `200` status (media type: text/plain)
  - added the optional property `isEnabled` to the response with the `200` status (media type: application/json)
  - added the optional property `isEnabled` to the response with the `200` status (media type: text/json)
  - added the optional property `options` to the response with the `200` status (media type: text/plain)
  - added the optional property `options` to the response with the `200` status (media type: application/json)
  - added the optional property `options` to the response with the `200` status (media type: text/json)
- **2025-05-16** `80a3a05166d4`: 9 breaking, 27 warning, 42 info
  - removed the media type `application/json` for the response with the status `204`
  - removed the media type `text/json` for the response with the status `204`
  - removed the media type `text/plain` for the response with the status `204`
  - added `#/components/schemas/ContactAddressInfo, #/components/schemas/PhoneContactAddressInfo` to the `contactAddresses/items/` response property `oneOf` list for the response status `200` (media type: text/plain)
  - added `#/components/schemas/ContactAddressInfo, #/components/schemas/PhoneContactAddressInfo` to the `contactAddresses/items/` response property `oneOf` list for the response status `200` (media type: application/json)
  - added `#/components/schemas/ContactAddressInfo, #/components/schemas/PhoneContactAddressInfo` to the `contactAddresses/items/` response property `oneOf` list for the response status `200` (media type: text/json)
  - the `contactAddresses/items/` response's property type changed from `object` to no type for status `200` (media type: text/plain)
  - the `contactAddresses/items/` response's property type changed from `object` to no type for status `200` (media type: application/json)
  - the `contactAddresses/items/` response's property type changed from `object` to no type for status `200` (media type: text/json)
  - removed the optional property `contactAddresses/items/address` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/address` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/address` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/channel` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/channel` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/channel` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/created` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/created` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/created` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/device` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/device` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/device` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/id` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/id` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/id` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/lastUpdated` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/lastUpdated` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/lastUpdated` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/options` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/options` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/options` from the response with the `200` status (media type: text/json)
  - removed the optional property `contactAddresses/items/userId` from the response with the `200` status (media type: text/plain)
  - removed the optional property `contactAddresses/items/userId` from the response with the `200` status (media type: application/json)
  - removed the optional property `contactAddresses/items/userId` from the response with the `200` status (media type: text/json)
  - removed the optional property `dutyInfo` from the response with the `200` status (media type: text/plain)
  - removed the optional property `dutyInfo` from the response with the `200` status (media type: application/json)
  - removed the optional property `dutyInfo` from the response with the `200` status (media type: text/json)
  - api tag `Teams` added
  - api tag `TeamsMemberships` removed
  - added the new optional `query` request parameter `setUserOnDuty`
  - added the optional property `dutyInfos` to the response with the `200` status (media type: text/plain)
  - …38 more

---

[Operation](https://skmtc.dev/signl4/apis/signl4-api-v1/docs/teams/:teamId/memberships/:userId/put.md) - [API](https://skmtc.dev/signl4/apis/signl4-api-v1.md) - [Page](https://skmtc.dev/signl4/apis/signl4-api-v1/changes/teams/:teamId/memberships/:userId/put)
