How to Automate Management Tasks using Appdome Management API

Learn How to Automate Management Tasks for USERS & TEAMS using the Appdome Management REST API.

How to Automate Management Tasks Using the Appdome Management REST API

This Knowledge Base article outlines how you can use the Appdome Management REST API to automate management tasks on your users and team within your company on Appdome.

We hope you find this knowledge base useful and enjoy using Appdome!

Managing USERS and TEAMS On Appdome

Many organizations use a unique email domain in their businesses. Appdome enables customers to effectively manage their User Accounts, Teams, and Team members registered with the company domain.

Appdome’s Management REST APIs enable high productivity mobile organizations to fully automate the user and team management tasks and incorporate Appdome’s mobile app security as part of their automated management toolsets and continuous integration and continuous delivery (CI/CD) workflows.

This article details the technical specifications of these API requests.

Management API user permissions

Read – The default permission for a user with Appdome Management API license. Read permission is required to retrieve company USERS and TEAMS information.

Write – Write permission is required to create and update USERS and TEAMS accounts and information.

Functional – An account with ‘Functional’ permission will be allowed to use Management REST APIs calls only (Running DEV Rest API calls is prohibited) and will not have an interactive logon to the Appdome platform. The ‘Functional’ account must have at least ‘Read’ or ‘Write’ permission.

USER Management API

Retrieve all USER information using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/users

If the company has more than 20 users, use the following URL to retrieve the users’ information in separated pages:

https://fusion.appdome.com/api/v1/myCompany/users?limit=<number of users per output page, up to 20>&page=<page number to display>

MethodGET
Management PermissionRead
Content-Typemultipart/form-data or none
HeadersAuthorization:
API DescriptionAllows you to retrieve your company users accounts status, permissions, and information
CURL Example


curl -X GET "https://fusion.appdome.com/api/v1/myCompany/users" -H "Authorization: eyJhbGciOiJIUzI1NiIsInR"
Response Format
{"user_id": "The user ID number",
"first_name": "The user first name",
"last_name": "The user last name",
"name": "The user dispaly name"
"email": "The user email address",
"status": "The user account status - Active or Blocked"
"country": "The user country code",
"last_activity": "The date and time of the user last activity on the Appdome Date and time",
"api_token_enabled":  1  //if the user have active API access to REST API, 0 if not.
"api_token_permissions": ["write", "read"] // Permissiong to Appdome's Management API
}

Retrieve single USER information using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/users/{{user_id}}
MethodGET
Management PermissionRead
Content-Typemultipart/form-data or none
HeadersAuthorization:
API DescriptionAllows you to retrieve your company user account status, permissions, and information
CURL Example


curl -X GET "https://fusion.appdome.com/api/v1/myCompany/users/064003c0-6472-11eb-a118-fddfdd51" -H "Authorization: eyJhbGciOiJIUzI1NiIsInR"
Response Format
{"id": "The user ID number",
"first_name": "The user first name",
"last_name": "The user last name",
"name": "The user dispaly name"
"email": "The user email address",
"status": "The user account status - Active or Blocked"
"last_activity": "The date and time of the user last activity on the Appdome Date and time",
"api_token_enabled":  1 // if the user have active API access to REST API, 0 if not.
"api_token_permissions": ["write", "read"] // Permissiong to Appdome's Management API,
"country": "The user country code"
}

Create a new company USER using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/users
MethodPOST
Management PermissionWrite
Content-Typeapplication/json
HeadersAuthorization:
API DescriptionAllows you to create a new user account that belongs to your company
Payload Format(in JSON format:)

{
"first_name":"The user first name",  // mandatory field
"last_name":"The user last name", //mandatory field
"email": "The user email", //mandatory field
"status":"active or blocked", //(deafult is active)
"country":"iso alpha-2 country code",
"api_token_enabled":1, // 1 - user will have active API access to REST API, 0 - otherwise
 "api_token_permissions":["read","write","functional"] //(deafult is read) }
CURL Example


curl -X POST "https://fusion.appdome.com/api/v1/myCompany/users"
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
-H "Content-Type: application/json"
        "{          
            "first_name":"first name",
            "last_name":"last name",
            "email": "user@company.com",
            "status":"active",
            "country": "IL",
            "api_token_enabled":1, 
            "api_token_permissions" :["read","write"]
        }"
Response Format
"status": "created",
"userDetails": 
{"user_id": "The user ID number",
"first_name": "The user first name",
"last_name": "The user last name",
"name": "The user dispaly name"
"email": "The user email address",
"country": "The user country code"
"status": "The user account status"
"api_token_enabled": 1
"api_token_permissions": ["write", "read"]
"api_token": "AUTHKEY" 
}

 

Update a company USER using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/users/{{user_id}}
MethodPUT
Management PermissionWrite
Content-Typeapplication/json
HeadersAuthorization:
API DescriptionAllows you to update an existing company user account
Payload Format(in JSON format:)

{
"first_name":"The user first name",  
"last_name":"The user last name", 
"status":"active or blocked", 
"country":"iso alpha-2 country code",
"api_token_enabled":1, // 1 - user will have active API access to REST API, 0 - otherwise
"api_token_permissions":["read","write","functional"] }
CURL Example


curl -X PUT "https://fusion.appdome.com/api/v1/myCompany/users/064003c0-6472-11eb-a118-fddfdd51"
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
-H "Content-Type: application/json"
        "{          
            "first_name":"first name",
            "last_name":"last name",
            "status":"active",
            "country": "IL",
            "api_token_enabled":0, 
            "api_token_permissions" :[]
        }"
Response Format
{
"first_name": "The user first name",
"last_name": "The user last name",
"name": "The user dispaly name"
"email": "The user email address",
"country": "The user country code",
"status": "The user account status","last_activity": "2021-01-31T10:01:06.000Z",
"api_token_enabled": 0,
"api_token_permissions": []
}

 

Refresh the USER API token using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/users/{{user_id}}/refreshToken
MethodPOST
Management PermissionWrite
Content-Typemultipart/form-data or nonn
HeadersAuthorization:
API DescriptionAllows you to refresh an existing company user API token
CURL Example


curl -X POST "https://fusion.appdome.com/api/v1/myCompany/users/064003c0-6472-11eb-a118-fddfdd51/refreshToken"
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
Response Format
"api_token": "AUTHKEY"

 

Block a USER account using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/users/{{user_id}}/blockUser
MethodPUT
Management PermissionWrite
Content-Typemultipart/form-data or none
HeadersAuthorization:
API DescriptionAllows you to change an existing company user account status to blocked
CURL Example


curl -X PUT "https://fusion.appdome.com/api/v1/myCompany/users/064003c0-6472-11eb-a118-fddfdd51/blockUser" 
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
Response Format
{ "first_name": "The user first name", 
"last_name": "The user last name", 
"name": "The user dispaly name" 
"email": "The user email address", 
"country": "The user country code", 
"status": "Blocked",
"last_activity": "2021-01-31T10:01:06.000Z", 
"api_token_enabled": 0, 
"api_token_permissions": [] }

 

TEAMS Management API

Retrieve all company TEAMS information using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/teams

If the company has more than 20 teams, use the following URL to retrieve the users’ information in separated pages:

https://fusion.appdome.com/api/v1/myCompany/teams?limit=<number of teams per output page, up to 20>&page=<page number to display>

MethodGET
Management PermissionRead
Content-Typemultipart/form-data or none
HeadersAuthorization:
API DescriptionAllows you to retrieve your company teams accounts status, permissions, and information
CURL Example


curl -X GET "https://fusion.appdome.com/api/v1/myCompany/teams" -H "Authorization: eyJhbGciOiJIUzI1NiIsInR"
Response Format
{
  "id": "0c961820-63ac-11eb-f-55ec9c249059",
  "name": "Team1",
  "description": "Testing Team"
},
{
  "id": "1c9682c0-63d2-11e47e-d5cdff1fda1f",
  "name": "Team2",
  "description": ""
},
{
   "id": "5cb28de0-647c-d-eb117f8a20cb",
   "name": "Team3",
    "description": "Building apps"
}

Retrieve single TEAM information using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/teams/{{team_id}}
MethodGET
Management PermissionRead
Content-Typemultipart/form-data or none
HeadersAuthorization:
API DescriptionAllows you to retrieve your company team and team members information
CURL Example


curl -X GET "https://fusion.appdome.com/api/v1/myCompany/teams/064003c0-6472-11eb-a118-fddfdd51" -H "Authorization: eyJhbGciOiJIUzI1NiIsInR"
Response Format
"name": "The team name",
"id": "The team ID",
"description": "The team description",
"users": [
    {"user_id": "The user ID",
     "email": "user1@appdome.com",
     "first_name": "user1 first name",
     "last_name": "user1 last name",
     "role": "Leader",
     "entitlements": {
                                 "FUSE_SECURITY": "Yes",
                                 "FUSE_ACCESS": "Yes",
                                 "FUSE_AUTHENTICATION": "Yes",
                                 "FUSE_IDENTITY": "Yes",
                                 "FUSE_EMM": "Yes",
                                 "FUSE_THREATS": "Yes",
                                 "FUSE_ANALYTICS": "Yes",
                                 "FUSE_COLLABORATION": "Yes",
                                 "UPLOAD": "Yes",
                                 "DELETE": "Yes",
                                 "EDIT_FUSION_SETS": "Yes",
                                 "CUSTOMIZE": "Yes",
                                 "SIGN": "Yes",
                                 "APPROVE": "Yes",
                                 "DEPLOY": "Yes",
                                 "COPY_FUSION_SETS_INTO": "Yes",
                                 "COPY_FUSED_BUILDS_INTO": "Yes"}},
    {"user_id": "The user ID",
     "email": "user2@appdome.com",
     "first_name": "user2 first name",
     "last_name": "user2 last name",
     "role": "Member",
     "entitlements": {
                                 "FUSE_SECURITY": "No",
                                 "FUSE_ACCESS": "Yes",
                                 "FUSE_AUTHENTICATION": "No",
                                 "FUSE_IDENTITY": "Yes",
                                 "FUSE_EMM": "Yes",
                                 "FUSE_THREATS": "No",
                                 "FUSE_ANALYTICS": "Yes",
                                 "FUSE_COLLABORATION": "Yes",
                                 "UPLOAD": "Yes",
                                 "DELETE": "Yes",
                                 "EDIT_FUSION_SETS": "Yes",
                                 "CUSTOMIZE": "No",
                                 "SIGN": "Yes",
                                 "APPROVE": "Yes",
                                 "DEPLOY": "Yes",
                                 "COPY_FUSION_SETS_INTO": "Yes",
                                 "COPY_FUSED_BUILDS_INTO": "Yes"}},
]

Create a new TEAM using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/teams
MethodPOST
Management PermissionWrite
Content-Typeapplication/json
HeadersAuthorization:
API DescriptionAllows you to create a new company team and add team members that belong to your company.

All the team members will automatically be assigned as team leaders and have all team entitlements granted.

The manager user that executes this management API will not automatically added to the team. The manager user can manually added to the user’s list.

Payload Format(in JSON format:)

{
"name":"The name of the new team",  // mandatory field
"description":"The description of the new team", 
"team_leaders_to_add": ["user_id1","user_id2"] //List of company users ID, mandatory field
 }
CURL Example


curl -X POST "https://fusion.appdome.com/api/v1/myCompany/teams" 
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
-H "Content-Type: application/json"
  "{          
    "name":"The name of the new team",  // mandatory field
     "description":"The description of the team", 
    "team_leaders_to_add": ["user_id1","user_id2"] //List of users ID. mandatory field
 }"
Response Format
"team": {"id": "d8d8b730-4b-11eb-8880-79912e8d91",
"name": "New Team",
"description": "The new team"},
"added_users": ["a251c0a0-47-11eb-a077-651fccaf6b90", "a25sdfs0a0-47-11eb-a077-651fcsfsdfb90"]

 

Update a TEAM using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/teams/{{team_id}}
MethodPUT
Management PermissionWrite
Content-Typeapplication/json
HeadersAuthorization:
API DescriptionAllows you to update an existing company team name and description
Payload Format(in JSON format:)

{
"name":"The name of the team",  
"description":"The new description of the team"
}
CURL Example


curl -X PUT "https://fusion.appdome.com/api/v1/myCompany/teams/064003c0-6472-11eb-a118-dfdd51" 
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
-H "Content-Type: application/json"
        "{          
            "name":"new name", 
              "description":"new description"
 }"
Response Format
{
  "id": "064003c0-6472-11eb-a118-dfdd51",
"name":"new name",  
"description":"new description"

 } 

 

Update/Add USERS within a TEAM using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/teams/{{team_id}}/updateUserEntitlements
MethodPUT
Management PermissionWrite
Content-Typeapplication/json
HeadersAuthorization:
API DescriptionAllows you to add new company users into a team or update the role and entitlements of an existing member in the team. Each API request can hold up to 50 users.
Payload Format(in JSON format:)

{
"users_to_add": 
[                      
   {"user_id": "user id" // mandatory, 
     "role": "Member/Leader" // the default role of new team members is  member), 
     "entitlements":{
                                 "UPLOAD":"NO/YES",
                                 "FUSE_SECURITY":"NO/YES", 
                                 "SIGN":"NO/YES", 
                                 "COPY_FUSION_SETS_INTO":"NO/YES",}
   },
   {"user_id": "user id 2",
     "role": "Member/Leader",
     "entitlements":{
                                 "DELETE":"NO/YES", 
                                 "COPY_FUSED_BUILDS_INTO":"NO/YES",
                                 "SIGN":"NO/YES",
                                 "COPY_FUSION_SETS_INTO":"NO/YES"
   }
]
}
CURL Example


curl -X PUT "https://fusion.appdome.com/api/v1/myCompany/teams/064003c0-6472-11eb-a118-ffdd51/updateUserEntitlements"
-H "Authorization: eyJhbGciOiJIUzI1NiIs"
-H "Content-Type: application/json"
        "{          
          "users_to_add": [
          {"user_id": "b0290-49d4-11eb-8a89-3b059679ef40", 
            "role": "Member", 
             "entitlements":{"UPLOAD":"NO", "SIGN":"NO"}},
          {"user_id": "39f3-47a6-11eb-8639-976a2b53123d", 
            "role": "Leader",
            "entitlements":{"SIGN":""YES"}}
        }"
Response Format
{
"user_id": "b0290-49d4-11eb-8a89-3b059679ef40",
 "role": "Member",
 "entitlements": {
 "SIGN": "NO",
 "DELETE": "Yes",
 "DEPLOY": "Yes",
 "UPLOAD": "NO",
 "APPROVE": "Yes",
 "FUSE_EMM": "Yes",
 "CUSTOMIZE": "Yes",
 "FUSE_ACCESS": "Yes",
 "FUSE_THREATS": "Yes",
 "FUSE_IDENTITY": "Yes",
 "FUSE_SECURITY": "Yes",
 "FUSE_ANALYTICS": "Yes",
 "EDIT_FUSION_SETS": "Yes",
 "FUSE_COLLABORATION": "Yes",
 "FUSE_AUTHENTICATION": "Yes",
 "COPY_FUSION_SETS_INTO": "Yes",
 "COPY_FUSED_BUILDS_INTO": "Yes"
 },
{
"user_id": "39f3-47a6-11eb-8639-976a2b53123d",
 "role": "Leader",
 "entitlements": {
 "SIGN": "YES",
 "DELETE": "NO",
 "DEPLOY": "NO",
 "UPLOAD": "NO",
 "APPROVE": "Yes",
 "FUSE_EMM": "Yes",
 "CUSTOMIZE": "Yes",
 "FUSE_ACCESS": "Yes",
 "FUSE_THREATS": "Yes",
 "FUSE_IDENTITY": "Yes",
 "FUSE_SECURITY": "Yes",
 "FUSE_ANALYTICS": "Yes",
 "EDIT_FUSION_SETS": "Yes",
 "FUSE_COLLABORATION": "Yes",
 "FUSE_AUTHENTICATION": "Yes",
 "COPY_FUSION_SETS_INTO": "Yes",
 "COPY_FUSED_BUILDS_INTO": "Yes"
 },
 "status": true
}

 

Remove a single USER from a TEAM using the Appdome Management REST API

URLhttps://fusion.appdome.com/api/v1/myCompany/teams/{{team_id}}/removeUserFromTeam
MethodPUT
Management PermissionWrite
Content-Typeapplication/json
HeadersAuthorization:
API DescriptionAllows you to remove a single user from your company team
CURL Example


curl -X PUT "https://fusion.appdome.com/api/v1/myCompany/teams/064003c0-6472-11eb-a118-fddfdd51/removeUserFromTeam" 
-H "Authorization: eyJhbGciOiJIUzI1NiIsInR"
-H "Content-Type: application/json"
"{
    "userId":"user ID 1"
}"
Response Format
"users": [
    {"user_id": "user ID 2",
     "email": "user2@appdome.com",
     "first_name": "user2 first name",
     "last_name": "user2 last name",
     "role": "Leader",
     "entitlements": {
                                 "FUSE_SECURITY": "Yes",
                                 "FUSE_ACCESS": "Yes",
                                 "FUSE_AUTHENTICATION": "Yes",
                                 "FUSE_IDENTITY": "Yes",
                                 "FUSE_EMM": "Yes",
                                 "FUSE_THREATS": "Yes",
                                 "FUSE_ANALYTICS": "Yes",
                                 "FUSE_COLLABORATION": "Yes",
                                 "UPLOAD": "Yes",
                                 "DELETE": "Yes",
                                 "EDIT_FUSION_SETS": "Yes",
                                 "CUSTOMIZE": "Yes",
                                 "SIGN": "Yes",
                                 "APPROVE": "Yes",
                                 "DEPLOY": "Yes",
                                 "COPY_FUSION_SETS_INTO": "Yes",
                                 "COPY_FUSED_BUILDS_INTO": "Yes"}},
]

In order to use Appdome’s Management REST API, you’ll need:

  1. Appdome account.
  2. Appdome-DEV access
  3. Appdome Management API license
  4. Your API Token (See how to get your API Token)

How To Learn More

Check out Appdome Platform, or learn more about Appdome-DEV REST API and Appdome-DEV.

You can also use our API requests Postman Collection.

If you have any questions, please send them our way at support@appdome.com or via the chat window on the Appdome platform.

Thank you!

Thanks for visiting Appdome! Our mission is to secure every app on the planet by making mobile app security easy. We hope we’re living up to the mission with your project. If you don’t already have an account, you can sign up for free.

Liron Dror

Have a question?

Ask an expert

AaronMaking your security project a success!