Socotra
API ReferenceBusiness Account API

User Management API

ActionEndpoint
Create a UserPOST/auth/users
Fetch My User DetailsGET/auth/users/whoami
Fetch a User by NameGET/auth/users/username/{username}
Fetch a User by LocatorGET/auth/users/{locator}
Fetch Multiple UsersGET/auth/users/list
Fetch Multiple Basic UsersGET/auth/users/basic/list
Update a UserPATCH/auth/users/{locator}
Reset a User's PasswordPATCH/auth/users/{locator}/passwordreset
Delete a UserDELETE/auth/users/{locator}
Create a RolePOST/auth/roles
Fetch a RoleGET/auth/roles/{locator}
Update a RolePATCH/auth/roles/{locator}
Fetch Multiple RolesGET/auth/roles/list
Delete a RoleDELETE/auth/roles/{locator}
Fetch Multiple Tenant RolesGET/auth/roles/tenant/{tenantLocator}/list
Fetch a Tenant RoleGET/auth/roles/tenant/{tenantLocator}/{roleLocator}
Create a Tenant RolePOST/auth/roles/tenant/{tenantLocator}/{roleLocator}
Update a Tenant RolePATCH/auth/roles/tenant/{tenantLocator}/{roleLocator}
Delete a Tenant RoleDELETE/auth/roles/tenant/{tenantLocator}/{roleLocator}
Fetch Available PermissionsGET/auth/roles/permissions
Fetch User PermissionsGET/auth/users/{locator}/permissions
Fetch a User's Tenant PermissionsGET/auth/users/{userLocator}/tenant/{tenantLocator}/permissions
Fetch Grouped Token PermissionsPOST/auth/users/tokens/permissions
Update User RolesPATCH/auth/users/{locator}/roles
Update a User's Tenant AssignmentsPATCH/auth/users/{locator}/tenants

Users

Create a User

Create a UsercreateUser
POST/auth/users

Parameters

NameInTypeRequiredDescription
enableUserqueryboolean?NoWhen true, user will be active (enabled) even if password is not set. Useful for SSO since user cannot use any other credentials to log in
Response:UserResponse
Security Group:users
Permission:
add
UserCreateRequest

Required properties

PropertyTypeDescription
firstNamestring
lastNamestring
userNamestringA user name in email format
passwordstring
serviceAccountboolean
temporaryPasswordboolean

Optional properties

PropertyTypeDescription
emailstring?
rolesstring[]?
tenantsstring[]?
UserResponse

Required properties

PropertyTypeDescription
locatoruuid
firstNamestring
lastNamestring
userNamestring
serviceAccountboolean
tenantsstring[]

Optional properties

PropertyTypeDescription
emailstring?
permissionsstring[]?
rolesstring[]?

Fetch My User Details

Fetch My User DetailsfetchMyUserDetails
GET/auth/users/whoami
Response:UserResponse
Security Group:users
Permission:
custom

Fetch a User by Name

Fetch a User by NamefetchUserByName
GET/auth/users/username/{username}

Parameters

NameInTypeRequiredDescription
usernamepathstringYes
Response:UserResponse[]
Security Group:users
Permission:
read

Fetch a User by Locator

Fetch a User by LocatorfetchUserByLocator
GET/auth/users/{locator}

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Response:UserResponse
Security Group:users
Permissions:
custom,read

Fetch Multiple Users

Fetch Multiple UsersfetchMultipleUsers
GET/auth/users/list

Parameters

NameInTypeRequiredDescription
offsetqueryinteger?No
countqueryinteger?No
extendedqueryboolean?NoWhen false, returns a bare array.
Security Group:users
Permissions:
read,list
UserListResponse

Required properties

PropertyTypeDescription
listCompletedboolean
itemsUserResponse[]

Fetch Multiple Basic Users

Fetch Multiple Basic UsersfetchMultipleBasicUsers
GET/auth/users/basic/list

This endpoint returns a simplified response and therefore has a higher count limit compared to 'fetchMultipleUsers'.

Parameters

NameInTypeRequiredDescription
offsetqueryinteger?No
countqueryinteger?No
extendedqueryboolean?No
Security Group:users
Permissions:
read,list
BasicUserListResponse

Required properties

PropertyTypeDescription
listCompletedboolean
itemsBasicUserResponse[]
BasicUserResponse

Required properties

PropertyTypeDescription
locatorulid
userNamestring

Optional properties

PropertyTypeDescription
firstNamestring?
lastNamestring?

Update a User

Update a UserupdateUser
PATCH/auth/users/{locator}

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Response:UserResponse
Security Group:users
Permissions:
update,custom
UserUpdateRequest

Required properties

PropertyTypeDescription
firstNamestring
lastNamestring
tenantsstring[]

Optional properties

PropertyTypeDescription
emailstring?
permissionsstring[]?
rolesstring[]?

Reset a User's Password

Reset a User's PasswordresetUserPassword
PATCH/auth/users/{locator}/passwordreset

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Request:string
Response:void
Security Group:users
Permission:
password-reset

Delete a User

Delete a UserdeleteUser
DELETE/auth/users/{locator}

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Response:void
Security Group:users
Permission:
delete

Roles

Create a Role

Create a RolecreateRole
POST/auth/roles
Response:RoleResponse
Security Group:roles
Permission:
add
RoleCreateRequest

Required properties

PropertyTypeDescription
namestring
descriptionstring
permissionsstring[]
RoleResponse

Required properties

PropertyTypeDescription
locatorulid
namestring
descriptionstring
versioninteger
createdAtdatetime
createdByuuid
permissionsstring[]

Fetch a Role

Fetch a RolegetRole
GET/auth/roles/{locator}

Parameters

NameInTypeRequiredDescription
locatorpathulidYes
Response:RoleResponse
Security Group:roles
Permission:
read

Update a Role

Update a RoleupdateRole
PATCH/auth/roles/{locator}

Parameters

NameInTypeRequiredDescription
locatorpathulidYes
Response:RoleResponse
Security Group:roles
Permission:
update
RoleUpdateRequest

Required properties

PropertyTypeDescription
namestring
descriptionstring
versioninteger
addPermissionsstring[]
removePermissionsstring[]

Fetch Multiple Roles

Fetch Multiple RolesfetchMultipleRoles
GET/auth/roles/list

Parameters

NameInTypeRequiredDescription
offsetqueryinteger?No
countqueryinteger?No
extendedqueryboolean?NoWhen false, returns a bare array.
Security Group:roles
Permissions:
read,list
RoleListResponse

Required properties

PropertyTypeDescription
listCompletedboolean
itemsRoleResponse[]

Delete a Role

Delete a RoledeleteRole
DELETE/auth/roles/{locator}

Parameters

NameInTypeRequiredDescription
locatorpathulidYes
Response:void
Security Group:roles
Permission:
delete

Tenant Roles

Fetch Multiple Tenant Roles

Fetch Multiple Tenant RoleslistTenantRoles
GET/auth/roles/tenant/{tenantLocator}/list

Parameters

NameInTypeRequiredDescription
tenantLocatorpathuuidYes
offsetqueryinteger?No
countqueryinteger?No
Security Group:roles
Permissions:
read,list

Fetch a Tenant Role

Fetch a Tenant RolegetTenantRole
GET/auth/roles/tenant/{tenantLocator}/{roleLocator}

Parameters

NameInTypeRequiredDescription
tenantLocatorpathuuidYes
roleLocatorpathulidYes
Response:RoleResponse
Security Group:roles
Permission:
read

Create a Tenant Role

Create a Tenant RolecreateTenantRole
POST/auth/roles/tenant/{tenantLocator}/{roleLocator}

Parameters

NameInTypeRequiredDescription
tenantLocatorpathuuidYes
roleLocatorpathulidYes
Response:RoleResponse
Security Group:roles
Permission:
add

Update a Tenant Role

Update a Tenant RoleupdateTenantRole
PATCH/auth/roles/tenant/{tenantLocator}/{roleLocator}

Parameters

NameInTypeRequiredDescription
tenantLocatorpathuuidYes
roleLocatorpathulidYes
Response:RoleResponse
Security Group:roles
Permission:
update

Delete a Tenant Role

Delete a Tenant RoledeleteTenantRole
DELETE/auth/roles/tenant/{tenantLocator}/{roleLocator}

Parameters

NameInTypeRequiredDescription
tenantLocatorpathuuidYes
roleLocatorpathulidYes
Response:void
Security Group:roles
Permission:
delete
ListPageResponseRoleDetails

Required properties

PropertyTypeDescription
listCompletedboolean
itemsRoleResponse[]
CreateTenantRoleReq

Required properties

PropertyTypeDescription
permissionsstring[]

Optional properties

PropertyTypeDescription
descriptionstring?
PatchTenantRoleReq

Required properties

PropertyTypeDescription
versioninteger
addPermissionsstring[]
removePermissionsstring[]

Optional properties

PropertyTypeDescription
descriptionstring?

Permissions

Fetch Available Permissions

Fetch Available PermissionsfetchAvailablePermissions
GET/auth/roles/permissions
Response:string[]
Security Group:roles
Permission:
read

Fetch User Permissions

Fetch User PermissionsfetchUserPermissions
GET/auth/users/{locator}/permissions

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Response:string[]
Security Group:users
Permissions:
read,custom

Fetch a User's Tenant Permissions

Fetch a User's Tenant PermissionsfetchUserTenantPermissions
GET/auth/users/{userLocator}/tenant/{tenantLocator}/permissions

Parameters

NameInTypeRequiredDescription
userLocatorpathuuidYes
tenantLocatorpathuuidYes
Response:string[]
Security Group:users
Permissions:
read,custom

Fetch Grouped Token Permissions

Fetch Grouped Token PermissionsgetGroupedTokenPermissions
POST/auth/users/tokens/permissions
Request:string
Response:map<string, string[]>
Security Group:users
Permissions:
read,custom

User Role Assignments

Update User Roles

Update User RolesupdateUserRoles
PATCH/auth/users/{locator}/roles

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Response:UserResponse
Security Group:users
Permission:
update-roles
UserRolesUpdateRequest

Required properties

PropertyTypeDescription
addRolesstring[]
removeRolesstring[]

User Tenant Assignments

Update a User's Tenant Assignments

Update a User's Tenant AssignmentsupdateUserTenantAssignments
PATCH/auth/users/{locator}/tenants

Parameters

NameInTypeRequiredDescription
locatorpathuuidYes
Response:UserResponse
Security Group:users
Permission:
update-tenants
UserTenantsAssignmentsUpdateRequest

Required properties

PropertyTypeDescription
addTenantsstring[]
removeTenantsstring[]

On this page