Drag mouse (native)
curl --request POST \
--url https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"to_x": 123,
"to_y": 123,
"start_x": 123,
"start_y": 123,
"duration": 123,
"button": "left"
}
'import requests
url = "https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag"
payload = {
"to_x": 123,
"to_y": 123,
"start_x": 123,
"start_y": 123,
"duration": 123,
"button": "left"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
to_x: 123,
to_y: 123,
start_x: 123,
start_y: 123,
duration: 123,
button: 'left'
})
};
fetch('https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'to_x' => 123,
'to_y' => 123,
'start_x' => 123,
'start_y' => 123,
'duration' => 123,
'button' => 'left'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag"
payload := strings.NewReader("{\n \"to_x\": 123,\n \"to_y\": 123,\n \"start_x\": 123,\n \"start_y\": 123,\n \"duration\": 123,\n \"button\": \"left\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"to_x\": 123,\n \"to_y\": 123,\n \"start_x\": 123,\n \"start_y\": 123,\n \"duration\": 123,\n \"button\": \"left\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"to_x\": 123,\n \"to_y\": 123,\n \"start_x\": 123,\n \"start_y\": 123,\n \"duration\": 123,\n \"button\": \"left\"\n}"
response = http.request(request)
puts response.read_body{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}computer
Drag mouse (native)
Perform a drag operation using absolute coordinates with required start and optional duration.
POST
/
v1
/
computer
/
{machine_id}
/
input
/
mouse
/
drag
Drag mouse (native)
curl --request POST \
--url https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"to_x": 123,
"to_y": 123,
"start_x": 123,
"start_y": 123,
"duration": 123,
"button": "left"
}
'import requests
url = "https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag"
payload = {
"to_x": 123,
"to_y": 123,
"start_x": 123,
"start_y": 123,
"duration": 123,
"button": "left"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
to_x: 123,
to_y: 123,
start_x: 123,
start_y: 123,
duration: 123,
button: 'left'
})
};
fetch('https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'to_x' => 123,
'to_y' => 123,
'start_x' => 123,
'start_y' => 123,
'duration' => 123,
'button' => 'left'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag"
payload := strings.NewReader("{\n \"to_x\": 123,\n \"to_y\": 123,\n \"start_x\": 123,\n \"start_y\": 123,\n \"duration\": 123,\n \"button\": \"left\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"to_x\": 123,\n \"to_y\": 123,\n \"start_x\": 123,\n \"start_y\": 123,\n \"duration\": 123,\n \"button\": \"left\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cyberdesk.io/v1/computer/{machine_id}/input/mouse/drag")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"to_x\": 123,\n \"to_y\": 123,\n \"start_x\": 123,\n \"start_y\": 123,\n \"duration\": 123,\n \"button\": \"left\"\n}"
response = http.request(request)
puts response.read_body{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
Unique key for idempotent requests. If provided, the server ensures the request is processed at most once. Retries with the same key return the original response. SDKs auto-generate this for write requests.
Example:
"550e8400-e29b-41d4-a716-446655440000"
Path Parameters
Body
application/json
Response
Successful Response
Was this page helpful?
⌘I