Legacy Device API
Instances
Create, pair, reconnect, and monitor Device/QR instances.
GET
/instances
devices:read
https://staging-mobile.washeej.com/device-api/v1/instances
List the Device (QR) numbers of the account with their instance_id, name, phone_number and status.
cURL
curl -H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET" \
https://staging-mobile.washeej.com/device-api/v1/instances
POST
/instances
devices:manage
https://staging-mobile.washeej.com/device-api/v1/instances
Create a new Device (QR) number. The response returns its instance_id.
| Parameter | Type | Required | Description |
|---|---|---|---|
name
|
string | required | Display name for the instance (max 100). |
phone_number
|
string | optional | Phone number with country code (max 20). If this number already has a device instance → 409 duplicate_device (reconnect it instead). |
cURL
curl -X POST https://staging-mobile.washeej.com/device-api/v1/instances \
-H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET" \
-H "Content-Type: application/json" \
-d '{"name":"My WhatsApp"}'
GET
/instances/{instance_id}
devices:read
https://staging-mobile.washeej.com/device-api/v1/instances/{instance_id}
Get a single instance.
| Parameter | Type | Required | Description |
|---|---|---|---|
instance_id
path
|
string | required | Instance ID of a Device (QR) number: the Instance ID shown on the page of the number in the Washeej dashboard (Device status) and in Developer platform → Device (QR) numbers, also returned by GET /instances. Instance and message endpoints also accept the GOWA device id. It never changes, even when the WhatsApp service re-keys the device — see Authentication → instance_id. |
cURL
curl -H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET" \
https://staging-mobile.washeej.com/device-api/v1/instances/YOUR_INSTANCE_ID
API v1 equivalent
Prefer
GET /v1/devices + GET /v1/devices/{id}/status for new integrations.
Open API v1 docs →
GET
/instances/{instance_id}/qr
devices:manage or qr:generate
https://staging-mobile.washeej.com/device-api/v1/instances/{instance_id}/qr
Get QR code image for pairing.
| Parameter | Type | Required | Description |
|---|---|---|---|
instance_id
path
|
string | required | Instance ID of a Device (QR) number: the Instance ID shown on the page of the number in the Washeej dashboard (Device status) and in Developer platform → Device (QR) numbers, also returned by GET /instances. Instance and message endpoints also accept the GOWA device id. It never changes, even when the WhatsApp service re-keys the device — see Authentication → instance_id. |
cURL
curl -H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET" \
https://staging-mobile.washeej.com/device-api/v1/instances/YOUR_INSTANCE_ID/qr
GET
/instances/{instance_id}/status
devices:read
https://staging-mobile.washeej.com/device-api/v1/instances/{instance_id}/status
Connection status: pending, connected, disconnected.
| Parameter | Type | Required | Description |
|---|---|---|---|
instance_id
path
|
string | required | Instance ID of a Device (QR) number: the Instance ID shown on the page of the number in the Washeej dashboard (Device status) and in Developer platform → Device (QR) numbers, also returned by GET /instances. Instance and message endpoints also accept the GOWA device id. It never changes, even when the WhatsApp service re-keys the device — see Authentication → instance_id. |
cURL
curl -H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET" \
https://staging-mobile.washeej.com/device-api/v1/instances/YOUR_INSTANCE_ID/status
POST
/instances/{instance_id}/reconnect
devices:manage
https://staging-mobile.washeej.com/device-api/v1/instances/{instance_id}/reconnect
Request a fresh QR session when disconnected.
| Parameter | Type | Required | Description |
|---|---|---|---|
instance_id
path
|
string | required | Instance ID of a Device (QR) number: the Instance ID shown on the page of the number in the Washeej dashboard (Device status) and in Developer platform → Device (QR) numbers, also returned by GET /instances. Instance and message endpoints also accept the GOWA device id. It never changes, even when the WhatsApp service re-keys the device — see Authentication → instance_id. |
cURL
curl -X POST https://staging-mobile.washeej.com/device-api/v1/instances/YOUR_INSTANCE_ID/reconnect \
-H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET"
DELETE
/instances/{instance_id}
devices:manage
https://staging-mobile.washeej.com/device-api/v1/instances/{instance_id}
Delete an instance: the number is archived (conversations and history kept, plan slot returned) and its instance_id stops resolving.
| Parameter | Type | Required | Description |
|---|---|---|---|
instance_id
path
|
string | required | Instance ID of a Device (QR) number: the Instance ID shown on the page of the number in the Washeej dashboard (Device status) and in Developer platform → Device (QR) numbers, also returned by GET /instances. Instance and message endpoints also accept the GOWA device id. It never changes, even when the WhatsApp service re-keys the device — see Authentication → instance_id. |
cURL
curl -X DELETE https://staging-mobile.washeej.com/device-api/v1/instances/YOUR_INSTANCE_ID \
-H "X-Api-Key: YOUR_API_KEY" \
-H "X-Api-Secret: YOUR_API_SECRET"
Pairing flow
1
Create or list
POST /instances or GET /instances2
Get QR
GET /instances/{id}/qr3
ScanWhatsApp → Linked devices → scan
4
ConfirmPoll status until
connected