Dispozitive
Dispozitivele legate de contul tău, tokenurile lor de push și inbox-ul de dispatch agregat.
Nu există un apel explicit de înregistrare: un dispozitiv e creat prima dată când UUID-ul său x-codai-device apare pe o cerere de sesiuni. Aceste endpoint-uri administrează ce există și lasă un dispozitiv să tragă tot ce e pus în coadă pentru el într-un singur apel.
Agenții îți listează dispozitivele prin unealta devices_list a serverului MCP (doar citire; doar has_push_token, niciodată tokenul de push brut).
bearerAuthAutorizareBearer <codai_…>O cheie API codai (prefix codai_). Tokenurile efemere de la POST /v1/tokens sunt acceptate doar de suprafețele media potrivite scope-ului lor (/v1/realtime, /v1/audio/*, /v1/embeddings).
x-request-id?stringId de corelare ales de client; e returnat ca x-codai-trace-id și persistat pe rândul de usage.
length <= 128Dispozitivele apelantului, ordonate descrescător după lastSeenAt.
application/json- response
devices*array<>curl -X GET 'https://ai.codai.ro/v1/devices'{ "devices": [ { "id": "2b6d8c1e-4f3a-4e9b-9c0d-7a1e5f6b8c2d", "name": "Pixel 9 Pro", "platform": "android", "capabilities": [ "terminal", "fs", "voice" ], "has_push_token": true, "app_version": "desktop/0.7.0", "lastSeenAt": "2026-09-23T08:41:12.000Z", "createdAt": "2026-09-01T10:00:00.000Z", "online": true } ]}bearerAuthAutorizareBearer <codai_…>O cheie API codai (prefix codai_). Tokenurile efemere de la POST /v1/tokens sunt acceptate doar de suprafețele media potrivite scope-ului lor (/v1/realtime, /v1/audio/*, /v1/embeddings).
id*stringUUID-ul dispozitivului (valoarea pe care o trimiți ca x-codai-device).
uuidx-request-id?stringId de corelare ales de client; e returnat ca x-codai-trace-id și persistat pe rândul de usage.
length <= 128application/json- body
Cel puțin unul dintre cele două câmpuri este obligatoriu.
push_token?|Token de înregistrare FCM (ASCII opac, fără spații la capete). null îl șterge.
8 <= length <= 4096capabilities?array<>Înlocuiește întreaga listă de capabilități.
items <= 64Dispozitivul actualizat.
application/json- response
id*stringuuidname*stringplatform*DevicePlatformPlatforma clientului; orice altceva trimis în x-codai-device-platform este stocat ca agent.
"android""ios""web""desktop""cli""agent"capabilities*array<string>has_push_token*booleanlastSeenAt*stringdate-timecurl -X PATCH 'https://ai.codai.ro/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08' \ -H 'Content-Type: application/json' \ -d '{}'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "name": "string", "platform": "android", "capabilities": [ "string" ], "has_push_token": true, "lastSeenAt": "2019-08-24T14:15:22Z"}bearerAuthAutorizareBearer <codai_…>O cheie API codai (prefix codai_). Tokenurile efemere de la POST /v1/tokens sunt acceptate doar de suprafețele media potrivite scope-ului lor (/v1/realtime, /v1/audio/*, /v1/embeddings).
id*stringUUID-ul dispozitivului.
uuidx-request-id?stringId de corelare ales de client; e returnat ca x-codai-trace-id și persistat pe rândul de usage.
length <= 128Șters.
application/json- response
deleted*truetrueid*stringuuidcurl -X DELETE 'https://ai.codai.ro/v1/devices/497f6eca-6276-4993-bfeb-53cbbbba6f08'{ "deleted": true, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"}bearerAuthAutorizareBearer <codai_…>O cheie API codai (prefix codai_). Tokenurile efemere de la POST /v1/tokens sunt acceptate doar de suprafețele media potrivite scope-ului lor (/v1/realtime, /v1/audio/*, /v1/embeddings).
limit?integerNumăr maxim total de controale întoarse. Implicit 200, maxim 500.
0 <= value <= 500200x-codai-device*stringUUID stabil al dispozitivului. Înregistrează dispozitivul la prima folosire (nume/platformă din x-codai-device-name / x-codai-device-platform) și selectează protocolul de sesiuni partajate.
uuidx-codai-device-name?stringNume lizibil al dispozitivului, folosit la prima înregistrare (trunchiat la 120 de caractere).
length <= 120x-codai-device-platform?stringPlatforma înregistrată la prima folosire; valorile necunoscute devin agent.
"android""ios""web""desktop""cli""agent"x-request-id?stringId de corelare ales de client; e returnat ca x-codai-trace-id și persistat pe rândul de usage.
length <= 128Controale în așteptare grupate pe sesiune (sessions gol când nu există).
application/json- response
device_id*stringDispozitivul apelant.
uuidsessions*array<>curl -X GET 'https://ai.codai.ro/v1/devices/me/dispatch' \ -H 'x-codai-device: 497f6eca-6276-4993-bfeb-53cbbbba6f08'{ "device_id": "3bafab7b-4400-4bcf-8e6e-09f954699940", "sessions": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "session_key": "string", "title": "string", "controls": [ { "id": "string", "kind": "send", "text": "string", "turn_id": "string", "ask_id": "string", "from_device_id": "10624cda-85b4-412c-80da-8ce165bfd5b0", "target_device_id": "12785743-1d27-41cd-88a7-0ac66360e3d6", "mode": "open", "seq": 0, "applied": true, "created_at": "2019-08-24T14:15:22Z" } ] } ]}Ultima actualizare: