Enlaces de Acceso
Gestión de enlaces de acceso para que los clientes ingresen a videollamadas. Los enlaces son únicos y pueden ser de uso único o reutilizables. Requiere rol de supervisor o superior.
Endpoints
| Método | Endpoint | Descripción | Rol Mínimo |
|---|---|---|---|
GET | /api/v1/access-links | Listar enlaces | supervisor |
GET | /api/v1/access-links/:id | Buscar enlace | supervisor |
POST | /api/v1/access-links | Crear enlace | supervisor |
POST | /api/v1/access-links/batch | Crear múltiples enlaces | supervisor |
POST | /api/v1/access-links/:id/cancel | Cancelar enlace | supervisor |
Listar Enlaces
GET /api/v1/access-linksQuery Parameters
| Parámetro | Tipo | Predeterminado | Descripción |
|---|---|---|---|
page | integer | 1 | Número de página |
page_size | integer | 20 | Elementos por página |
sort_by | string | inserted_at | Campo para ordenamiento |
sort_order | string | desc | Dirección del ordenamiento |
status | string | - | Filtro: active, used, expired, cancelled |
department_id | uuid | - | Filtro por departamento |
Ejemplo 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"Respuesta Exitosa (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 Enlace
GET /api/v1/access-links/:idEjemplo 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"Crear Enlace
POST /api/v1/access-linksRequest Body
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
department_id | uuid | Sí | ID del departamento |
customer_name | string | No | Nombre del cliente |
customer_email | string | No | Email del cliente |
customer_phone | string | No | Teléfono del cliente |
expires_at | string | No | Fecha de expiración (ISO 8601, predeterminado: 7 días) |
Ejemplo 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"
}
}'Respuesta Exitosa (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"
}
}Crear Enlaces en Lote
Crea múltiples enlaces de acceso de una vez.
POST /api/v1/access-links/batchRequest Body
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
department_id | uuid | Sí | ID del departamento |
links | array | Sí | Lista de enlaces a crear |
links[].customer_name | string | No | Nombre del cliente |
links[].customer_email | string | No | Email del cliente |
links[].customer_phone | string | No | Teléfono del cliente |
expires_at | string | No | Fecha de expiración para todos los enlaces |
Ejemplo 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"}
]
}'Respuesta Exitosa (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 Enlace
Cancela un enlace de acceso activo.
POST /api/v1/access-links/:id/cancelEjemplo 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"Respuesta Exitosa (200)
json
{
"data": {
"id": "6e7f8a9b-0c1d-2345-fghi-678901234567",
"status": "cancelled"
}
}Estado del Enlace
| Estado | Descripción |
|---|---|
active | Enlace activo, disponible para uso |
used | Enlace ya utilizado |
expired | Enlace expirado |
cancelled | Enlace cancelado manualmente |
