HTTP API allows you to get a software access to many features available in your personal account: manage desktops, create scheduled connections.
Requests
All requests must be made over the HTTPS (not HTTP) protocol with an appropriate method for each command at https://api.getscreen.me/v1/
Responses
Data responses are returned in JSON UTF-8 with ContentType: application/json. Each response wraps data in the data JSON container
Response codes:
The API server may return the following HTTP response codes:
HTTP response code | Description |
---|---|
200 OK | Request accepted and processed |
400 Bad Request | Request denied, invalid parameters, error |
403 Forbidden | Request denied, no access to data |
404 Not Found | Request denied, unknown request URL |
Authentication
API is RESTful API: the server doesn’t store the client connection state. That’s why the client must send authorization data each time a request is sent. An API key is used as such data. Add the key in each request to the ?apikey= parameter
https://api.getscreen.me/v1/?apikey=YOUR_API_KEY
Methods
These are commands for managing computers and connections. We have divided them into several groups:
- Permanent Access
- Remote Support
- Connection history
Desktop list
You can get the full desktop list with the devices/agents method
In the context of API calls, desktops will be referred to as Agents since a desktop is technically managed with an agent
Request:
GET https://api.getscreen.me/v1/agents/list ?apikey=<string>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
Response:
{ "data":[ { "id":1001, "name":"Allesandro Paci", "group":"Accounting", "disabled":false, "limited":false, "link_time":1587837997, "last_time":1600374761, "geo":{ "ip":"2.21.31.68", "country":"USA", "region":"California", "city":"Los Angeles" }, "permanent_url":"https://go.getscreen.me/paci", "preview_url":"https://getscreen.me/preview/1245273f5448a704379da46f476564a592efb17c6a7695adde96247cd7874416GbBzRm6SRLMqrP0YoYFMxCopL6NTzvn8.png", "os":"win", "version":"1.9.4", "online":true, "installed":true, "favorite":false, "owner":"john.smith@gmail.com", "sessions":{ "last":{ "id":148505, "start_time":1600343858, "stop_time":1600343900, "client":{ "ip":"188.162.195.82", "country":"Russian Federation", "region":"Tatarstan", "city":"Kazan", "user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36" } }, "total":121 } }, ... ] }
Response data:
Name | Type | Description |
---|---|---|
id | number | Internal system ID |
name | string | Name |
group | string | Group |
disabled | boolean |
Is the agent blocked?
You cannot connect to blocked agents. An agent is blocked if the number of desktops exceeds the limits of your rate plan. |
limited | boolean |
Is the agent limited?
An agent is limited if the number of attached files exceeds the limits of your rate plan. The agent is blocked 10 days after it’s limited. |
link_time | unixtime | Added to personal account date and time |
last_time | unixtime | Last active date and time |
geo | object | Location |
geo.ip | string | IP address |
geo.country | string | Country |
geo.region | string | Region |
geo.city | string | City |
permanent_url | string |
Permanent connection URL
The field may be missing if the access isn’t available for unauthorized users |
preview_url | string | Desktop preview download URL |
os | string | Operating system. Possible values: win, mac, and linux |
version | string | Agent version |
online | boolean | Current active state |
installed | boolean | Is the agent installed on the desktop? |
favorite | boolean | Is this a favorited desktop from the personal account? |
owner | string | Desktop access system owner account |
sessions | object | Connection info |
sessions.last | object | Last connection |
sessions.last.id | number | Internal system connection ID |
sessions.last.start_time | unixtime | Connection start date and time |
sessions.last.stop_time | unixtime |
Connection stop date and time
The field may be missing if the connection is active |
sessions.last.client | object | Client info (connection creator) |
sessions.last.client.ip | string | IP address |
sessions.last.client.country | string | Country |
sessions.last.client.region | string | Region |
sessions.last.client.city | string | City |
sessions.last.client.user_agent | string | Client browser user agent |
sessions.total | object | Total sessions |
Get connection link
To connect to the desktop with API, you need to get a one-time link with the agents/connect method
The link expires right after its first use. You need to get one each time you want to connect.
Request:
POST https://api.getscreen.me/v1/agents/connect ?apikey=<string> &agent_id=<number>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
agent_id * | number | Internal system agent ID |
Response:
{ "data": { "url": "https://go.getscreen.me/john.smith/?connect=20177&llt=66b4kj671pm3abpp5xh17elpnpze245382m9pxbrx313l2xp52hmxqe4e1dekpej&s=c2c5ca25eb4fca787b74a97648e0856951e2b9c7aa02cbf83ac62c81e21a9bab" } }
Response data:
Name | Type | Description |
---|---|---|
url | string | Connection URL |
Open connection list
To get a list of open connections from the Remote support section, use the support/list method
Request:
GET https://api.getscreen.me/v1/support/list ?apikey=<string>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
Response:
{ "remain":100, "data":[ { "id":328, "status":0, "create_time":1600262268, "invite_code":"408080316", "invite_url":"https://go.getscreen.me/invite/408080316", "connect_url":"https://go.getscreen.me/turbo/nrhaStVwQSQ1J4DW0cL4wc1ADUeyug8BZjFaCgEqT4wuFXSPXQrGoRRBUxK1uFTU1Sr7bYlsviZ0djTophpmnIhpaZuMfGSKdSefcDzOWCgJuGeHGA5hFkcflhAXhBrx", "client_name":"Jacob Williams", "client_os":"", "client_preview_url":"" } ] }
Connection record data:
Name | Type | Description |
---|---|---|
id | number | Internal system connection ID |
status | number |
Connection status. Possible values:
|
create_time | unixtime | Connection creation date and time |
invite_code | string | Invitation code |
invite_url | string | Invitation URL |
connect_url | string | Operator connection URL |
client_name | string | Client name |
client_os | string |
Operating system. Possible values: win, mac, and linux
The field is filled after the client joins |
client_preview_url | string |
Client desktop thumbnail
The field is filled after the client joins |
Additional info:
Name | Type | Description |
---|---|---|
remain | number | Number of remaining connections within the rate plan |
Create connection
To create a scheduled connection for remote support, use the support/create method
Request:
POST https://api.getscreen.me/v1/support/create ?apikey=<string> &client_name=<string>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
client_name | string | Client name (only visible to you). Optional parameter. |
Response:
{ "data":[ { "id":328, "status":0, "create_time":1600262268, "invite_code":"408080316", "invite_url":"https://go.getscreen.me/invite/408080316", "connect_url":"https://go.getscreen.me/turbo/nrhaStVwQSQ1J4DW0cL4wc1ADUeyug8BZjFaCgEqT4wuFXSPXQrGoRRBUxK1uFTU1Sr7bYlsviZ0djTophpmnIhpaZuMfGSKdSefcDzOWCgJuGeHGA5hFkcflhAXhBrx", "client_name":"Jacob Williams", "client_os":"", "client_preview_url":"" } ] }
Join in the connection
Name | Type | Description |
---|---|---|
id | number | Internal system connection ID |
status | number |
Connection status. Possible values:
|
create_time | unixtime | Connection creation date and time |
invite_code | string | Invitation code |
invite_url | string | Invitation URL |
connect_url | string | Operator connection URL |
client_name | string | Client name |
client_os | string |
Operating system. Possible values: win, mac, and linux
The field is filled after the client joins |
client_preview_url | string |
Client desktop thumbnail
The field is filled after the client joins |
Connection info
To get the info about a specific connection, use the support/info method
Request:
GET https://api.getscreen.me/v1/support/info ?apikey=<string> &connection_id=<number>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
connection_id * | number | Internal system connection ID |
Response:
{ "data":[ { "id":328, "status":2, "create_time":1600262268, "invite_code":"408080316", "invite_url":"https://go.getscreen.me/invite/408080316", "connect_url":"https://go.getscreen.me/turbo/nrhaStVwQSQ1J4DW0cL4wc1ADUeyug8BZjFaCgEqT4wuFXSPXQrGoRRBUxK1uFTU1Sr7bYlsviZ0djTophpmnIhpaZuMfGSKdSefcDzOWCgJuGeHGA5hFkcflhAXhBrx", "client_name":"Jacob Williams", "client_os":"win", "client_preview_url":"https://pcommand.com/preview/f90d07668bccd418a5a8922f2ee455f1eb004c2bbeb5f9fe05ed6970c3389114Zl5PgknTWlU0fWBe4b9YoHNvRlD5Iwl5.png" } ] }
Response data:
Name | Type | Description |
---|---|---|
id | number | Internal system connection ID |
status | number |
Connection status. Possible values:
|
create_time | unixtime | Connection creation date and time |
invite_code | string | Invitation code |
invite_url | string | Invitation URL |
connect_url | string | Operator connection URL |
client_name | string | Client name |
client_os | string |
Operating system. Possible values: win, mac, and linux
The field is filled after the client joins |
client_preview_url | string |
Client desktop thumbnail
The field is filled after the client joins |
Close connection
To close a connection, use the support/close method
Request:
POST https://api.getscreen.me/v1/support/close ?apikey=<string> &connection_id=<number>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
connection_id * | number | Internal system connection ID |
Response:
The response will be returned empty. To analyze the command execution, use only HTTP response code.
Get connection list
Use the history/list method to get a list of your connections.
Request:
GET https://api.getscreen.me/v1/history/list ?apikey=<string> &agent_id=<number> &date_from=<unixtime> &date_to=<unixtime> &video=<boolean> &offset=<number> &limit=<number>
Request parameters:
Parameter | Type | Value |
---|---|---|
apikey * | string | Request authorization API key |
agent_id | number | Filter by agent ID |
date_from | unixtime | Filter by date and time - beginning of period |
date_to | unixtime | Filter by date and time - end of period |
video | boolean | Filter by video availability |
offset | number | Offset of the first position in the list |
limit | number | The number of items in the list. The default value is 20, the maximum value is 100. |
Response:
{ "offset": 0, "limit": 10, "total": 15, "filter": { "date_from": 1608660281, "date_to": 1608660389, "agent_id": 1001, "video": true }, "data": [ { "id": 27233, "start": 1608660273, "stop": 1608660281, "clients": [ { "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36", "login": "john.smith@gmail.com", "geo": { "ip": "2.21.31.68", "country": "USA", "region": "California", "city": "Los Angeles" } } ], "agent": { "id": 1001, "name": "DESKTOP-SJBU5PO", "group": "Accounting", "geo": { "ip": "2.21.31.68", "country": "USA", "region": "California", "city": "Los Angeles" }, "os": "win", "version": "2.1.5", "owner": "john.smith@gmail.com" }, "video": { "url": "https://st1.getscreen.me/video/2/27233.mp4", "size": 428652 } }, ... ] }
Response data:
Name | Type | Description |
---|---|---|
id | number | Intra-system connection identifier |
start | unixtime | Connection start date and time |
stop | unixtime |
End date and time of the connection
Can be empty if the connection is not completed |
clients | array | List of clients who joined the connection |
clients[.]user_agent | string | User-Agent |
clients[.]login | string |
User login
Can be empty if the connection was anonymous |
clients[.]geo | object | Geo-location |
clients[.]geo.ip | string | IP address |
clients[.]geo.country | string | Country |
clients[.]geo.region | string | Region |
clients[.]geo.city | string | City |
agent | object | Agent Information |
agent.id | number | Intra-system agent identifier |
agent.name | string | Title |
agent.group | string | Group |
agent.geo | object | Geo-location |
agent.geo.ip | string | IP address |
agent.geo.country | string | Country |
agent.geo.region | string | Region |
agent.geo.city | string | City |
agent.os | string | Operating system. Possible values: win, mac and linux. |
agent.version | string | Program version |
agent.owner | string | Login to the account of the owner of the permanent access |
video | object |
Video recording information
May not be present if there was no video recording of the connection |
video.url | string |
Address for downloading the video file of the recording
To download the video file of the connection record, you must add the parameter ?apikey= with the value of your API key. |
video.size | number | Record video file size in bytes |