RemotePC Enterprise API accepts requests and returns responses in the 'JSON' format. The API Key Authentication mechanism is used along with IP whitelisting to authenticate the APIs. For all the APIs, API Key must be added in the authorization header.
You can send the API requests using the API Key generated for your account in the web console. 
To get the API key,
- Log in to your RemotePC Enterprise account.
- Go to My Account tab and click API Keys.
- Click View, enter the account password, and click View.
- The API Key will be displayed. Click Copy Key to copy to the clipboard.
To change the API Key, click Change. Enter the account password and click View to view the new API key.
Note: Only the Admin (account owner) can generate the API Key.
1. Invite user
URL: https://web1.remotepc.com/rpcnew/api/msp/user/invite
 
                        Method-Type: POST
                        Request headers:
            					  - Authorization: Bearer <api key>
- Content-type: application/json
Request
                       string[]: email - Mandatory
                       int: status_2FA - Optional (allowed values are 0 and 1; 1 - Status ON & 0 - Status OFF)
                       int: sso_flag - Optional (allowed values are 0 and 1; 1 - Enable SSO & 0 - Disable SSO)
                       
                      
                      Note: SSO must be configured on the Administrator account first to enable it for users. If SSO is not set up on the Administrator account, it cannot be enabled for any user.
Http response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                      
                      Request sample 1
                        {
                      
                           "email": [
                                "shane@myworld"
                           ]
                      }
                      
                      Request sample 2
                        {
                      
                           "email": [
                                "shane@myworld"
                           ],
                           "status_2FA":1,
                            "sso_flag":1
                      }
                      
            
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": {
                                          "invalid_list": [
                                                "shane@myworld"
                                          ]
                                         "invited_list": [
                                                "shane@myworld"
                                          ]
                                     }
                        }
                      
                      Response error sample
                        {
                            "status": "INTERNAL_SERVER_ERROR",
                            "code": 500,
                            "errorsCount": 1,
                            "errors": [
                                    {
                                      "description": "INTERNAL_SERVER_ERROR"
                                    }
                          ]
                      }
                      
                      Description may include
                        FAILED
                        INTERNAL_SERVER_ERROR
                        Invalid user
                        Invalid user permission
                        Invalid user plan
                        Invalid two factor status
                      
                  
                      
                      2. Create user
URL: https://web1.remotepc.com/rpcnew/api/msp/user/create
 
                      Method-Type: POST
            
                      Request headers:
                      - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        string: firstname - Mandatory
                        string: lastname - Mandatory
                        string: username - Mandatory
                        string: password - Mandatory
                        int: status_2FA - Optional (allowed values are 0 and 1; 1 - Status ON & 0 - Status OFF)
                        int: sso_flag - Optional (allowed values are 0 and 1; 1 - Enable SSO & 0 - Disable SSO)
                      
                      Note: SSO must be configured on the Administrator account first to enable it for users. If SSO is not set up on the Administrator account, it cannot be enabled for any user.
HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                      
                      Request sample 1
                           {
                                "firstname": "firstname",
                                "lastname": "lastname",
                                "username": "shane@myworld",
                                "password": "password"
                             }
                      
                      Request sample 2
                           {
                                "firstname": "firstname",
                                "lastname": "lastname",
                                "username": "shane@myworld",
                                "password": "password",
                                "status_2FA":1,
                                "sso_flag":1
                             }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                        }
                        
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Email is already in use or already invited."
                                          }
                                     ]
                        }
                      
					  
                      Description may include
                        FAILED
                        INTERNAL_SERVER_ERROR
                        Invalid user
                        Invalid user permission
                        Invalid user plan
                        First name cannot be blank
                        First name can contain a-z, A-Z and space
                        Last name cannot be blank
                        Last name can contain a-z, A-Z and space
                        Username/Email cannot be blank
                        Enter a valid Username/Email
                        Password cannot be blank
                        Password can contain A-Z, a-z, 0-9 and ~`!@#$%^&*()-_+={}|[];\'\"<>,.?/
                        Password should be between 6 - 20 characters
                        Email is already in use or already invited.
                        Email in use with other Admin
                        Invalid two factor status
                      
                      
                      3. Delete user
URL: https://web1.remotepc.com/rpcnew/api/msp/user/delete
 
                      Method-Type: POST
                      Request headers:
                      - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        string[]: sub_ids - Mandatory
                        string[]: invited_ids - Mandatory
                      
                      
                        sub_ids: Active User Email IDs,
                        invited_ids: Invited User Email IDs
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                      
                      Request sample
                        {
                              "sub_ids":[
                                "diane@myworld",
                                 "pam@myworld",
                                 "bill@myworld"
                              ],
                              "invited_ids":[
                                 "jamie@myworld"
                              ],
                        }
                      
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": {
                                   "active_user_delete_status": {
                                    "carol@myworld": "FAILED"
                               },
                                "invited_user_delete_status": {
                                   "aaron@myworld": "SUCCESS"
                                 }
                          }
                      }
                      
                      Response error sample
                        {
                            "status": "INTERNAL_SERVER_ERROR",
                            "code": 500,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "INTERNAL_SERVER_ERROR"
                                          }
                                     ]
                        }
                      
            
                      Description may include
                        FAILED
                        INTERNAL_SERVER_ERROR
                        Invalid user
                        Invalid user permission
                        Invalid user plan
                      
                      
                      4. Get users
URL: https://web1.remotepc.com/rpcnew/api/msp/user/list
 
                        Method-Type: GET
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        Int pageIndex - Optional
                        Int recordPerPage - Optional, Default is 500
                      
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "pageIndex": 1,
                              "recordPerPage": 30 
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": {
                                          "pagination": {
                                                "records_per_page": 30,
                                                "total_records": 1,
                                                "total_page_count": 1,
                                                "current_page_index": 1
                                          }
                                         "users": [
                                            {
                                                 "firstname": "firstname",
                                                 "username": "shane@mymail",
                                                  "lastname": "lastname"
                                             ]
                                           }
                                          }
                        }
                      
                      Expected error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Invalid page index"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                        Invalid page index
                      
                      Note: The maximum number of user lists to request at once is 500.
5. Assign computer to the user
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/assign
 
                        Method-Type: POST
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        string: username - Mandatory
                        string[]: computer_names - Mandatory
                      
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "username": "shane@myworld",
                              "computer_names": [
                                   "Computer A",
                                   "Computer B"
                              ],
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Computer name can not be blank"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Username is required
                        Computer names are not found in the request
                        User not found
                        Computer(s) not found
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                      
                      
                      6. Unassign computer to the user
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/unassign
 
                        Method-Type: POST
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        string: username - Mandatory
                        string[]: computer_names - Mandatory
                      
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "username": "shane@myworld",
                              "computer_names": [
                                    "Computer A",
                                    "Computer B"
                              ],
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Computer names are not found in the request"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Username is required
                        Computer names are not found in the request
                        User not found
                        Computer(s) not found
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                      
                      
                      7. Create group and move computers
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/group/create
 
                        Method-Type: POST
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        string: group_name - Mandatory
                        string[]: computer_names - Optional
                      
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "group_name": "Group A",
                              "computer_names": [
                                    "Computer A",
                                    "Computer B"
                              ],
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Group name is already exists"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Username is required
                        Computer names are not found in the request
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                        Group name can not be blank
                        Group name is already exists
                        Invalid group name
                      
                      
                      8. Remove computer(s)
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/remove
 
                        Method-Type: POST
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request
                        string[]: computer_names - Mandatory
                      
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "computer_names": [
                                    "Computer A",
                                    "Computer B"
                              ],
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Computer names are not found in the request"
                                          }
                                     ]
                        }
                      
                      Description may include:
                        Invalid user
                        Computer names are not found in the request
                        Exceeded computers limit
                        Computer(s) not found
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                      
                      Note: Only offline computers can be removed. At a time, up to 50 computers can be removed.
9. Add comment for computer
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/comments/add
 
                        Method-Type: POST
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request:
                        string: computer_name - Mandatory
                        string: comment_desc - Mandatory
                      
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "comment_desc": "This is my computer",
                             "computer_name": "Computer A"
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Computer name can not be blank"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Username is required
                        Computer name can not be blank
                        Comments can not be blank
                        Comments length should be between 6 to 250
                        Computer not found
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                      
                      
                      10. Get devices
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/list
 
                        Method-Type: GET
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request:
                        Int pageIndex - Optional
                        Int recordPerPage - Optional, Default is 500
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                              "pageIndex": 1,
                              "recordPerPage": 30 
                        }
                      
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": {
                                          "devices": [
                                           {
                                                   "machine_id": "###################",
                                                   "host_name": "Computer A",
                                                   "host_os_version": "10.0",
                                                   "host_ip": "0.0.0.0",
                                                   "viewer_last_session_time": "2023-02-24 11:07:11",
                                                   "comments": "",
                                                   "host_os_text": "Windows",
                                                   "host_status_text": "Offline"
                                             }
                                            {
                                                   "machine_id": "###################",
                                                   "host_name": "Computer B",
                                                   "host_os_version": "10.0",
                                                   "host_ip": "0.0.0.0",
                                                   "viewer_last_session_time": "2023-02-24 10:56:01",
                                                   "comments": "",
                                                   "host_os_text": "Windows",
                                                   "host_status_text": "Offline"
                                             }
                                            ]
                                          "pagination": {
                                                "records_per_page": 30,
                                                "total_records": 2,
                                                "total_page_count": 1,
                                                "current_page_index": 1
                                            }
                                          }
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Invalid page index"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                        Invalid page index
                      
                      Note: The maximum number of device lists to request at once is 500.
11. Get users devices
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/list/{username}
 
                        Method-Type: GET
                        Request headers:
                        - Authorization: Bearer <api key>
- Content-type: application/json
Request:
                        Int pageIndex - Optional
                        Int recordPerPage - Optional, Default is 500
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                            "pageIndex": 1,
                            "recordPerPage": 30,
                      
                        }
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": {
                                          "devices": [
                                           {
                                                   "machine_id": "###################",
                                                   "host_name": "Computer A",
                                                   "host_os_version": "10.0",
                                                   "host_ip": "0.0.0.0",
                                                   "viewer_last_session_time": "2023-02-24 11:07:11",
                                                   "comments": "",
                                                   "host_os_text": "Windows",
                                                   "host_status_text": "Offline"
                                             }
                                           ],
                                            {
                                                   "machine_id": "###################",
                                                   "host_name": "Computer B",
                                                   "host_os_version": "10.0",
                                                   "host_ip": "0.0.0.0",
                                                   "viewer_last_session_time": "2023-02-24 10:56:01",
                                                   "comments": "",
                                                   "host_os_text": "Windows",
                                                   "host_status_text": "Offline"
                                             }
                                            ]
                                          "pagination": {
                                                "records_per_page": 30,
                                                "total_records": 2,
                                                "total_page_count": 1,
                                                "current_page_index": 1
                                            }
                                          }
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                                          {
                                                "description": "Invalid page index"
                                          }
                                     ]
                        }
                      
                      Description may include
                        Invalid user
                        Invalid username
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                        Invalid page index
                      
                      Note: The maximum number of device lists to request at once is 500.
12. Move computers to a group
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/group/move
 
                        Method-Type: POST
                        Request headers:
                        - Authorization header: Bearer <api key>
- Content-type: application/json
Request:
                        string: group_name- Mandatory 
                        string[]: computer_names- Mandatory
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                            "group_name": "Group A",
                            "computer_names": [
                              "Computer A",
                              "Computer B"
                            ]
                      
                        }
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "SUCCESS"
                      
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                              {
                                  "description": "Group name does not exists"
                                }
                              ]
                      }
                      
                      
                      Expected error response
                        Computer names are not found in the request
                        Invalid user
                        Invalid user permission
                        INTERNAL_SERVER_ERROR
                        Invalid user plan
                        Group name can not be blank
                        Group name does not exists
                        Invalid group name	
                      
                      
                      
                      13. Get Web Viewer Connection URL
URL: https://web1.remotepc.com/rpcnew/api/msp/computer/get/connectUrl
 
                        Method-Type: POST
                        Request headers:
                        - Authorization header: Bearer <api key>
- Content-type: application/json
Request:
                        string: machine_id - Mandatory 
                        string: username - Mandatory
                      
                      HTTP response
                        200 (Success)
                        500 (Server Error)
                        400 (Invalid Parameters)
                        401 (Unauthorized)
                        403 (Invalid request)
                        404 (Not Found)
                      
                      Request sample
                        {
                            "username": "abc@xyz",
                            "machine_id": "GVHR654GBUYJH" 
                           }
                      
                        
                      
                      Response sample
                        {
                            "status": "OK",
                            "code": 200,
                            "message": "https://login.remotepc.com/rpcnew/viewer/redirect/msp/connect/process/abc"
                      
                        }
                      
                      Response error sample
                        {
                            "status": "BAD_REQUEST",
                            "code": 400,
                            "errorsCount": 1,
                            "errors": [
                              {
                                  "description": "Invalid machine_id"
                                }
                              ]
                      }
                      
                      
                      Description may include
                        Invalid user
                        Invalid machine_id
                        Invalid username
                        invalid host_machine_id or username