Autenticação da API
A API Zenovay autentica com credenciais de API. Todas as solicitações de API devem incluir uma credencial válida.
Tokens pessoais e chaves do workspace
O Zenovay tem dois tipos de credenciais de API. Ambos autenticam da mesma forma (veja abaixo); eles diferem em quem os possui e quanto tempo vivem.
Tokens API pessoais atuam em seu nome em todos os teams aos quais você pertence. Crie-os em Settings → Account → Security & access. Eles carregam seu próprio acesso, podem ter escopo definido (veja Escopos) e são revogados automaticamente quando você sai de um team. Use-os para seus próprios scripts, CLI ou desenvolvimento local.
Chaves API do workspace pertencem a um workspace, não a uma pessoa. Proprietários e administradores as criam e gerenciam em Settings → Security → API keys. Elas sobrevivem a mudanças de membros, portanto são a escolha certa para integrações compartilhadas e CI. Uma chave de workspace pode ter acesso total ou ser escopo a um único website.
Um proprietário ou administrador do workspace pode restringir quem pode criar tokens pessoais que alcançam seu workspace: todos os membros, apenas proprietários e administradores, ou ninguém. Isso é configurado em Settings → Security → API keys. As chaves do workspace em si são sempre apenas para proprietário e administrador.
Obtendo sua chave de API
- Faça login no seu dashboard Zenovay
- Navegue até Settings → Security → API keys
- Clique em Create New API Key
- Dê um nome descritivo à sua chave
- Copie a chave gerada (ela será mostrada apenas uma vez)
Armazene sua chave de API com segurança e nunca a exponha em código do lado do cliente. Use variáveis de ambiente em suas aplicações do lado do servidor.
Usando chaves de API
Inclua sua chave de API no header X-API-Key de cada solicitação:
curl -X GET "https://api.zenovay.com/api/external/v1/websites" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Autenticação por Bearer Token
Como alternativa ao header X-API-Key, você pode autenticar usando o header padrão Authorization: Bearer:
curl -X GET "https://api.zenovay.com/api/external/v1/websites" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Ambos os métodos usam a mesma chave de API. Escolha o que melhor se adequar à sua aplicação ou cliente HTTP.
Exemplo em JavaScript
const apiKey = process.env.ZENOVAY_API_KEY;
const response = await fetch('https://api.zenovay.com/api/external/v1/websites', {
headers: {
'X-API-Key': apiKey,
'Content-Type': 'application/json'
}
});
const data = await response.json();Escopos
Credenciais podem ter diferentes níveis de permissão:
full_access - O padrão. Tudo o que o proprietário da credencial pode fazer
read - Ver dados de análise e configuração do website
write - Modificar configurações e definições do website
admin - Acesso elevado incluindo ações de gerenciamento
Para tokens pessoais, o escopo admin é concedido apenas para teams onde você já é proprietário ou administrador. Um token que cobre um team onde você não é administrador não pode ser criado com o escopo admin.
Limitação de Taxa
Todas as chaves de API estão sujeitas a limitação de taxa. Consulte nossa documentação de Limites de Taxa para detalhes.
Melhores práticas de segurança
- Nunca faça commit de chaves de API no controle de versão
- Use variáveis de ambiente para armazenar chaves
- Rotacione chaves regularmente
- Crie chaves separadas para diferentes ambientes (dev, staging, prod)
- Exclua chaves não utilizadas imediatamente
Erros comuns
| Código de Status | Erro | Descrição |
|---|---|---|
401 | invalid_api_key | A chave de API está faltando ou é inválida |
403 | insufficient_permissions | A chave de API não tem as permissões necessárias |
429 | rate_limit_exceeded | Muitas solicitações em um curto período |