User

API for users

Sign-in User

POST https://api.YOUR_TENANT.appmixer.cloud/user/auth

Sign-in a user with credentials and get their access token. curl -XPOST "https://api.appmixer.com/user/auth" -H "Content-type: application/json" -d '{ "username": "[email protected]", "password": "abc321" }'

Request Body

Name
Type
Description

password*

string

Password.

username*

string

Username, has to have an email format.

{
    "user": {
        "id": "5c88c7cc04a917256c726c3d",
        "username":"[email protected]",
        "isActive": false,
        "email": "[email protected]", 
        "plan":"free",
        "metadata": {}
    },
    "token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVjODhjN2NjMDRhOTE3MjU2YzcyNmMzZCIsInNjb3BlIjpbInVzZXIiXSwiaWF0IjoxNTUyNDkyNjA5LCJleHAiOjE1NTUwODQ2MDl9.9jVcqY0qo9Q_1GeK9Fg14v7OrdpWvzmqnv4jDMZfqnI"
}

Create User

POST https://api.YOUR_TENANT.appmixer.cloud/user

Create user. By default, this endpoint is open (does not require authentication). This can be changed by setting the API_USER_CREATE_SCOPE system configuration. If you set the value of API_USER_CREATE_SCOPE to for example admin, then an admin token will be required to call this API. curl -XPOST "https://api.appmixer.com/user" -H "Content-type: application/json" -d '{ "username": "[email protected]", "email": "[email protected]", "password": "abc321" }'

Request Body

Name
Type
Description

password*

string

Password.

email

string

Email address.

username

string

Email address.

metadata

object

Optional metadata.

Get Current User Information

GET https://api.YOUR_TENANT.appmixer.cloud/user

Get current user information. curl "https://api.appmixer.com/user" -H "Authorization: Bearer [ACCESS_TOKEN]"

Get User Information

GET https://api.YOUR_TENANT.appmixer.cloud/users/:userId

Admin token required.

Get all users

GET https://api.YOUR_TENANT.appmixer.cloud/users

Admin token required.

Examples:

Get the first 30 users with a scope "acme1":

curl -XGET "https://api.appmixer.com/users?filter=scope:acme1&sort=created:-1&limit=30&offset=0" -H 'Authorization: Bearer [ADMIN_TOKEN]'

Get all users whose usernames include a pattern:

curl -XGET "https://api.appmixer.com/users?pattern=joe" -H 'Authorization: Beader [ADMIN_TOKEN]'

Get the number of users

GET https://api.YOUR_TENANT.appmixer.cloud/users/count

Admin token required

Update user

PUT https://api.YOUR_TENANT.appmixer.cloud/users/:userId

Admin token required.

Request Body

Name
Type
Description

scope

Array

Array of scopes.

vendor

String|Array

One or more vendors.

metadata

Object

Optional metadata.

email

String

Email address.

Delete user

DELETE https://api.YOUR_TENANT.appmixer.cloud/users/:userId

Admin token required. This operation stops all running flows and deletes all the user's data from the system - logs, accounts, tokens ... The response is a ticket, the operation may take a long time. You can use the ticket and poll for the result with the next API method.

GET https://api.YOUR_TENANT.appmixer.cloud/users/:userId/delete-status/:ticket

Change user password

POST https://api.YOUR_TENANT.appmixer.cloud/user/change-password

User token required.

Request Body

Name
Type
Description

oldPassword*

String

Old password

newPassword*

String

New password

Reset user password

POST https://api.YOUR_TENANT.appmixer.cloud/user/reset-password

Admin token required.

Request Body

Name
Type
Description

email*

String

User email address

password*

String

New password

Forgot Password

POST https://api.YOUR_TENANT.appmixer.cloudforgot-password

See the Forgot Password Service configuration for more details.

Request Body

Name
Type
Description

email*

String

Email address

Reset forgotten password

POST https://api.YOUR_TENANT.appmixer.cloud/forgot-password/reset

Reset user password by providing a unique code generated via POST /user/forgot-password API.

Request Body

Name
Type
Description

password*

String

New password. The minimum length of the password is five characters.

code*

String

Code generated via forgot-password.

Last updated

Was this helpful?