Identity & platformscim
POST/scim/v2/organizations/{group_id}/Users
Provision a person.
create_scim_user
Public
This operation declares no security requirement: it takes no token.Audited · mutation
x-gitmoap-audit: {"kind":"audited","arg":"mutation"}
Quota · members per scope
x-gitmoap-quota: {"kind":"enforced","arg":"members_per_scope"}
They are invited with the organization's default role, and take it up at their first sign-in.
Parameters
Path
- group_idGroupId (string · uuid)The organization's top-level group
Request body
application/json- userNamestringThe person's sign-in name — for gitmoap, their email address.
- activebooleanoptional
falsetakes away the person's access to the organization;truegives it back. - displayNamestring or nulloptional
emailsarray of ScimEmailoptional
- The ScimEmail schema
- valuestring
- primaryboolean or nulloptional
- typestring or nulloptional
- externalIdstring or nulloptional
groupsarray of ScimMemberRefoptionalThe groups the person is in. Read-only: groups are changed through the group.
- The ScimMemberRef schema
- valuestringThe id of the user or group.
- displaystring or nulloptional
- 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-9b88"
}
Responses
201The userapplication/json
- userNamestringThe person's sign-in name — for gitmoap, their email address.
- activebooleanoptional
falsetakes away the person's access to the organization;truegives it back. - displayNamestring or nulloptional
emailsarray of ScimEmailoptional
- The ScimEmail schema
- valuestring
- primaryboolean or nulloptional
- typestring or nulloptional
- externalIdstring or nulloptional
groupsarray of ScimMemberRefoptionalThe groups the person is in. Read-only: groups are changed through the group.
- The ScimMemberRef schema
- valuestringThe id of the user or group.
- displaystring or nulloptional
- 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
201 exampleSynthesized example
{
"userName": "userName-35ef",
"active": true,
"displayName": "displayName-8293",
"emails": [
{
"value": "value-c151"
}
],
"externalId": "externalId-0da7",
"groups": [
{
"value": "value-a2e9"
}
],
"id": "id-909d",
"meta": {
"created": "2026-10-10T18:05:53Z",
"lastModified": "2026-10-12T13:29:42Z",
"location": "location-353c",
"resourceType": "resourceType-b0b8"
},
"name": {
"familyName": "familyName-a302",
"formatted": "formatted-44bf",
"givenName": "givenName-8eca"
},
"schemas": [
"schemas-4566"
]
}
400An invalid user, or an email outside the organization's verified domainsapplication/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-2ddb",
"schemas": [
"schemas-c892"
],
"status": "status-08c3"
}
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-b003",
"schemas": [
"schemas-096d"
],
"status": "status-0304"
}
409A user with that userName already existsapplication/json
Error codes
- CONFLICTThe request conflicts with the resource's current state;
reasonsays 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-13ca",
"schemas": [
"schemas-469f",
"schemas-cb29"
],
"status": "status-55c3"
}
429The organization holds as many people as it mayapplication/json
Error codes
- TOO_MANY_REQUESTSRetryableA quota, a rate limit or a transfer budget is spent. When the response carries
Retry-After, retry after that many seconds
- detailstring
- schemasarray of string
- statusstringThe HTTP status code, written as text, as the SCIM protocol requires.
- scimTypestring or nulloptional
429 exampleSynthesized example
{
"detail": "detail-e481",
"schemas": [
"schemas-901f",
"schemas-0906"
],
"status": "status-30ec"
}
CLI
gitmoap scim create-scim-user
- --group-ididThe organization's top-level group (id or group path)
- --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.