Projeto, ambiente e espaço
Um projeto é a memória de uma empresa, ou de uma linha de negócio que precisa ficar separada. Cada projeto tem dois ambientes:sandbox, para desenvolver e testar, e production, para o tráfego real.
O espaço é o par projeto e ambiente. É a unidade de isolamento da Niadra: o espaço é a primeira coluna de toda chave de banco, de cache e de cifra, então um evento de sandbox nunca aparece numa leitura de produção, e o dado de uma empresa nunca decifra com a chave de outra.
Cada espaço vive numa região, a do projeto, e tem um endereço estável:
Fontes
Uma fonte é cada coisa que fala com a memória: o agente de voz de um fornecedor, o agente de WhatsApp de outro, o agente interno de cobrança, o CRM que manda eventos por webhook, o atendente humano que recebe o contexto na ferramenta que a empresa já usa. Toda fonte tem:
A fonte é criada e configurada no Console ou pela API de controle. Acesso à memória é negado por padrão e liberado por finalidade: dar acesso amplo ao ERP para um agente interno não dá acesso amplo à memória. Antes de liberar,
POST /v1/policy/simulate mostra o que uma fonte, audiência ou finalidade veria de um perfil, item a item, com o que ficaria retido e por quê.
Chaves
Cada fonte tem uma ou mais chaves. O formato carrega tudo o que o SDK precisa para achar o endereço:livechega aos espaços de produção;test, aos de sandbox.regiãoeespaçoviram o endereçohttps://<espaço>.<região>.api.niadra.com.key_idé público e aparece nos registros; sozinho, nunca autentica.- O segredo aparece uma vez só, quando a chave é criada. Guarde no seu cofre de segredos.
Authorization: Bearer. Os SDKs leem a variável NIADRA_API_KEY quando você não passa a chave no construtor.
Escopos
Cada chave tem escopos. A rota confere o escopo antes de qualquer outra coisa, e a falta dele volta como 403 com o códigoscope_missing.
O escopo
act merece atenção. track sozinho não registra ação: uma ação pode fechar uma promessa feita ao cliente, então só a fonte com act consegue registrá-la, e a fonte que declara trusted_action_ops (por exemplo, só credit) não registra mais nada. É a primeira barreira contra uma ação forjada por injeção de prompt. Uma operação fora da lista volta como erro do item, com o código operation_not_allowed.
Uma chave criada sem escopos recebe os padrões da audiência da fonte: customer_agent recebe track, context, search e identify; internal_agent recebe também act; human recebe context e search; analyst recebe só analytics.
Uma divisão comum:
As pessoas do seu time usam o Console com o próprio token e os próprios papéis (
admin, security, integration, review, analysis, vendor), nunca uma chave de fonte. Veja Limites e convenções.
Girar e revogar
Gire uma chave para ganhar uma nova com os mesmos escopos;grace_seconds (até 7 dias) mantém a antiga válida enquanto você publica a nova no seu cofre. Para cortar o acesso, revogue a chave ou a fonte inteira, com um motivo, no Console ou pela API de controle. A revogação chega a todas as instâncias da célula em segundos. A célula também aceita um corte direto, POST /v1/sources/{source_id}/revoke, para o papel security: todas as chaves da fonte param de autenticar ali na hora.
Quando uma chave recebe 401 ou 403, o SDK descarta o contexto que tinha guardado para ela e devolve contexto vazio. Assim o corte de acesso de um fornecedor vale também para o que já estava no cache dele.
Próximos passos
Eventos e o lote
o que cada fonte envia e como o lote responde.
Identidade e verificação
handles, perfis e os níveis V0 a V4.
Limites e convenções
versão, idempotência, limites de taxa e ETag.
Erros
o catálogo de códigos, incluindo
scope_missing.
