Skip to content
GitmoapAPIBeta
Identity & platformscim
PUT/scim/v2/organizations/{group_id}/Users/{scim_user_id}

Replace a person's attributes; `active: false` de-provisions them.

replace_scim_user
  • Public
    This operation declares no security requirement: it takes no token.
  • Audited · mutation

    x-gitmoap-audit: {"kind":"audited","arg":"mutation"}

De-provisioning removes, together, the person's access in the organization, their places on its teams, their personal access tokens bound to it and any invite still waiting for them; their account and their work are untouched. active: true gives access back — the organization's default role and their team places once they have signed in, else a fresh invite. A new userName must be an email address on a domain the organization has verified, and the organization's last owner cannot be de-provisioned.

Parameters

Path
  • group_idGroupId (string · uuid)The organization's top-level group
  • scim_user_idScimUserId (string · uuid)SCIM user ID

Request body

application/json
  • userNamestringThe person's sign-in name — for gitmoap, their email address.
  • activebooleanoptionalfalse takes away the person's access to the organization; true gives it back.
  • displayNamestring or nulloptional
  • emailsarray of ScimEmailoptional
  • externalIdstring or nulloptional
  • groupsarray of ScimMemberRefoptionalThe groups the person is in. Read-only: groups are changed through the group.
  • idstring or nulloptional
  • metaScimMeta or nulloptional
    • The ScimMeta schema
    • createdstring · date-time
    • lastModifiedstring · date-time
    • locationstring
    • resourceTypestring
  • nameScimName or nulloptional
    • The ScimName schema
    • familyNamestring or nulloptional
    • formattedstring or nulloptional
    • givenNamestring or nulloptional
  • schemasarray of stringoptional
Request body exampleSynthesized example
{
"userName": "userName-f751"
}

Responses

200The userapplication/json
  • userNamestringThe person's sign-in name — for gitmoap, their email address.
  • activebooleanoptionalfalse takes away the person's access to the organization; true gives it back.
  • displayNamestring or nulloptional
  • emailsarray of ScimEmailoptional
  • externalIdstring or nulloptional
  • groupsarray of ScimMemberRefoptionalThe groups the person is in. Read-only: groups are changed through the group.
  • idstring or nulloptional
  • metaScimMeta or nulloptional
    • The ScimMeta schema
    • createdstring · date-time
    • lastModifiedstring · date-time
    • locationstring
    • resourceTypestring
  • nameScimName or nulloptional
    • The ScimName schema
    • familyNamestring or nulloptional
    • formattedstring or nulloptional
    • givenNamestring or nulloptional
  • schemasarray of stringoptional
200 exampleSynthesized example
{
"userName": "userName-3240",
"active": true,
"displayName": "displayName-f591",
"emails": [
{
"value": "value-733a"
},
{
"value": "value-4919"
}
],
"externalId": "externalId-e3e6",
"groups": [
{
"value": "value-4bbf"
},
{
"value": "value-4ab5"
}
],
"id": "id-415a",
"meta": {
"created": "2026-10-12T16:43:45Z",
"lastModified": "2026-10-16T10:16:16Z",
"location": "location-55e1",
"resourceType": "resourceType-bd7d"
},
"name": {
"familyName": "familyName-62e7",
"formatted": "formatted-be1d",
"givenName": "givenName-8836"
},
"schemas": [
"schemas-42df"
]
}
400An invalid userapplication/json
Error codes
  • BAD_REQUESTThe request is malformed: a parameter or a body field is not a well-formed value of its type
  • detailstring
  • schemasarray of string
  • statusstringThe HTTP status code, written as text, as the SCIM protocol requires.
  • scimTypestring or nulloptional
400 exampleSynthesized example
{
"detail": "detail-93da",
"schemas": [
"schemas-6cf0"
],
"status": "status-a521"
}
401No valid SCIM token of this organizationapplication/json
Error codes
  • UNAUTHORIZEDNo credential was sent, or the one sent is invalid, expired or revoked
  • detailstring
  • schemasarray of string
  • statusstringThe HTTP status code, written as text, as the SCIM protocol requires.
  • scimTypestring or nulloptional
401 exampleSynthesized example
{
"detail": "detail-6739",
"schemas": [
"schemas-b34c",
"schemas-3312"
],
"status": "status-afab"
}
404User not foundapplication/json
Error codes
  • NOT_FOUNDThe resource does not exist — or exists and you cannot see it: a private resource you have no access to answers exactly as an absent one does
  • detailstring
  • schemasarray of string
  • statusstringThe HTTP status code, written as text, as the SCIM protocol requires.
  • scimTypestring or nulloptional
404 exampleSynthesized example
{
"detail": "detail-f8a6",
"schemas": [
"schemas-9c1f"
],
"status": "status-899e"
}
409The person is the organization's last owner, or the userName is takenapplication/json
Error codes
  • CONFLICTThe request conflicts with the resource's current state; reason says how
  • detailstring
  • schemasarray of string
  • statusstringThe HTTP status code, written as text, as the SCIM protocol requires.
  • scimTypestring or nulloptional
409 exampleSynthesized example
{
"detail": "detail-1f92",
"schemas": [
"schemas-8759"
],
"status": "status-5a75"
}

CLI

gitmoap scim replace-scim-user

  • --group-ididThe organization's top-level group (id or group path)
  • --scim-user-ididSCIM user ID
  • --activeflagoptional`false` takes away the person's access to the organization; `true` gives it back.
  • --displayNamestringoptional
  • --emailsjsonoptional
  • --externalIdstringoptional
  • --groupsjsonoptionalThe groups the person is in. Read-only: groups are changed through the group.
  • --idstringoptional
  • --metajsonoptional
  • --namejsonoptional
  • --schemasjsonoptional
  • --userNamestringThe person's sign-in name — for gitmoap, their email address.

Used in these guides