SimpleHelp Integration API
Version 1.0
The SimpleHelp API is a web-based HTTP API that clients can use to query state in the SimpleHelp server and modify certain configuration settings. The API is REST-like. Each HTTP request contains all the data required to complete that request.
The SimpleHelp API endpoint is:
https://host:port/api/v1/api_token/query
where:
- host - the hostname of your SimpleHelp server
- port - the port to connect on
- api_token - a server-specific API token that can be generated in the Administration tab of the Technician Console
- query - the query to process on the server
Each API request to the API endpoint may optionally include POST data sent from the client to the server. The server will then respond with an HTTP return code and some return data. The post data and return data are JSON formatted.
API Errors and Return Codes
SimpleHelp uses HTTP return codes to indicate whether a request was successful or not. Return codes can be split into three groups:
- 200s - Success
- 400s - Failure to process the requested query given the post data and API token
- 500s - Server failure.
Certain API calls, and API failures, will return an API response with details about whether the call succeeded and some reason for a failure.
API Response Object
X | X |
---|---|
success Boolean |
true if the request was successful, and false otherwise. |
reason String |
if success is false , a short description why the request failed. |
Technician Queries
Technician queries manage the set of technicians configured in the SimpleHelp server. A Technician Object contains attributes specific to each technician account.
Technician Object
X | X |
---|---|
uniqueID integer |
An internal unique identifier for this technician. |
displayName String |
The technician’s display name. |
username String |
The technician’s username, which must be unique. |
emailAddress String |
An email address for this technician. |
isAnonymous Boolean |
true if this is an account that has been created by the SimpleHelp server after an anonymous group-based login. |
allowLocallyAuthenticatedLogins Boolean |
true if this technician can login using their account password. |
enabled Boolean |
true if this technician’s account is currently enabled. |
appProfilesUser Boolean |
true if this is an account created specifically for preconfigured applications. |
groupIDs Integer Array |
An integer array of Technician Group IDs indicating which groups this technician is a member of |
List Technicians
/technicians/list
Request the list of technician accounts from the server
curl [SERVER]/technicians/list \
-X POST \
-H "Content-Type: application/json"
Return a JSON array of Technician Objects detailing all technician accounts configured in the SimpleHelp server.
Response
X | X |
---|---|
Technician Object Array | A JSON array of Technician Objects representing the technician accounts in the server. |
Create a New Technician
/technicians/new
Create a technician account
curl [SERVER]/technicians/new \
-X POST \
-H "Content-Type: application/json"
-d '{technician: {username: "testuser", emailAddress:"testuser@simple-help.com}}'
Create a new technician account in the SimpleHelp server.
POST Data Attributes
X | X |
---|---|
technician Technician Object |
A JSON Technician Object detailing the account to create. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Retrieve a Technician
/technicians/get
Retrieve a technician account by username
curl [SERVER]/technicians/get \
-X POST \
-H "Content-Type: application/json"
-d '{technician: {username: "testuser"}}'
Retrieve a technician account by uniqueID or by username.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified lookup a technician by this uniqueID. |
username String |
If specified lookup a technician by this username. |
technician Technician Object |
If specified lookup a technician using the username attribute of this technician object. |
Response Data
X | X |
---|---|
Technician Object | A technician object representing this technician account. |
Update a Technician
/technicians/set
Set the display name for a technician
curl [SERVER]/technicians/set \
-X POST \
-H "Content-Type: application/json"
-d '{technician: {username: "testuser", displayName: "New Name"}}'
Update one or more technician account attributes.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified update the technician account with this uniqueID. |
username String |
If specified lookup a technician by this username. |
technician Technician Object |
A technician object with one or more attributes that will be set for this technician account. If the uniqueID is not specified update the technician account using the username attribute of this technician object. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Remove a Technician
/technicians/remove
Remove a technician account
curl [SERVER]/technicians/remove \
-X POST \
-H "Content-Type: application/json"
-d '{technician: {username: "testuser"}}'
Remove a technician by uniqueID or by username.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified remove a technician with this uniqueID. |
username String |
If specified lookup a technician by this username. |
technician Technician Object |
If specified remove a technician using the username attribute of this technician object. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Set a Technician Password
/technicians/password/set
Set a password to abcd1234
curl [SERVER]/technicians/password/set \
-X POST \
-H "Content-Type: application/json"
-d '{technician: {username: "testuser"}, password:"abcd1234"}'
Set the password of a technician account.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified set the password for a technician with this uniqueID. |
username String |
If specified lookup a technician by this username. |
technician Technician Object |
If specified set the password for a technician using the username attribute of this technician object. |
password String |
The new password to set. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Reset a Technician TOTP Key
/technicians/totp/remove
Remove an OTP key for a technician
curl [SERVER]/technicians/totp/remove \
-X POST \
-H "Content-Type: application/json"
-d '{technician: {username: "testuser"}}'
Remove the TOTP key for a technician account. Technicians will be prompted to reconfigured their app-based authentication on next login.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified remove the TOTP key for a technician with this uniqueID. |
username String |
If specified lookup a technician by this username. |
technician Technician Object |
If specified remove the TOTP key for a technician using the username attribute of this technician object. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Technician Group Queries
Technician Group queries can be used to manage the set of Technician Groups in the SimpleHelp server. The follow JSON object details the attributes in a Technician Group Object.
Technician Group Object
X | X |
---|---|
uniqueID Integer |
An internal unique identifier for this technician group. |
name String |
The group name. |
allowAnonymousLogins Boolean |
true if this group allows logins of technicians with no SimpleHelp technician account. |
max_groupShSessions Integer |
The maximum number of support sessions this group can use. |
max_groupSgSessions Integer |
The maximum number of access sessions this group can use. |
max_userShSessions Integer |
The maximum number of support sessions a technician in this group can use. |
max_userShSessions Integer |
The maximum number of access sessions a technician in this group can use. |
maxFileSize Long |
The maximum file size that can be transferred in bytes. |
requestAccessTimeout Long |
The timeout in milliseconds for request access requests. A timeout of 0 means no timeout. |
groupSpecificHostname String |
The server hostname specific to users of this group. |
defaultSgServiceName String |
The default Remote Access Service name for users of this group. |
videoPassword String |
The password required for recordings creating by users in this group. |
sessionSpeedLimitKbps Integer |
The bandwidth limit imposed on technicians in this group. A limit of 0 means no limit. |
fpsDelay Long |
The frame per second delay, in milliseconds, imposed on users in this group. The resulting frames per second can be calculated as 1000/fpsDelay. |
ldapSettings LDAP Settings Object |
A LDAP Settings Object describing the LDAP authentication settings for this group. |
mfaSettings MFA Settings Object |
A MFA Settings Object describing the configured group multifactor authentication. |
passwordSettings Password Settings Object |
A Password Settings Object describing whether group password authentication is permitted. |
LDAP Settings Object
X | X |
---|---|
enabled Boolean |
Set to true if LDAP authentication is enabled. |
advanced Boolean |
Set to true if advanced LDAP settings are specified. |
baseDN String |
The baseDN to use when querying the LDAP server. |
filter String |
The advanced search filter to use when querying the LDAP server. |
memberOfGroups String Array |
The directory groups that members of this Technician Group will be authenticated with. |
MFA Settings Object
X | X |
---|---|
email Boolean |
Set to true if email-based multifactor authentication is enabled. |
app Boolean |
Set to true if app-based multifactor authentication is enabled. |
emailCodeLength Integer |
The length of the authentication code sent to users. |
emailSubject String |
The template email subject that is sent to users when email-based multifactor authentication is required. |
emailBody String |
The template email body that is sent to users when email-based multifactor authentication is required. |
rememberMachine Boolean |
Set to true if technicians are allowed to prevent future multifactor requests once authenticated. |
List Groups
/groups/list
Return all the Technician Groups
curl [SERVER]/groups/list \
-X POST \
-H "Content-Type: application/json"
Return a JSON array of Technician Group Objects detailing all technician groups configured in the SimpleHelp server.
Response Data
X | X |
---|---|
Technician Group Object Array | A JSON array of Technician Group Objects representing the groups in the server. |
Create a Technician Group
/groups/new
Create a new group called TechGroup
curl [SERVER]/groups/new \
-X POST \
-H "Content-Type: application/json"
-d '{group: {name: "TechGroup"}}'
Create a new Technician Group in the SimpleHelp server.
POST Data Attributes
X | X |
---|---|
group Technician Group Object |
A JSON Technician Group Object detailing the group to create. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Retrieving a Technician Group
/groups/get
Retrieve a group by name
curl [SERVER]/groups/get \
-X POST \
-H "Content-Type: application/json"
-d '{group: {name: "TechGroup"}}'
Retrieve the details of a Technician Group by uniqueID or by group name.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified retrieve details of the group with this uniqueID. |
group Technician Group Object |
If specified lookup a group using the name attribute of this Technician Group object. |
Response Data
X | X |
---|---|
Technician Group Object | A technician group object representing this group. |
Updating a Technician Group
/groups/set
Set the name of a group with ID 1234
curl [SERVER]/groups/get \
-X POST \
-H "Content-Type: application/json"
-d '{uniqueID: 1234, group: {name: "TechGroup"}}'
Update one or more group attributes.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified set the attributes on the group with this uniqueID. |
group Technician Group Object |
A technician group object with one or more attributes that will be set for this group. If the uniqueID is not specified update the group using the name attribute of this technician group object. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Removing a Technician Group
/groups/remove
Remove the technician group with ID 1234
curl [SERVER]/groups/remove \
-X POST \
-H "Content-Type: application/json"
-d '{uniqueID: 1234}'
Remove a group by unique ID or by group name.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified set the attributes on the group with this uniqueID. |
group Technician Group Object |
If specified lookup a group using the name attribute of this Technician Group object. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Setting a Group Password
/groups/password/set
Set the Technician Group password
curl [SERVER]/groups/password/set \
-X POST \
-H "Content-Type: application/json"
-d '{uniqueID: 1234, password: "abcd1234"}'
Set the password for this technician group.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified lookup a group by this uniqueID. |
group Technician Group Object |
If specified lookup a group using the name attribute of this Technician Group object. |
password String |
The new password to set. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Fetching Group Permissions
/groups/permissions/get
Retrieve the permissions for group with ID 1234
curl [SERVER]/groups/permissions/get \
-X POST \
-H "Content-Type: application/json"
-d '{uniqueID: 1234}'
Retrieve the permissions for a particular Technician Group.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified fetch the permissions for the group with this uniqueID. |
group Technician Group Object |
If specified lookup a group using the name attribute of this Technician Group object and retrieve the permissions for this group. |
Response Data
X | X |
---|---|
Map (String > Boolean) | Permissions are returned as a Map of permissions names associated with Boolean values. |
Setting Group Permissions
/groups/permissions/set
Set the canRunTools permission to
true
for group with ID 1234
curl [SERVER]/groups/permissions/set \
-X POST \
-H "Content-Type: application/json"
-d '{group: {uniqueID: 1234, permissions: {canRunTools: true}}}'
Set one or more permissions for a particular Technician Group.
POST Data Attributes
X | X |
---|---|
uniqueID Integer |
If specified fetch the permissions for the group with this uniqueID. |
group Technician Group Object |
If specified lookup a group using the name attribute of this Technician Group object and set the permissions for this group. The permissions are specified as permissions within group . |
Machine Queries
Machine queries allow a client to query the Remote Access Service list, and to retrieve certain monitoring and hardware information stored in the server. Services are represented in the API using Machine Objects.
Machine Object
X | X |
---|---|
machineID String |
A unique identifier for a machine. |
online Boolean |
true if the machine is currently online. |
groups String Array |
An array of group names representing the group that this machine is in. |
name String |
The name of this machine. |
state String |
One of In Use , Not In Use , Headless or Unknown . |
protocol String |
The current polling protocol. |
lastRegistrationTime Long |
The timestamp of the last time this machine registered with the server, in milliseconds. |
sessionCount Integer |
The number of active sessions. |
monitoringEnabled Boolean |
true if this machine is currently monitoring. |
os String |
The remote machine operating system. |
hostname String |
The remote machine hostname. |
wanIP String |
The remote machine WAN IP address. |
ipAddresses Network Adapter Object Array |
An array of Network Adapter Objects describing the local LAN adapters. |
Network Adapter Object
X | X |
---|---|
ip String |
The LAN IP address for this adapter. |
mac String |
The MAC address for this adapter. |
name String |
The name of this adapter. |
Listing Machines
/machines/list
Return a list of all machines registering with the server
curl [SERVER]/machines/list \
-X POST \
-H "Content-Type: application/json"
Return a JSON array of Machine Objects detailing all Remote Access Services that are represented in the SimpleHelp server.
Response Data
X | X |
---|---|
Machine Object Array | A JSON array of Machine Objects representing services that have registered with the server. |
Get Machine Details
/machines/get
Retrieve machine details by machine ID
curl [SERVER]/machines/get \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234"}'
Fetch a Machine Object for a particular machine or set of machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine for which details should be fetched. |
machineIDs String Array |
The machine IDs of the machines for which details should be fetched. |
Response Data
X | X |
---|---|
Machine Object Array | A JSON array of Machine Objects representing the details of the requested machines. |
Change Machine Settings
/machines/set
Rename a machine
curl [SERVER]/machines/set \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234", name: "New Name"}'
Change settings for one or more remote machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine for which details should be fetched. |
machineIDs String Array |
The machine IDs of the machines for which details should be fetched. |
monitor Boolean |
Enable or disable monitoring for the specified machines (v5.2.12 or later). |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Get Machine Hardware Details
/machines/hardware/get
Retrieve the hardware information for a machine
curl [SERVER]/machines/hardware/get \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234"}'
Returns an array of Machine Hardware Objects containing hardware details about the requested machines. Hardware details are detailed across multiple objects, each of which is outlined below.
Hardware Object
X | X |
---|---|
machineID String |
The machine ID of the machine that his hardware is collected from. |
totalMemory Long |
The total memory, in bytes. |
modelName String |
The model name of this machine. |
modelIdentifier String |
This model identifier of this machine. |
manufacturer String |
The manufacturer of this machine. |
serial String |
The serial number of this machine. |
eccMemory Boolean |
true if this machine is using ECC memory. |
memory Memory Object Array |
An array of Memory Objects detailing the installed memory. |
disks Disk Object Array |
An array of Disk Objects detailing the disks in this machine. |
processors Process Object Array |
An array of Processor Objects detailing the processors in this machine. |
Memory Object
X | X |
---|---|
capacity Long |
The memory capacity in bytes. |
type String |
The type of memory, such as DDR3. |
speedHz Long |
The speed of the memory, in Hz. |
status String |
The system produced status of this memory. |
manufacturer String |
The manufacturer of this memory. |
Disk Object
X | X |
---|---|
disk String |
The disk identifier used by the operating system. |
deviceName String |
The name of this disk. |
mediaName String |
The name of the disk media. |
capacity Long |
The capacity of the disk, in bytes. |
type String |
The type of disk, such as SSD. |
protocol String |
The protocol of the disk. |
internal Boolean |
true if this is an internal disk. |
Processor Config
X | X |
---|---|
name String |
The name of this processor. |
speedHz String |
The speed of this processor in Hz. |
cores Integer |
The number of cores. |
is64bit Boolean |
true if this is a 64bit processor. |
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the remote access machine to be queried. |
machineIDs String Array |
A string array of machine IDs of the Remote Access Services to be queried. |
Response Data
X | X |
---|---|
Machine Object Array | An array of Hardware Objects containing hardware details for the provided machine IDs. |
Get Machine Monitoring Details
/machines/monitoring/get
Fetch the latest monitoring information for a machine
curl [SERVER]/machines/monitoring/get \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234"}'
Returns an array of Machine Monitoring Objects containing monitoring data retrieved from the specified machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the service to be queried. |
machineIDs String Array |
A string array of machine IDs of the services to be queried. |
Response Data
X | X |
---|---|
Machine Monitoring Object Array | An array of Monitoring Objects containing monitoring details for the provided machine IDs. |
Machine Monitoring Object
X | X |
---|---|
machineID String |
The machine ID of the machine that this monitoring data is collected from. |
cpuLoadAverages Integer Array |
The last collected CPU load averages. |
memoryLoadAverages Integer Array |
The last collected memory load averages. |
is64bit Boolean |
true if this is a 64bit machine. |
os String |
The operating system name and version. |
hostname String |
The hostname of this machine. |
wanIP String |
The public WAN IP of this machine. |
lastRestarted Long |
The timestamp in milliseconds when this service was last restarted. |
disks Disk Monitoring Array |
An array of Disk Monitoring objects. |
cpuOffenders CPU Offender Array |
An array of CPU Offender Objects detailing processors that are using the majoring of the CPU. |
networkAdapters Network Adapter Object Array |
An array of Network Adapter objects detailing the network interfaces on this machine. |
Disk Monitoring Object
X | X |
---|---|
name String |
The name of the disk. |
usedPercentage Double |
The percentage of disk space used. |
CPU Offenders Object
X | X |
---|---|
name String |
The name of the offending process. |
usedPercentage Double |
The percentage of CPU used. |
Fetch Machine Notes
/machines/notes/get
Fetch the notes associated with a machine
curl [SERVER]/machines/notes/get \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234"}'
Fetch the notes and warning text associated with one or more machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine for which notes should be fetched. |
machineIDs String Array |
The machine IDs of the machines for which notes should be fetched. |
Response Data
X | X |
---|---|
Notes Response Array | An array of Notes Response objects. |
Notes Response Object
X | X |
---|---|
machineID String |
The machine ID of a machine. |
notes String |
The notes associated with this machine. |
warnings String |
The warning text associated with this machine. |
Setting Machine Notes
/machines/notes/set
Set the notes and warning text for a machine
curl [SERVER]/machines/notes/set \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234", notes: "Some notes", warning: "A warning"}'
Set the notes and warning text associated with a machine.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine for which notes should be set. |
notes String |
The notes to be associated with this machine. |
warnings String |
The warning text to be associated with this machine. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Fetching Machine Properties
/machines/properties/get
Fetch the machine properties associated with a machine
curl [SERVER]/machines/properties/get \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234"}'
Fetch the properties associated with one or more machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine to query. |
machineIDs String Array |
The machine IDs of the machines to query. |
includeInherited Boolean |
Set to true to include properties inherited from ancestor machine groups. |
key String |
If specified, the key of the property to fetch. If absent, all properties will be returned. |
Response Data
X | X |
---|---|
Machine Properties Object Array | An array of Machine Properties Objects, one for each machine requested. |
Machine Properties Object
X | X |
---|---|
machineID String |
The machine ID of the machine to query. |
properties Machine Property Object Array |
An array of Machine Property Objects. |
Machine Property Object
X | X |
---|---|
key String |
The key of the machine property. |
value String |
The value of the machine property. |
Setting Machine Properties
/machines/properties/set
Set a property "License":"License Value" for a machine
curl [SERVER]/machines/properties/set \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234", key: "License", value: "License Value"}'
Set a key=value property for one or more machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine to query. |
key String |
The key of the machine property. |
value String |
The value of the machine property. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Removing Machine Properties
/machines/properties/remove
Remove a property "License" for a machine
curl [SERVER]/machines/properties/remove \
-X POST \
-H "Content-Type: application/json"
-d '{machineID: "SG_1234", key: "License"}'
Remove Machine Properties from one or more machines.
POST Data Attributes
X | X |
---|---|
machineID String |
The machine ID of the machine to remove a property from. |
key String |
The key of the machine property to remove. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Fetching Machine Group Properties
/machinegroups/properties/get
Fetch the machine group properties for the group 'London' with parent group 'United Kingdom'.
curl [SERVER]/machinegroups/properties/get \
-X POST \
-H "Content-Type: application/json"
-d '{groups: ["United Kingdon", "London"], includeInherited: true}'
Fetch the group properties associated with a machine group, and optionally return properties inherited from ancestor groups.
POST Data Attributes
X | X |
---|---|
groups String Array |
An array of group names identifying a path in the group hierarchy |
includeInherited Boolean |
Set to true to include properties inherited from ancestor machine groups. |
Response Data
X | X |
---|---|
String Array | If no key is specified, a string array containing all the keys for this group's properties. |
String | If a key is specified, the value associated with this key. |
Setting Machine Group Properties
/machinegroups/properties/set
Set the machine group property 'exampleKey'='exampleValue' for the group 'London' with parent group 'United Kingdom'.
curl [SERVER]/machinegroups/properties/get \
-X POST \
-H "Content-Type: application/json"
-d '{groups: ["United Kingdon", "London"], key: "exampleKey", value: "exampleValue"}'
Set a key value pair associated with a machine group.
POST Data Attributes
X | X |
---|---|
groups String Array |
An array of group names identifying a path in the group hierarchy |
key String |
The key of the machine group property to set. |
value String |
The value of the machine group property to set. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Server Queries
Server Queries are general purpose requests that allow you to manage technician restrictions and request a configuration backup.
Retrieve Technician Restrictions
/server/tech-restrictions/get
Retrieve technician IP restrictions
curl [SERVER]/server/tech-restrictions/get \
-X POST \
-H "Content-Type: application/json"
Retrieve the current set of IP restrictions, each expressed as a regular expression.
Response Data
X | X |
---|---|
String Array | A String Array with each string representing a single technician restriction, which restricts the source network that technicians are able to log in from. |
Adding New Technician Restrictions
/server/tech-restrictions/new
Add IP 1.2.3.4 as an IP restriction
curl [SERVER]/server/tech-restrictions/new \
-X POST \
-H "Content-Type: application/json"
-d "{restrictions: ['1.2.3.4']}"
Add IP restrictions to the current set of restrictions, with each expressed as a regular expression.
POST Data Attributes
X | X |
---|---|
restrictions String Array |
A String Array with each string representing a single technician restriction that will be added. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Removing Technician Restrictions
/server/tech-restrictions/remove
Remove IP 1.2.3.4 as an IP restriction
curl [SERVER]/server/tech-restrictions/remove \
-X POST \
-H "Content-Type: application/json"
-d "{restrictions: ['1.2.3.4']}"
Remove IP restrictions from the current set of restrictions, with each expressed as a regular expression.
POST Data Attributes
X | X |
---|---|
restrictions String Array |
A String Array with each string representing a single technician restriction that will be removed. |
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Request a Configuration Backup
/server/backup-config
A request that will cause the SimpleHelp server to save a timestamped backup of the configuration file to configuration/backups/api
in the SimpleHelp server installation directory.
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
Fetch the Server Hostname
/server/hostname/get
Retrieve the hostname
curl [SERVER]/server/hostname/get \
-X POST \
-H "Content-Type: application/json"
Retrieve the hostname for this SimpleHelp server, as configured in the Network Settings section of the Administration tab.
Response Data
X | X |
---|---|
String | The currently configured hostname |
Set the Server Hostname
/server/hostname/set
Set the hostname for this server to 'simplehelp.server.com'
curl [SERVER]/server/hostname/get \
-X POST \
-H "Content-Type: application/json"
-d "{hostname: 'simplehelp.server.com'}"
Set the server's hostname, as configured in the Network Settings section of the Administration tab.
Response Data
X | X |
---|---|
API Response Object | A response indicating success or failure. |
History Queries
Query the server’s history repository to retrieve details of previous sessions. History results are serialised in a JSON History Object.
History Object
X | X |
---|---|
sessionID String |
The unique session ID of this session. |
type String |
The type of session. One of Access, Support or Presentation. |
technicianName String |
The display name of the technician who started the session. |
technicianUsername String |
The username of the technician who started the session. |
start Long |
The start time of this session, in milliseconds. |
duration Long |
The duration of this session, in milliseconds. |
lastModified Long |
The time that this session was last updated, in milliseconds. |
hasRecording Boolean |
true if this session has a synchronised recording. |
chat String |
A copy of the chat transcript. |
comments String |
A copy of the technician comments. |
mode String |
The initial session mode. One of “Mobile”, “File Transfer”, “Diagnostics”, “App Tunnel”, “VNC” or “Terminal”. |
appTunnelTarget String |
The app tunnel configuration (if this is an App Tunnel session). |
machine Machine Object |
A description of the remote machine connected to (for access sessions). |
customer Customer Object |
A description of the customer connected to (for support sessions). |
Customer Object
X | X |
---|---|
customerID String |
The unique customer ID for this customer. |
timeInQueue Long |
The time the customer spent waiting in the queue, in milliseconds. |
username String |
The customer’s local operating system username. |
country String |
The customer’s detected country. |
domain String |
The domain that the customer used to access the SimpleHelp server. |
url String |
The URL that the customer used to access the SimpleHelp server. |
os String |
The customer’s operating system. |
hostname String |
The customer’s local machine hostname. |
wanIP String |
The detected WAN IP address from where the customer connected. |
ipAddresses String Array |
The local LAN IP addresses configured on the customer’s machine. |
details Map (String > String) |
The customer details entered when first initiating a session. Keys are the labels specified, and values are the customer entered details. |
Listing Historical Sessions
/history/list
Retrieve the last 100 sessions in the history
curl [SERVER]/history/list \
-X POST \
-H "Content-Type: application/json"
-d "{maxResults: 100}"
Retrieve details of historical sessions.
POST Data Attributes
X | X |
---|---|
rangeStart Long |
Return sessions that started at, or after, the specified time in milliseconds. |
rangeEnd Long |
Return sessions that started before the specified time in milliseconds. |
rangeLastModified Boolean |
Set to true to return sessions where rangeStart and rangeEnd restrict the last modified time of the session rather than the start time. |
maxResults Integer |
The maximum results to return. The default is 50. |
textFilter String |
Include sessions that match the specified text filter. |
technicianNameFilters String Array |
Include sessions where the technician names match one or more of the specified filters. |
groupFilters Integer Array |
Include sessions where the technicians are in groups with the attached group ID photos. |
machineIDFilters String Array |
Include sessions to machines with the specified machine IDs. |
includeSupportSessions Boolean |
Set to true to include remote support sessions. The default is true . |
includeAccessSessions Boolean |
Set to true to include remote access sessions. The default is true . |
includePresentationSessions Boolean |
Set to true to include presentation sessions. The default is true . |
searchUntilSessionID String |
Return results until the specified session ID is encountered. |
Response Data
X | X |
---|---|
History Object Array | The list of history objects returned by the query. |
Alerts Queries
Retrieve the monitoring alerts.
Alert Object
X | X |
---|---|
name String |
The alert name. |
active Boolean |
true if the alert is currently enabled, false otherwise. |
triggered Boolean |
true if the alert is currently triggered, false otherwise. |
triggeredMachineIDs String Array |
An array of machine IDs of triggered machines. |
reason String |
A more complete reason about why the alert triggered. |
shortReason String |
A short reason about why the alert triggered. |
lastReportMS Long |
The timestamp that this alert last reported its state. |
stateAgeMS Long |
The duration, in milliseconds, that this alert has been in the current state. |
severity String |
One of information , severe , critical and warning . |
Listing Alerts
/alerts/list
Retrieve the alerts
curl [SERVER]/alerts/list \
-X POST \
-H "Content-Type: application/json"
Retrieve details of historical sessions.
Response Data
X | X |
---|---|
Alert Object | The list of alerts objects returned by the query. |
Session Queries
Retrieve the list of active support or access sessions, or query the waiting session queue.
Support Session Queries
Query the server for customer initiated support sessions that are in the waiting queue, or currently in session.
Support Session Object
X | X |
---|---|
customer Customer Object |
The customer details for this support session. |
technicianDisplayName String |
The technician's name. |
technicianUsername String |
The technician's username. |
technicianID Integer |
The technician's unique account ID. |
sessionID String |
The a unique session ID for this session. |
elapsedTime Long |
The session duration, in milliseconds. |
startTime Long |
The start time of the session, in milliseconds. |
Listing Queued Sessions
/support/queue/list
Retrieve the list of sessions in the waiting queue
curl [SERVER]/support/queue/list \
-X POST \
-H "Content-Type: application/json"
Retrieve the list of sessions in the waiting queue
Response Data
X | X |
---|---|
Support Session Object Array | An array of Support Session objects. |
Listing Active Support Sessions
/support/sessions/list
Retrieve the list of active support sessions
curl [SERVER]/support/sessions/list \
-X POST \
-H "Content-Type: application/json"
Response Data
X | X |
---|---|
Support Session Object Array | An array of Support Session objects. |
Access Session Queries
Query the server for access sessions that are currently in session.
Access Session Object
X | X |
---|---|
machine Machine Object |
The machine details for this access session. |
technicianDisplayName String |
The technician's name. |
technicianUsername String |
The technician's username. |
technicianID Integer |
The technician's unique account ID. |
sessionID String |
The a unique session ID for this session. |
elapsedTime Long |
The session duration, in milliseconds. |
startTime Long |
The start time of the session, in milliseconds. |
Listing Active Access Sessions
/access/sessions/list
Retrieve the list of active access sessions
curl [SERVER]/access/sessions/list \
-X POST \
-H "Content-Type: application/json"
Retrieve the list of active access sessions. These are sessions initiated to Remote Access Services in the Access tab.
Response Data
X | X |
---|---|
Access Session Object Array | An array of Access Session objects. |