API interna para sincronização e análise do Instagram profissional da Rayra.
Os endpoints /v1/* exigem o token de sessão da pessoa autenticada, no header:
Authorization: Bearer <token>
O token é o mesmo emitido no login do produto. Nunca coloque o token na URL ou compartilhe seu valor.
cd /Users/roberto/Projects/rayrovisk-agency # Verificar o servidor curl https://api-staging.rayrovisk.com/health # As chamadas abaixo exigem o token de sessão da pessoa autenticada. # Verificar a conexão com o Instagram curl https://api-staging.rayrovisk.com/v1/connections/instagram \ -H "Authorization: Bearer $ACCESS_TOKEN" # Sincronizar perfil, publicações e engajamento curl -X POST https://api-staging.rayrovisk.com/v1/sync \ -H "Authorization: Bearer $ACCESS_TOKEN" # Consultar o perfil curl https://api-staging.rayrovisk.com/v1/profile \ -H "Authorization: Bearer $ACCESS_TOKEN" # Consultar as 25 publicações mais recentes curl "https://api-staging.rayrovisk.com/v1/media?limit=25&offset=0" \ -H "Authorization: Bearer $ACCESS_TOKEN" # Consultar o resumo analítico curl "https://api-staging.rayrovisk.com/v1/analytics/summary" \ -H "Authorization: Bearer $ACCESS_TOKEN"
| Método | Rota | Acesso | Descrição |
|---|---|---|---|
| GET | /health | Público | Confirma que o servidor está ativo. |
| GET | /v1/connections/instagram | Bearer | Mostra conta conectada, permissões e expiração. |
| POST | /v1/connections/instagram/authorize | Bearer + assinatura | Inicia a autorização OAuth do Instagram para a pessoa autenticada. |
| POST | /v1/connections/instagram/refresh | Bearer | Renova o token de longa duração. |
| POST | /v1/sync | Bearer | Busca todas as páginas de mídia e atualiza o engajamento. |
| GET | /v1/profile | Bearer | Retorna o último snapshot do perfil. |
| GET | /v1/media?limit=25&offset=0 | Bearer | Retorna mídias com curtidas, comentários, views, alcance, salvos e compartilhamentos. Aceita de 1 a 500 itens; use offset para percorrer o total em páginas. |
| GET | /v1/analytics/summary | Bearer | Calcula totais, médias, taxas, cobertura, desempenho por formato e rankings de publicações. |
| GET | /v1/public-profile?handle=usuario | Bearer | Busca pública limitada de um perfil do Instagram (ADR-0020), sem exigir assinatura. Sujeita a limite por pessoa e a uma chave de desativação. |
| GET/POST | /webhooks/meta | Meta | Verificação e recebimento de webhooks assinados. |
{
"profileMediaCount": 260,
"mediaCount": 260,
"mediaInsightsRequested": 260,
"mediaInsightsCount": 260,
"mediaInsightsErrors": 0,
"mediaInsightsSkipped": 0,
"storedMediaCount": 260,
"storedMediaWithInsightsCount": 260
}
Na primeira carga, o sistema busca o histórico disponível. Nas próximas sincronizações, atualiza os 50 posts mais recentes e preserva os snapshots históricos já coletados.