Skip to main content
GET
/
analytics
/
instances
/
{instanceId}
/
stats
Estatísticas da Instância
curl --request GET \
  --url https://apis.vectalk.com.br/api/analytics/instances/{instanceId}/stats \
  --header 'Authorization: Bearer <token>'

Documentation Index

Fetch the complete documentation index at: https://docs.vectalk.com.br/llms.txt

Use this file to discover all available pages before exploring further.

Parâmetros

instanceId
string
required
ID da instância.
from
string
Data de início (ISO 8601 ou YYYY-MM-DD). Padrão: 30 dias atrás.
to
string
Data de fim (ISO 8601 ou YYYY-MM-DD). Padrão: hoje.
groupBy
string
default:"day"
Agrupamento das séries temporais: day, week ou month.

Exemplo de Requisição

curl --request GET \
  --url 'https://apis.vectalk.com.br/api/analytics/instances/{instanceId}/stats?from=2026-01-01&to=2026-01-31&groupBy=day' \
  --header 'Authorization: Bearer {seu_token}'

Resposta

{
  "summary": {
    "totalSent": 1250,
    "totalReceived": 340,
    "totalDelivered": 1180,
    "totalRead": 950,
    "totalFailed": 15,
    "deliveryRate": 94,
    "readRate": 76,
    "failureRate": 1,
    "source": "meta"
  },
  "byStatus": [
    { "status": "SENT", "count": 1250 },
    { "status": "DELIVERED", "count": 230 },
    { "status": "READ", "count": 950 },
    { "status": "FAILED", "count": 15 }
  ],
  "timeSeries": [
    {
      "period": "2026-01-01",
      "sent": 42,
      "delivered": 40,
      "read": 35
    }
  ],
  "conversations": {
    "total": 200,
    "totalCost": 50.5,
    "byCategory": [
      { "label": "MARKETING", "conversation": 80, "cost": 20.0 },
      { "label": "UTILITY", "conversation": 120, "cost": 30.5 }
    ],
    "byType": [
      { "label": "REGULAR", "conversation": 200, "cost": 50.5 }
    ]
  },
  "channel": {
    "qualityRating": "GREEN",
    "verifiedName": "Minha Empresa",
    "displayPhoneNumber": "+55 11 99999-9999",
    "status": "ACTIVE"
  }
}

Campos da Resposta

CampoDescrição
summary.sourcemeta se dados vêm da Meta, local se vêm do banco local (fallback)
summary.deliveryRatePorcentagem de entrega (delivered + read / sent)
summary.readRatePorcentagem de leitura (read / sent)
timeSeriesSérie temporal agrupada por groupBy
conversationsDados de conversas sincronizados da Meta (últimos 90 dias)
channelMetadados do número (quality rating, nome verificado)
Os dados são sincronizados da Meta diariamente. Use POST /analytics/instances/{instanceId}/sync para forçar sincronização.