Skip to content

Create or update user

POST
/users
curl --request POST \
--url https://safe-api.safetyradar.com/v2/users \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "email": "hello@example.com", "fullName": "example", "phoneNumber": "example", "role": "admin", "externalId": "example", "supervisorId": "example", "departmentId": "example", "locationId": "example", "teamId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "permissionGroupId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" }'

Create a new user or update existing if externalId matches. Returns 201 if created, 200 if updated.

Media typeapplication/json
object
email
required
string format: email
fullName
required
string
>= 1 characters
phoneNumber
string
nullable /^\+[1-9]\d{6,14}$/
role
string
Allowed values: admin member safety_center_user
externalId
string
supervisorId
string
departmentId
string
locationId
string
teamId
string format: uuid
permissionGroupId
string format: uuid

User updated (existing user found by externalId or email)

Media typeapplication/json
object
data
required
object
id
required
string format: uuid
email
required
string
fullName
required
string
nullable
phoneNumber
required
string
nullable
avatarUrl
required
string
nullable
role
required
string
Allowed values: admin member safety_center_user
externalId
required
string
nullable
supervisorId
required
string format: uuid
nullable
supervisorEmail
required
string
nullable
departments
required
Array<object>
object
id
required
string format: uuid
name
required
string
slug
required
string
locations
required
Array<object>
object
id
required
string format: uuid
name
required
string
slug
required
string
nullable
teams
required
Array<object>
object
id
required
string format: uuid
name
required
string
slug
required
string
createdAt
required
string
updatedAt
required
string
Example
{
"data": {
"role": "admin"
}
}

User created

Media typeapplication/json
object
data
required
object
id
required
string format: uuid
email
required
string
fullName
required
string
nullable
phoneNumber
required
string
nullable
avatarUrl
required
string
nullable
role
required
string
Allowed values: admin member safety_center_user
externalId
required
string
nullable
supervisorId
required
string format: uuid
nullable
supervisorEmail
required
string
nullable
departments
required
Array<object>
object
id
required
string format: uuid
name
required
string
slug
required
string
locations
required
Array<object>
object
id
required
string format: uuid
name
required
string
slug
required
string
nullable
teams
required
Array<object>
object
id
required
string format: uuid
name
required
string
slug
required
string
createdAt
required
string
updatedAt
required
string
Example
{
"data": {
"role": "admin"
}
}

Bad request - validation error or invalid reference

Media typeapplication/json
object
code
required
string
message
required
string
details
object
key
additional properties
nullable
Examplegenerated
{
"code": "example",
"message": "example",
"details": {
"additionalProperty": "example"
}
}

Unauthorized

Media typeapplication/json
object
code
required
string
message
required
string
details
object
key
additional properties
nullable
Examplegenerated
{
"code": "example",
"message": "example",
"details": {
"additionalProperty": "example"
}
}