> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tapkit.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Phone Status

> Get real-time status for a phone

Get the real-time connection and control status for a specific phone. Unlike [Get Info](/api-reference/phones/get-info) which returns device metadata, this endpoint returns live operational state.

## Request

```bash theme={null}
curl https://api.tapkit.ai/v1/phones/{phone_id}/status \
  -H "X-API-Key: joot_your_api_key"
```

### Path Parameters

| Parameter  | Type     | Description          |
| ---------- | -------- | -------------------- |
| `phone_id` | `string` | The phone identifier |

## Response

**Status: 200 OK**

```json theme={null}
{
  "phone_id": "abc123-def456",
  "phone_name": "iPhone 15 Pro",
  "connection_status": "online",
  "switch_control_enabled": true,
  "screen_locked": false,
  "streaming": false,
  "width": 1179,
  "height": 2556
}
```

### Response Fields

| Field                    | Type              | Description                                         |
| ------------------------ | ----------------- | --------------------------------------------------- |
| `phone_id`               | `string`          | Phone identifier                                    |
| `phone_name`             | `string \| null`  | Phone display name                                  |
| `connection_status`      | `string`          | `online`, `available`, or `offline`                 |
| `switch_control_enabled` | `boolean`         | Whether Switch Control is active                    |
| `screen_locked`          | `boolean`         | Whether the screen is locked                        |
| `streaming`              | `boolean`         | Whether the phone is currently streaming its screen |
| `width`                  | `integer \| null` | Screen width in pixels                              |
| `height`                 | `integer \| null` | Screen height in pixels                             |

## Examples

### Python

```python theme={null}
import requests

response = requests.get(
    f"https://api.tapkit.ai/v1/phones/{phone_id}/status",
    headers={"X-API-Key": "joot_..."}
)

status = response.json()
print(f"Connection: {status['connection_status']}")
print(f"Switch Control: {status['switch_control_enabled']}")
print(f"Screen locked: {status['screen_locked']}")
```

### Check Before Running a Session

```python theme={null}
status = requests.get(
    f"https://api.tapkit.ai/v1/phones/{phone_id}/status",
    headers={"X-API-Key": "joot_..."}
).json()

if status["connection_status"] != "online":
    print("Phone is not online")
elif not status["switch_control_enabled"]:
    print("Switch Control is not enabled")
elif status["screen_locked"]:
    print("Screen is locked — unlock first")
else:
    print("Ready to go!")
```

## Related Endpoints

* [Get Info](/api-reference/phones/get-info) - Get device metadata and settings
* [List Phones](/api-reference/phones/list-phones) - List all phones
* [Select Phone](/api-reference/phones/select-phone) - Switch the active phone on the Mac
