Skip to main content
GET
/
status
Get Status
curl --request GET \
  --url https://api.example.com/status
Get the overall status of the TapKit system for your organization.

Request

curl https://api.tapkit.ai/status \
  -H "X-API-Key: TK_your_api_key"

Response

{
  "mac_app_running": true,
  "phone_connected": true,
  "phone_name": "iPhone 15 Pro",
  "switch_control_enabled": true,
  "screen_locked": false,
  "streaming": false
}

Response Fields

FieldTypeDescription
mac_app_runningbooleanWhether the Mac companion app is running and connected
phone_connectedbooleanWhether a phone is connected to the Mac app
phone_namestring | nullName of the connected phone, or null if none
switch_control_enabledbooleanWhether Switch Control is enabled on the device
screen_lockedbooleanWhether the device screen is locked
streamingbooleanWhether screen streaming is active

Use Cases

Check System Health

import requests

response = requests.get(
    "https://api.tapkit.ai/status",
    headers={"X-API-Key": "TK_..."}
)
status = response.json()

if not status["mac_app_running"]:
    print("Mac app is not running")
elif not status["phone_connected"]:
    print("No phone connected")
else:
    print(f"Ready: {status['phone_name']}")

Wait for Phone Connection

import time

while True:
    response = requests.get(
        "https://api.tapkit.ai/status",
        headers={"X-API-Key": "TK_..."}
    )
    status = response.json()

    if status["phone_connected"]:
        print("Phone connected!")
        break

    print("Waiting for phone...")
    time.sleep(5)

Check Before Actions

# Verify system is ready before automation
status = client.status()

if status["screen_locked"]:
    # Need to unlock first
    client.unlock(phone_id, passcode="...")

Error Responses

Mac App Not Running

If no Mac app is connected for your organization:
{
  "mac_app_running": false,
  "phone_connected": false,
  "phone_name": null,
  "switch_control_enabled": false,
  "screen_locked": false,
  "streaming": false
}
The endpoint still returns 200 OK with the status reflecting the disconnected state.