Altair SLC Hub Authentication and Identity (2025.1.2)

Download OpenAPI specification:

getCurrentUser

Returns the user entity corresponding to the requesting user.

Authorizations:
bearerAuth
query Parameters
fields
Array of strings (userField)
Items Enum: "_id" "_created" "_modified" "externalId" "userName" "displayName" "active" "email" "unixHomeDirectory" "unixUserName" "userPrincipalName" "invitationPending" "deleted"
excludeFields
Array of strings (userField)
Items Enum: "_id" "_created" "_modified" "externalId" "userName" "displayName" "active" "email" "unixHomeDirectory" "unixUserName" "userPrincipalName" "invitationPending" "deleted"

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true
}

validatePasswordForSelf

Validates a password against the password policy.
Use this endpoint for validating a password when changing your own password.

Authorizations:
bearerAuth
Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "error": "string"
}

changeMyPassword

Changes the password for the calling user.

Authorizations:
bearerAuth
Request Body schema: application/json
currentPassword
required
string
newPassword
required
string

Responses

Request samples

Content type
application/json
{
  • "currentPassword": "string",
  • "newPassword": "string"
}

Response samples

Content type
application/json
{
  • "msg": "string"
}

Sets the OS password for the calling user

Authorizations:
bearerAuth
Request Body schema: application/json
required
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Check if user has a OS password configured

Authorizations:
bearerAuth

Responses

Clears the OS password for the calling user

Authorizations:
bearerAuth

Responses

queryUsers

Queries current user instances

Authorizations:
bearerAuth
query Parameters
filter[_id][EQ]
string
filter[_id][IN]
Array of strings
filter[userName][EQ]
string
filter[userName][CO]
string
filter[displayName][EQ]
string
filter[displayName][CO]
string
filter[email][EQ]
string
filter[email][CO]
string
filter[active][EQ]
boolean
filter[externalId][PR]
boolean
filter[system][EQ]
boolean
filter[invitationPending][EQ]
boolean
filter[temporarilyLocked][EQ]
boolean
filter[deleted][EQ]
string (userDeletedQueryOption)
Enum: "deletedOnly" "notDeletedOnly" "all"
filter[deleted][LT]
string <date-time>
filter[deleted][GT]
string <date-time>
filter[_created][LT]
string <date-time>
filter[_created][GT]
string <date-time>
filter[_modified][LT]
string <date-time>
filter[_modified][GT]
string <date-time>
page[offset]
integer
page[limit]
integer
sort
string
Enum: "userName" "-userName" "displayName" "-displayName" "_created" "-_created" "_modified" "-_modified"
fields
Array of strings (userField)
Items Enum: "_id" "_created" "_modified" "externalId" "userName" "displayName" "active" "email" "unixHomeDirectory" "unixUserName" "userPrincipalName" "invitationPending" "deleted"
excludeFields
Array of strings (userField)
Items Enum: "_id" "_created" "_modified" "externalId" "userName" "displayName" "active" "email" "unixHomeDirectory" "unixUserName" "userPrincipalName" "invitationPending" "deleted"

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "data": [
    ]
}

createUser

Creates a new user entity.

Authorizations:
bearerAuth
Request Body schema: application/json
required
_id
string
_created
string <date-time>
_modified
string <date-time>
externalId
string
system
boolean
userName
string
displayName
string
active
boolean
inactiveReason
string
Enum: "manual" "tooManyFailedLogons" "externalAccountDisabled"
email
string
unixHomeDirectory
string
unixUserName
string
userPrincipalName
string
invitationPending
boolean
invitationExpiry
string <date-time>
deleted
string <date-time>
temporarilyLocked
boolean
password
required
string
mustChange
boolean

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true,
  • "password": "string",
  • "mustChange": true
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true
}

getUser

Returns a specific user by unique ID

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

query Parameters
fields
Array of strings (userField)
Items Enum: "_id" "_created" "_modified" "externalId" "userName" "displayName" "active" "email" "unixHomeDirectory" "unixUserName" "userPrincipalName" "invitationPending" "deleted"
excludeFields
Array of strings (userField)
Items Enum: "_id" "_created" "_modified" "externalId" "userName" "displayName" "active" "email" "unixHomeDirectory" "unixUserName" "userPrincipalName" "invitationPending" "deleted"

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true
}

putUser

Updates the definition of a user

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Request Body schema: application/json
required
_id
string
_created
string <date-time>
_modified
string <date-time>
externalId
string
system
boolean
userName
string
displayName
string
active
boolean
inactiveReason
string
Enum: "manual" "tooManyFailedLogons" "externalAccountDisabled"
email
string
unixHomeDirectory
string
unixUserName
string
userPrincipalName
string
invitationPending
boolean
invitationExpiry
string <date-time>
deleted
string <date-time>
temporarilyLocked
boolean

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true
}

patchUser

Updates the definition of a user using JSON Patch.

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Request Body schema: application/json-patch+json
required
Array
op
required
string
Enum: "add" "remove" "replace"

The operation to be performed

path
required
string

A JSON-Pointer

value
any

The value to be used within the operations.

Responses

Request samples

Content type
application/json-patch+json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "userName": "string",
  • "displayName": "string",
  • "active": true,
  • "inactiveReason": "manual",
  • "email": "string",
  • "unixHomeDirectory": "string",
  • "unixUserName": "string",
  • "userPrincipalName": "string",
  • "invitationPending": true,
  • "invitationExpiry": "2019-08-24T14:15:22Z",
  • "deleted": "2019-08-24T14:15:22Z",
  • "temporarilyLocked": true
}

deleteUser

Deletes a specific user identified by the unique ID.

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Responses

Response samples

Content type
application/json
{
  • "msg": "string"
}

getUserGroups

Returns the list of groups of which the user is a member

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

query Parameters
filter[membershipType][EQ]
string (membershipType)
Enum: "direct" "indirect"

Responses

Response samples

Content type
application/json
[
  • {
    }
]

getUserUnixInfo

Returns a structure containing the operating system user information for the user.

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Responses

Response samples

Content type
application/json
{
  • "userName": "string",
  • "userPrincipalName": "string",
  • "unixHomeDirectory": "string"
}

setUserPassword

Sets the password for the user.

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Request Body schema: application/json
required
password
required
string
mustChange
boolean

Responses

Request samples

Content type
application/json
{
  • "password": "string",
  • "mustChange": true
}

Response samples

Content type
application/json
{
  • "msg": "string"
}

validatePasswordForUser

Validates a password against the password policy.
Use this endpoint for validating a password when an administrator is setting the password for a user.

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Request Body schema: application/json
password
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "error": "string"
}

clearLogonFailures

Clears the logon failure history for the given user.
This will have the effect of removing any temporary lockout that might exist on the user, but will not remove any permanent lock that might have been added as a result of logon failures.

Authorizations:
bearerAuth
path Parameters
userId
required
string

Internal unique ID of the user

Responses

queryGroups

Queries current group instances

Authorizations:
bearerAuth
query Parameters
filter[_id][EQ]
string
filter[_id][IN]
Array of strings
filter[name][EQ]
string
filter[name][CO]
string
filter[externalId][PR]
boolean
filter[_created][LT]
string <date-time>
filter[_created][GT]
string <date-time>
filter[_modified][LT]
string <date-time>
filter[_modified][GT]
string <date-time>
filter[system][EQ]
boolean
page[offset]
integer
page[limit]
integer
sort
string
Enum: "name" "-name" "_created" "-_created" "_modified" "-_modified"
fields
Array of strings (groupField)
Items Enum: "_id" "_created" "_modified" "externalId" "name"
excludeFields
Array of strings (groupField)
Items Enum: "_id" "_created" "_modified" "externalId" "name"

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "data": [
    ]
}

createGroup

Creates a new group entity.

Authorizations:
bearerAuth
Request Body schema: application/json
required
_id
string
_created
string <date-time>
_modified
string <date-time>
externalId
string
system
boolean
name
string

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "name": "string"
}

getGroup

Returns a specific group by unique ID

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

query Parameters
fields
Array of strings (groupField)
Items Enum: "_id" "_created" "_modified" "externalId" "name"
excludeFields
Array of strings (groupField)
Items Enum: "_id" "_created" "_modified" "externalId" "name"

Responses

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "name": "string"
}

putGroup

Replaces the definition of a group

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

Request Body schema: application/json
required
_id
string
_created
string <date-time>
_modified
string <date-time>
externalId
string
system
boolean
name
string

Responses

Request samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "name": "string"
}

patchGroup

Updates the definition of a group using JSON Patch.

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

Request Body schema: application/json-patch+json
required
Array
op
required
string
Enum: "add" "remove" "replace"

The operation to be performed

path
required
string

A JSON-Pointer

value
any

The value to be used within the operations.

Responses

Request samples

Content type
application/json-patch+json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "_id": "string",
  • "_created": "2019-08-24T14:15:22Z",
  • "_modified": "2019-08-24T14:15:22Z",
  • "externalId": "string",
  • "system": true,
  • "name": "string"
}

deleteGroup

Deletes a specific group by ID

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

Responses

Response samples

Content type
application/json
{
  • "msg": "string"
}

getGroupMembers

Returns the list of members of the group.

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

query Parameters
filter[membershipType][EQ]
string (membershipType)
Enum: "direct" "indirect"
filter[principalType][EQ]
string (principalType)
Enum: "User" "Group"

Responses

Response samples

Content type
application/json
[
  • {
    }
]

modifyGroupMembers

Modifies the group membership list

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

Request Body schema: application/json
Array
op
required
string
Enum: "add" "remove"
id
string
principalType
string (principalType)
Enum: "User" "Group"
name
string

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "msg": "string"
}

getGroupGroups

Returns the list of groups that a group is a member of.

Authorizations:
bearerAuth
path Parameters
groupId
required
string

Internal unique ID of the group

query Parameters
filter[membershipType][EQ]
string (membershipType)
Enum: "direct" "indirect"

Responses

Response samples

Content type
application/json
[
  • {
    }
]

queryPrincipals

Queries current principal instances

Authorizations:
bearerAuth
query Parameters
filter[_id][EQ]
string
filter[_id][IN]
Array of strings
filter[_type][EQ]
string (principalType)
Enum: "User" "Group"
filter[displayName][EQ]
string
filter[displayName][CO]
string
filter[displayName][SW]
string
filter[external][EQ]
boolean
filter[system][EQ]
boolean
filter[deleted][EQ]
string (userDeletedQueryOption)
Enum: "deletedOnly" "notDeletedOnly" "all"

Only applicable when querying users

filter[deleted][LT]
string <date-time>

Only applicable when querying users

filter[deleted][GT]
string <date-time>

Only applicable when querying users

page[offset]
integer
page[limit]
integer
sort
string
Enum: "displayName" "-displayName"

Responses

Response samples

Content type
application/json
{
  • "totalCount": 0,
  • "data": [
    ]
}

getPrincipal

Returns a specific principal by ID

Authorizations:
bearerAuth
path Parameters
principalId
required
string

Responses

Response samples

Content type
application/json
{
  • "_type": "User",
  • "_id": "string",
  • "displayName": "string",
  • "name": "string",
  • "external": true,
  • "system": true
}

getPrincipalGroups

Returns the list of groups that a principal is a member of

Authorizations:
bearerAuth
path Parameters
principalId
required
string
query Parameters
filter[membershipType][EQ]
string (membershipType)
Enum: "direct" "indirect"

Responses

Response samples

Content type
application/json
[
  • {
    }
]

createUserInvitation

Authorizations:
bearerAuth
Request Body schema: application/json
userName
required
string
displayName
required
string
email
required
string

Responses

Request samples

Content type
application/json
{
  • "userName": "string",
  • "displayName": "string",
  • "email": "string"
}

validateUserInvitationToken

Authorizations:
bearerAuth
Request Body schema: application/json
token
required
string

Responses

Request samples

Content type
application/json
{
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "response": "Valid"
}

resendInvitationEmail

Authorizations:
bearerAuth
Request Body schema: application/json
userId
required
string

Responses

Request samples

Content type
application/json
{
  • "userId": "string"
}

Response samples

Content type
application/json
{
  • "msg": "string"
}

completeUserRegistration

Authorizations:
bearerAuth
Request Body schema: application/json
token
required
string
displayName
required
string
userName
required
string
password
string
jwtSubject
string

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "displayName": "string",
  • "userName": "string",
  • "password": "string",
  • "jwtSubject": "string"
}

checkUsernameAvailability

Authorizations:
bearerAuth
Request Body schema: application/json
token
required
string
userName
required
string

Responses

Request samples

Content type
application/json
{
  • "token": "string",
  • "userName": "string"
}

Response samples

Content type
application/json
{
  • "available": true
}

createPasswordResetToken

Authorizations:
bearerAuth
Request Body schema: application/json
emailOrUserName
required
string

Responses

Request samples

Content type
application/json
{
  • "emailOrUserName": "string"
}

validatePasswordResetToken

Authorizations:
bearerAuth
Request Body schema: application/json
token
required
string

Responses

Request samples

Content type
application/json
{
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "response": "Valid"
}

completePasswordReset

Authorizations:
bearerAuth
Request Body schema: application/json
password
required
string
token
required
string

Responses

Request samples

Content type
application/json
{
  • "password": "string",
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "msg": "string"
}

changePasswordByUsername

Changes the password for the given user

Authorizations:
bearerAuth
Request Body schema: application/json
currentPassword
required
string
newPassword
required
string
username
required
string

Responses

Request samples

Content type
application/json
{
  • "currentPassword": "string",
  • "newPassword": "string",
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "msg": "string"
}

validatePassword

Validates a password against the password policy.
Use this endpoint for validating a password when creating a new user

Authorizations:
bearerAuth
Request Body schema: application/json
password
required
string
username
string
displayName
string
email
string

Responses

Request samples

Content type
application/json
{
  • "password": "string",
  • "username": "string",
  • "displayName": "string",
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "error": "string"
}

describePasswordPolicy

Returns a description of the password policy that a users password has to comply with.
Intended to be formatted and displayed to the user when changing their password for example.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
[
  • "string"
]

Clears saved OS passwords for all users

Authorizations:
bearerAuth

Responses

passwordLogin

Performs password-based login.

Authorizations:
bearerAuth
Request Body schema: application/json
username
required
string
password
required
string

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "token": "string",
  • "expiresIn": 0
}

impersonate

Generates a login token for a different user.

Authorizations:
bearerAuth
Request Body schema: application/json
userId
required
string

Responses

Request samples

Content type
application/json
{
  • "userId": "string"
}

Response samples

Content type
application/json
{
  • "token": "string",
  • "expiresIn": 0
}

getTokenInfo

Returns the claims from the JWT passed as the bearer token

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "claims": { }
}

getConfig

Returns configuration settings for the auth server

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "allowOsUserModification": true,
  • "osPasswordsEnabled": true,
  • "osPasswordsRequired": true
}