Skip to main content

Sign up and authenticate

To gain access to IQM's API and its services, you must first sign up and log in to obtain the authentication required to send requests.

The IQM platform uses bearer authentication tokens to authenticate along with an Organization Workspace ID.

  • On sign up, a bearer token is returned in the response along with a refresh token. The access token remains valid for 24 hours, at which time the refresh token must be used to retrieve a new access token.
  • On log in, an Organization Workspace ID (owId) is returned in the response. This ID is required for all API calls and to authenticate your access to the platform.

Client ID and Client Secret​

Before you can sign up or log in with the IQM API, you need to request a Client ID and Client Secret by emailing support@iqm.com. Once you have obtained these credentials, they are used as the header authorization for signing up and logging in. The header is formed like this: client_id:client_secret base64.

Read more about Client ID and Secret at OAuth.

Sign up​

POST

Sign up for an account by providing an email address and desired password.

Headers
Authentication
string required
Client ID and Client Secret
Request Schema
email
string required
Email address of user
password
string required
Desired password of user
Request sample
{
"email": "user1@iqm.com",
"password": "123456"
}
Response 200
{
"success": true,
"data": {
"access_token": "d90fa7de-534c-4652-ad8f-c4f6f70461ac",
"refresh_token": "2e379c6f-959d-498f-8319-ff13ebef6bfe",
"scope": "read write",
"token_type": "bearer",
"expires_in": 35999
}
}

Log in​

POST

Once you have created an account, you can log in. This API accepts a URL encoded form with the user's email and password. Using your Client ID and Client Secret in the header, you can authenticate and log in.

The response includes an access token, refresh token, and the Organization Workspace ID. These credentials are used to maintain your session and authenticate your access to the IQM platform.

Headers
Authentication
string required
Client ID and Client Secret
Content-Type
string required
application/x-www-form-urlencoded
Request Schema
grant_type
string required
password for login
OAuth Grant Types
username
string required
User account email
password
string required
User account password
Request sample
curl -i --location 'https://api.iqm.com/api/v3/ua/oauth/token' \
--header 'accept: application/json, text/plain, */*' \
--header 'Authorization: Basic <Client ID/Client Secret>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=password' \
--data-urlencode 'username=user@iqm.com' \
--data-urlencode 'password=<your password>'
Response 200
{
"success": true,
"data": {
"access_token": "106adb25-37b0-4cab-8381-d682fe7cc3c8",
"refresh_token": "eac4c1f6-781e-4b04-baff-9c2e415d1f64",
"scope": "read write",
"token_type": "bearer",
"expires_in": 35999,
"owId": 200001
}
}

Refresh token​

POST

Use a refresh token to get a new access token. This endpoint accepts a URL encoded form with the refresh token. Using your Client ID and Client Secret in the header, you can authenticate and get a new access token.

Headers
Authentication
string required
Client ID and Client Secret
Content-Type
string required
application/x-www-form-urlencoded
Request Schema
grant_type
string
refresh_token to get a new access token
OAuth Grant Types
refresh_token
string
Refresh token
Request sample
curl -i --location 'https://api.iqm.com/api/v3/ua/oauth/token' \
--header 'accept: application/json, text/plain, */*' \
--header 'Authorization: Basic <Client ID/Client Secret>' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'grant_type=refresh_token' \
--data-urlencode 'refresh_token=eac4c1f6-781e-4b04-baff-9c2e415d1f64'
Response 200
{
"access_token": "106adb25-37b0-4cab-8381-d682fe7cc3c8",
"refresh_token": "eac4c1f6-781e-4b04-baff-9c2e415d1f64",
"scope": "read write",
"token_type": "bearer",
"expires_in": 35999
}
Have a question?
Was this page helpful?