Links de Acesso
Gerenciamento de links de acesso para clientes entrarem em chamadas de vídeo. Links são únicos e podem ser de uso único ou reutilizáveis. Requer papel de supervisor ou superior.
Endpoints
| Método | Endpoint | Descrição | Role Mínimo |
|---|---|---|---|
GET | /api/v1/access-links | Listar links | supervisor |
GET | /api/v1/access-links/:id | Buscar link | supervisor |
POST | /api/v1/access-links | Criar link | supervisor |
POST | /api/v1/access-links/batch | Criar múltiplos links | supervisor |
POST | /api/v1/access-links/:id/cancel | Cancelar link | supervisor |
Listar Links
GET /api/v1/access-linksQuery Parameters
| Parâmetro | Tipo | Padrão | Descrição |
|---|---|---|---|
page | integer | 1 | Número da página |
page_size | integer | 20 | Itens por página |
sort_by | string | inserted_at | Campo para ordenação |
sort_order | string | desc | Direção da ordenação |
status | string | - | Filtro: active, used, expired, cancelled |
department_id | uuid | - | Filtro por departamento |
Exemplo de Request
bash
curl -X GET "https://voki.avanter.com.br/api/v1/access-links?status=active" \
-H "Authorization: Bearer eyJhbGci..." \
-H "X-Tenant: avanter"Resposta de Sucesso (200)
json
{
"data": [
{
"id": "6e7f8a9b-0c1d-2345-fghi-678901234567",
"token": "abc123def456",
"url": "https://voki.avanter.com.br/call/abc123def456",
"status": "active",
"department_id": "e5f6a7b8-c9d0-1234-efgh-567890123456",
"department_name": "Suporte Técnico",
"customer_name": "Carlos Ferreira",
"customer_email": "carlos@email.com",
"customer_phone": "+5511999998888",
"expires_at": "2026-02-25T23:59:59Z",
"used_at": null,
"inserted_at": "2026-02-18T10:00:00Z"
}
],
"meta": {
"current_page": 1,
"page_size": 20,
"total_pages": 1,
"total_count": 5
}
}Buscar Link
GET /api/v1/access-links/:idExemplo de Request
bash
curl -X GET https://voki.avanter.com.br/api/v1/access-links/6e7f8a9b-0c1d-2345-fghi-678901234567 \
-H "Authorization: Bearer eyJhbGci..." \
-H "X-Tenant: avanter"Criar Link
POST /api/v1/access-linksRequest Body
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
department_id | uuid | Sim | ID do departamento |
customer_name | string | Não | Nome do cliente |
customer_email | string | Não | Email do cliente |
customer_phone | string | Não | Telefone do cliente |
expires_at | string | Não | Data de expiração (ISO 8601, padrão: 7 dias) |
Exemplo de Request
bash
curl -X POST https://voki.avanter.com.br/api/v1/access-links \
-H "Authorization: Bearer eyJhbGci..." \
-H "X-Tenant: avanter" \
-H "Content-Type: application/json" \
-d '{
"link": {
"department_id": "e5f6a7b8-c9d0-1234-efgh-567890123456",
"customer_name": "Ana Costa",
"customer_email": "ana@email.com",
"expires_at": "2026-02-28T23:59:59Z"
}
}'Resposta de Sucesso (201)
json
{
"data": {
"id": "7f8a9b0c-1d2e-3456-ghij-789012345678",
"token": "xyz789ghi012",
"url": "https://voki.avanter.com.br/call/xyz789ghi012",
"status": "active",
"department_id": "e5f6a7b8-c9d0-1234-efgh-567890123456",
"department_name": "Suporte Técnico",
"customer_name": "Ana Costa",
"customer_email": "ana@email.com",
"customer_phone": null,
"expires_at": "2026-02-28T23:59:59Z",
"used_at": null,
"inserted_at": "2026-02-18T16:00:00Z"
}
}Criar Links em Lote
Cria múltiplos links de acesso de uma vez.
POST /api/v1/access-links/batchRequest Body
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
department_id | uuid | Sim | ID do departamento |
links | array | Sim | Lista de links a criar |
links[].customer_name | string | Não | Nome do cliente |
links[].customer_email | string | Não | Email do cliente |
links[].customer_phone | string | Não | Telefone do cliente |
expires_at | string | Não | Data de expiração para todos os links |
Exemplo de Request
bash
curl -X POST https://voki.avanter.com.br/api/v1/access-links/batch \
-H "Authorization: Bearer eyJhbGci..." \
-H "X-Tenant: avanter" \
-H "Content-Type: application/json" \
-d '{
"department_id": "e5f6a7b8-c9d0-1234-efgh-567890123456",
"expires_at": "2026-03-01T23:59:59Z",
"links": [
{"customer_name": "Ana Costa", "customer_email": "ana@email.com"},
{"customer_name": "Roberto Lima", "customer_email": "roberto@email.com"},
{"customer_name": "Patrícia Souza", "customer_email": "patricia@email.com"}
]
}'Resposta de Sucesso (201)
json
{
"data": [
{
"id": "8a9b0c1d-2e3f-4567-hijk-890123456789",
"token": "link1abc123",
"url": "https://voki.avanter.com.br/call/link1abc123",
"customer_name": "Ana Costa",
"customer_email": "ana@email.com",
"status": "active"
},
{
"id": "9b0c1d2e-3f4a-5678-ijkl-901234567890",
"token": "link2def456",
"url": "https://voki.avanter.com.br/call/link2def456",
"customer_name": "Roberto Lima",
"customer_email": "roberto@email.com",
"status": "active"
},
{
"id": "0c1d2e3f-4a5b-6789-jklm-012345678901",
"token": "link3ghi789",
"url": "https://voki.avanter.com.br/call/link3ghi789",
"customer_name": "Patrícia Souza",
"customer_email": "patricia@email.com",
"status": "active"
}
]
}Cancelar Link
Cancela um link de acesso ativo.
POST /api/v1/access-links/:id/cancelExemplo de Request
bash
curl -X POST https://voki.avanter.com.br/api/v1/access-links/6e7f8a9b-0c1d-2345-fghi-678901234567/cancel \
-H "Authorization: Bearer eyJhbGci..." \
-H "X-Tenant: avanter"Resposta de Sucesso (200)
json
{
"data": {
"id": "6e7f8a9b-0c1d-2345-fghi-678901234567",
"status": "cancelled"
}
}Status do Link
| Status | Descrição |
|---|---|
active | Link ativo, disponível para uso |
used | Link já utilizado |
expired | Link expirado |
cancelled | Link cancelado manualmente |
