interval) until the user approves, denies, or the code expires.123456curl -X POST https://api.v2.dealmachine.com/v1/auth/device/token \ -H "Content-Type: application/json" \ -d '{ "device_code": "a1b2c3d4e5f6...", "client_id": "dealmachine-next-cli" }'
123456789{ "api_key": "dm_sk_live_VMgXKyJQ7qTt9SHpoDYgHOXo...", "key_id": "key_abc123def456", "organization": { "id": 1, "name": "My Company", "slug": "my-company" } }
| Field | Type | Required | Description |
device_code | string | Yes | Device code from /auth/device/code response |
client_id | string | Yes | Must match the original request's client_id |
| Response Code | Meaning | Action |
authorization_pending | User hasn't acted yet | Wait interval seconds and retry |
slow_down | Polling too fast | Increase interval by 5 seconds |
access_denied | User denied | Stop polling, show error |
expired_token | Code expired | Stop polling, start new flow |
| Field | Type | Description |
api_key | string | The API key (dm_sk_live_xxx) |
key_id | string | Key identifier for management |
organization.id | number | Organization ID |
organization.name | string | Organization name |
organization.slug | string | Organization URL slug |