import GboxSDK from "gbox-sdk";
const gboxSDK = new GboxSDK({
apiKey: process.env["GBOX_API_KEY"] // This is the default and can be omitted
});
async function main() {
const box = await gboxSDK.create({ type: "android" });
await box.action.drag({
start: { x: 100, y: 150 },
end: { x: 200, y: 200 },
duration: "50ms"
});
// Natural language start/end
await box.action.drag({
start: "Chrome App",
end: "Trash",
duration: "800ms"
});
await box.action.drag({
path: [
{ x: 100, y: 150 },
{ x: 200, y: 200 },
{ x: 300, y: 250 }
],
duration: "50ms"
});
}
main();
{
"message": "Action executed successfully",
"screenshot": {
"trace": {
"uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..."
},
"before": {
"uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..."
},
"after": {
"uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..."
}
}
}
import GboxSDK from "gbox-sdk";
const gboxSDK = new GboxSDK({
apiKey: process.env["GBOX_API_KEY"] // This is the default and can be omitted
});
async function main() {
const box = await gboxSDK.create({ type: "android" });
await box.action.drag({
start: { x: 100, y: 150 },
end: { x: 200, y: 200 },
duration: "50ms"
});
// Natural language start/end
await box.action.drag({
start: "Chrome App",
end: "Trash",
duration: "800ms"
});
await box.action.drag({
path: [
{ x: 100, y: 150 },
{ x: 200, y: 200 },
{ x: 300, y: 250 }
],
duration: "50ms"
});
}
main();
{
"message": "Action executed successfully",
"screenshot": {
"trace": {
"uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..."
},
"before": {
"uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..."
},
"after": {
"uri": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA..."
}
}
}
Enter your API Key in the format: Bearer <token>. Get it from https://gbox.ai
Box ID
"c9bdc193-b54b-4ddb-a035-5ac0c598d32d"
Drag action configuration with start and end points.
Operation flow:
Result of an UI action execution with optional screenshots