Provides various services for managing accounts.

Check for Existing Account

Checks if an account exists for the given email address. If an account is found that belongs to your company, the response will include the verification status as well.

GET JSON /api/is-account
Parameters
Name Description Required Example
companyId Identifier of your company as shown on the profile page. true JSOM3ACS72QAJ2I1IM1D5VNFGR
email The email address to check for an account. true david@unknown.org
key Access key computed from your company's API access parameters. The value can also be provided in the Authorization HTTP header. true 6386086c1280c0f76b2c6cfbd3acd4dc21354f21495bd0091706aa3a738e1177
Responses
Description Example
200 Successful response for an email address with a verified account belonging to your company.
Content-Type: application/json
{
    "success": true,
    "error": false,
    "exists": true,
    "verified": true
}
200 Successful response for an email address with an account not belonging to your company.
Content-Type: application/json
{
    "success": true,
    "error": false,
    "exists": true
}
200 Successful response for an unknown email address.
Content-Type: application/json
{
    "success": true,
    "error": false,
    "exists": false
}
400 Missing parameter or malformed request
Content-Type: application/json
{
    "success": false,
    "error": true,
    "message": "The parameter {missingParameter} must be filled."
}
401 Authentication required but none provided
Content-Type: application/json
403 Invalid authentication or missing permission
Content-Type: application/json
404 Resource not found
Content-Type: application/json
405 Incorrect request method, e.g. GET instead of POST
Content-Type: application/json
500 Unexpected server-side error
Content-Type: application/json

Read Account Information

Provides information about an account, either identified via a public talk-to-me identifier, or via an email address. In the latter case, company authentication is required.

GET JSON /api/person-info
Parameters
Name Description Required Example
companyId Identifier of your company as shown on the profile page. true JSOM3ACS72QAJ2I1IM1D5VNFGR
key Access key computed from your company's API access parameters. The value can also be provided in the Authorization HTTP header. true 6386086c1280c0f76b2c6cfbd3acd4dc21354f21495bd0091706aa3a738e1177
talkToMeId The talk-to-me identifier of the queried account. Can be omitted it email is provided. Does not require company authentication. true QAT88PF4NQUB50SOHFLIPQL9RT
email The email address of the queried account. Required if talkToMeId is omitted. Requires company authentication. false paul@company.com
Responses
Description Example
200 Successful response.
Content-Type: application/json
{
   "success": true,
   "error": false,
   "name": "Paul Doe",
   "talkToMe": "QAT88PF4NQUB50SOHFLIPQL9RT",
   "avatar": "https: //memoio.com/avatar/SPFIEVG0BFVK582TVV3BKKCQUU.jpg",
   "email": "paul@company.com",
   "phone": "+1 234 56789",
   "mobile": null,
   "companyName": "Company Ltd.",
   "position": "Sales",
   "available": false,
   "awayInfo": "Away until 08/20/2023.",
   "awayFrom": "2023-08-01",
   "awayUntil": "2023-08-20",
   "substitution": "peter@company.com",
   "onlineState": "OFFLINE"
}
400 Missing parameter or malformed request
Content-Type: application/json
{
    "success": false,
    "error": true,
    "message": "The parameter {missingParameter} must be filled."
}
401 Authentication required but none provided
Content-Type: application/json
403 Invalid authentication or missing permission
Content-Type: application/json
404 Resource not found
Content-Type: application/json
405 Incorrect request method, e.g. GET instead of POST
Content-Type: application/json
500 Unexpected server-side error
Content-Type: application/json

Set Absence Information

Sets absence information for the given account.

GET JSON /api/out-of-office
Parameters
Name Description Required Example
accountEmail E-mail address of the user. Their account must belong to your company, and it must not be locked. true jane@ghost.it
companyId Identifier of your company as shown on the profile page. true JSOM3ACS72QAJ2I1IM1D5VNFGR
key Access key computed from your company's API access parameters. The value can also be provided in the Authorization HTTP header. true 6386086c1280c0f76b2c6cfbd3acd4dc21354f21495bd0091706aa3a738e1177
awayFrom First day of the user's absence in YYYY-MM-DD format. The field is cleared if the parameter is missing. false 2023-08-01
awayUntil Last day of the user's absence in YYYY-MM-DD format. The field is cleared if the parameter is missing. false 2023-08-14
substitution The vacation replacement's account to redirect messages to while the user is away. Overwritten by the substitutionChannel parameter if both are provided. false john@ghost.it
substitutionChannel Identifier of the channel to redirect messages to while the user is away. Overwrites the substitution parameter if both are provided. false 968AIDVRHOMHBO19G7AIT7AHH0
Responses
Description Example
200 Successful response.
Content-Type: application/json
{
   "success": true,
   "error": false,
   "message": "The changes have been saved"
}
400 Missing parameter or malformed request
Content-Type: application/json
{
    "success": false,
    "error": true,
    "message": "The parameter {missingParameter} must be filled."
}
401 Authentication required but none provided
Content-Type: application/json
403 Invalid authentication or missing permission
Content-Type: application/json
404 Resource not found
Content-Type: application/json
405 Incorrect request method, e.g. GET instead of POST
Content-Type: application/json
500 Unexpected server-side error
Content-Type: application/json

Set Do-Not-Disturb Flag

Toggles the do-not-disturb flag of the given account. While this flag is set, the respective user is excluded from the distribution of incoming conversations for all channels they participate in.

GET JSON /api/do-not-disturb
Parameters
Name Description Required Example
accountEmail E-mail address of the user. Their account must belong to your company, and it must not be locked. true jane@ghost.it
companyId Identifier of your company as shown on the profile page. true JSOM3ACS72QAJ2I1IM1D5VNFGR
key Access key computed from your company's API access parameters. The value can also be provided in the Authorization HTTP header. true 6386086c1280c0f76b2c6cfbd3acd4dc21354f21495bd0091706aa3a738e1177
dnd New do-not-disturb status of the user. If true, the user is excluded from the distribution of channel conversations. If the value is not provided, a default value of true is assumed. false false
Responses
Description Example
200 Successful response.
Content-Type: application/json
{
   "success": true,
   "error": false,
   "message": "The changes have been saved"
}
400 Missing parameter or malformed request
Content-Type: application/json
{
    "success": false,
    "error": true,
    "message": "The parameter {missingParameter} must be filled."
}
401 Authentication required but none provided
Content-Type: application/json
403 Invalid authentication or missing permission
Content-Type: application/json
404 Resource not found
Content-Type: application/json
405 Incorrect request method, e.g. GET instead of POST
Content-Type: application/json
500 Unexpected server-side error
Content-Type: application/json