Referência de endpoints
Todos os endpoints REST da API v1
Referência completa de cada endpoint disponível na API v1. URL base: https://cbcthub.com/api/v1
GET
/api/v1/meRetorna info da sua conta (plano, storage, contagem de exames). Útil para verificar que a key funciona.
json
{
"user_id": "...",
"email": "soporte@miclinica.com",
"plan": "pro",
"scopes": ["exams:read", "exams:write"],
"storage": { "used_bytes": 41200000000, "limit_bytes": 375809638400, "used_percent": 11 },
"exams": { "count": 110, "limit": 999999 }
}POST
/api/v1/examsCria um exame e retorna URLs pré-assinadas para upload direto ao R2.
| Campo | Tipo | Obrigatório | Notas |
|---|---|---|---|
| name | string | ✓ | Nome interno do exame (máx 200 chars). |
| exam_type | string | — | cbct (padrão), radiografia, mesh, atm. Radiografia exige Pro. |
| patient_name | string | — | Nome do paciente. Mostrado no visualizador. |
| patient_id | string | — | CPF, RG ou número de prontuário. |
| birth_date | string ISO | — | YYYY-MM-DD. |
| reason | string | — | Motivo / achados solicitados. |
| expiration_days | number | — | Dias até expirar. null = nunca. |
| files | array | ✓ | [{ name, size }]. Mín 1, máx 5000. |
GET
/api/v1/exams?limit=20&offset=0Lista os exames da sua conta, paginado. Default limit=20, máx 100.
GET
/api/v1/exams/{id}Detalhes de um exame. Inclui share_url, viewer_url, share_password e public_page_pin.
POST
/api/v1/exams/{id}/confirmMarca o exame como ready após enviar os arquivos. Idempotente.
DELETE
/api/v1/exams/{id}Exclui o exame. Os arquivos no R2 são removidos em background. Não reversível.