JavaScript
import Kernel from '@onkernel/sdk';
const client = new Kernel({
apiKey: process.env['KERNEL_API_KEY'], // This is the default and can be omitted
});
await client.browsers.computer.clickMouse('id', { x: 0, y: 0 });import os
from kernel import Kernel
client = Kernel(
api_key=os.environ.get("KERNEL_API_KEY"), # This is the default and can be omitted
)
client.browsers.computer.click_mouse(
id="id",
x=0,
y=0,
)package main
import (
"context"
"github.com/kernel/kernel-go-sdk"
"github.com/kernel/kernel-go-sdk/option"
)
func main() {
client := kernel.NewClient(
option.WithAPIKey("My API Key"),
)
err := client.Browsers.Computer.ClickMouse(
context.TODO(),
"id",
kernel.BrowserComputerClickMouseParams{
X: 0,
Y: 0,
},
)
if err != nil {
panic(err.Error())
}
}curl --request POST \
--url https://api.onkernel.com/browsers/{id}/computer/click_mouse \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"x": 123,
"y": 123,
"hold_keys": [
"<string>"
],
"num_clicks": 1
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onkernel.com/browsers/{id}/computer/click_mouse",
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([
'x' => 123,
'y' => 123,
'hold_keys' => [
'<string>'
],
'num_clicks' => 1
]),
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;
}HttpResponse<String> response = Unirest.post("https://api.onkernel.com/browsers/{id}/computer/click_mouse")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"x\": 123,\n \"y\": 123,\n \"hold_keys\": [\n \"<string>\"\n ],\n \"num_clicks\": 1\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onkernel.com/browsers/{id}/computer/click_mouse")
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 \"x\": 123,\n \"y\": 123,\n \"hold_keys\": [\n \"<string>\"\n ],\n \"num_clicks\": 1\n}"
response = http.request(request)
puts response.read_body{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}Browser Computer Controls
Simulate a mouse click action on the browser instance
POST
/
browsers
/
{id}
/
computer
/
click_mouse
JavaScript
import Kernel from '@onkernel/sdk';
const client = new Kernel({
apiKey: process.env['KERNEL_API_KEY'], // This is the default and can be omitted
});
await client.browsers.computer.clickMouse('id', { x: 0, y: 0 });import os
from kernel import Kernel
client = Kernel(
api_key=os.environ.get("KERNEL_API_KEY"), # This is the default and can be omitted
)
client.browsers.computer.click_mouse(
id="id",
x=0,
y=0,
)package main
import (
"context"
"github.com/kernel/kernel-go-sdk"
"github.com/kernel/kernel-go-sdk/option"
)
func main() {
client := kernel.NewClient(
option.WithAPIKey("My API Key"),
)
err := client.Browsers.Computer.ClickMouse(
context.TODO(),
"id",
kernel.BrowserComputerClickMouseParams{
X: 0,
Y: 0,
},
)
if err != nil {
panic(err.Error())
}
}curl --request POST \
--url https://api.onkernel.com/browsers/{id}/computer/click_mouse \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"x": 123,
"y": 123,
"hold_keys": [
"<string>"
],
"num_clicks": 1
}
'<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.onkernel.com/browsers/{id}/computer/click_mouse",
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([
'x' => 123,
'y' => 123,
'hold_keys' => [
'<string>'
],
'num_clicks' => 1
]),
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;
}HttpResponse<String> response = Unirest.post("https://api.onkernel.com/browsers/{id}/computer/click_mouse")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"x\": 123,\n \"y\": 123,\n \"hold_keys\": [\n \"<string>\"\n ],\n \"num_clicks\": 1\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.onkernel.com/browsers/{id}/computer/click_mouse")
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 \"x\": 123,\n \"y\": 123,\n \"hold_keys\": [\n \"<string>\"\n ],\n \"num_clicks\": 1\n}"
response = http.request(request)
puts response.read_body{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}{
"code": "bad_request",
"message": "Missing required field: app_name",
"details": [
{
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
],
"inner_error": {
"code": "invalid_input",
"message": "Provided version string is not semver compliant"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Browser session ID
Body
application/json
X coordinate of the click position
Y coordinate of the click position
Mouse button to interact with
Available options:
left, right, middle, back, forward Type of click action
Available options:
down, up, click Modifier keys to hold during the click
Number of times to repeat the click
Response
Mouse action performed
Stream telemetry events via SSE
Previous
Move the mouse cursor to the specified coordinates on the browser instance
Next
⌘I