REST API
Device extras
Clipboard, location, notifications and test pushes.
getClipboard
Section titled “getClipboard”GET /v1/devices/{deviceId}/clipboard
Read the device clipboard (text only)
| Parameter | In | Required | Type | What it is |
|---|---|---|---|---|
deviceId |
path | yes | string | Stable device id such as ios:00008120-001A2B3C4D5E6F70 or android:R58M123ABC. |
Silan-Lease |
header | no | string | Lease token when the device is claimed. |
| Response | Means |
|---|---|
| 200 | Clipboard. |
| 4XX | Error (RFC 9457). |
| 5XX | Error (RFC 9457). |
MCP tools on this operation: get_clipboard.
setClipboard
Section titled “setClipboard”PUT /v1/devices/{deviceId}/clipboard
Put text on the device clipboard
| Parameter | In | Required | Type | What it is |
|---|---|---|---|---|
deviceId |
path | yes | string | Stable device id such as ios:00008120-001A2B3C4D5E6F70 or android:R58M123ABC. |
Silan-Lease |
header | no | string | Lease token when the device is claimed. |
Request body: application/json.
| Field | Type | What it is |
|---|---|---|
text |
string |
| Response | Means |
|---|---|
| 204 | Set. |
| 4XX | Error (RFC 9457). |
| 5XX | Error (RFC 9457). |
MCP tools on this operation: set_clipboard.
setLocation
Section titled “setLocation”PUT /v1/devices/{deviceId}/location
Simulate a location (simulators, emulators, developer-mode devices)
| Parameter | In | Required | Type | What it is |
|---|---|---|---|---|
deviceId |
path | yes | string | Stable device id such as ios:00008120-001A2B3C4D5E6F70 or android:R58M123ABC. |
Silan-Lease |
header | no | string | Lease token when the device is claimed. |
Request body: application/json (GeoLocation).
| Field | Type | What it is |
|---|---|---|
latitude |
number | |
longitude |
number | |
altitude |
number |
| Response | Means |
|---|---|
| 204 | Set. |
| 4XX | Error (RFC 9457). |
| 5XX | Error (RFC 9457). |
MCP tools on this operation: set_location.
clearLocation
Section titled “clearLocation”DELETE /v1/devices/{deviceId}/location
Stop simulating a location
| Parameter | In | Required | Type | What it is |
|---|---|---|---|---|
deviceId |
path | yes | string | Stable device id such as ios:00008120-001A2B3C4D5E6F70 or android:R58M123ABC. |
Silan-Lease |
header | no | string | Lease token when the device is claimed. |
| Response | Means |
|---|---|
| 204 | Cleared. |
| 4XX | Error (RFC 9457). |
| 5XX | Error (RFC 9457). |
listNotifications
Section titled “listNotifications”GET /v1/devices/{deviceId}/notifications
Notifications the engine has observed on this device
| Parameter | In | Required | Type | What it is |
|---|---|---|---|---|
deviceId |
path | yes | string | Stable device id such as ios:00008120-001A2B3C4D5E6F70 or android:R58M123ABC. |
Silan-Lease |
header | no | string | Lease token when the device is claimed. |
since |
query | no | string | Engine clock nanoseconds, or an ISO 8601 time. |
appId |
query | no | string |
| Response | Means |
|---|---|
| 200 | Observed notifications, newest first. |
| 4XX | Error (RFC 9457). |
| 5XX | Error (RFC 9457). |
MCP tools on this operation: get_notifications.
sendTestPush
Section titled “sendTestPush”POST /v1/devices/{deviceId}/push
Send a test push to an app build you own
Simulators and emulators use local injection. Real devices use the push credentials the person stored in Silan for that app (APNs key or FCM service account), which never leave the Mac except to Apple or Google.
| Parameter | In | Required | Type | What it is |
|---|---|---|---|---|
deviceId |
path | yes | string | Stable device id such as ios:00008120-001A2B3C4D5E6F70 or android:R58M123ABC. |
Silan-Lease |
header | no | string | Lease token when the device is claimed. |
Request body: application/json (PushRequest).
| Field | Type | What it is |
|---|---|---|
appId |
string | |
title |
string | |
body |
string | |
payload |
object | Raw APNs or FCM payload; overrides title and body. |
| Response | Means |
|---|---|
| 202 | Sent to the push service or injected. |
| 4XX | Error (RFC 9457). |
| 5XX | Error (RFC 9457). |
MCP tools on this operation: send_test_push.