Appearance
Quickstart
1. Enable API access
Create a Clutch account and email Brennan with the account email and your integration use case. Ask for a test camera ID before testing recording controls.
Keep account credentials and API tokens on your backend. Example IDs and credentials throughout these docs are placeholders.
2. Log in
sh
curl --request POST 'https://api.clutchapp.io/v1/auth/login' \
--header 'Content-Type: application/json' \
--data '{"email":"partner@example.com","password":"YOUR_PASSWORD"}'The response contains data.token. Reuse this token across backend workers for its 12-hour lifetime; allow only one login in flight per account.
json
{
"data": {
"id": "dd2dfc8c-4244-4a6e-b410-eec76f9254c0",
"token": "YOUR_TOKEN"
}
}Read authentication and bounded retry rules before implementing automatic token renewal.
3. Check a camera
sh
curl 'https://api.clutchapp.io/v1/clutchcam/device/YOUR_CAMERA_ID/status' \
--header 'Authorization: Bearer YOUR_TOKEN'The camera must be available before starting a recording. unavailable means offline. See all camera states.
4. Start and finish a test recording
Use the test camera supplied by Clutch. Starting a physical camera records real activity.
sh
curl --request POST 'https://api.clutchapp.io/v1/clutchcam/device/YOUR_CAMERA_ID/start' \
--header 'Authorization: Bearer YOUR_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"recording_type":"match","game_type":"doubles","max_recording_duration_min":10,"privacy":"private"}'Save data.video_id from the response. To finish early, call POST /clutchcam/device/{device_id}/stop. A camera normally enters stopping before becoming available again; an immediate new start may fail.
5. Follow processing and retrieve outputs
Use GET /video/{video_id}/status or webhooks, then retrieve GET /video/{video_id}/results.
HTTP 202 from /results means outputs are unavailable right now. Stop polling permanently failed starts and cancelled recordings. HTTP 200 during delayed processing can contain only raw video or an empty outputs list. Follow the recording lifecycle rules.