Pular para o conteúdo principal

Autenticação e escopos

Toda chamada à API da plataforma Kaleidr inclui uma credencial. Existem três tipos, tratados de formas diferentes pela API:

  • Uma chave publicável identifica sua organização no navegador. Ela não pode chamar a API diretamente; é trocada por uma sessão.
  • Um token de sessão é a credencial usada de fato pelo navegador nas chamadas à API. Ele tem duração curta e está vinculado à origem de um site e a um produto.
  • Uma chave de servidor é um segredo enviado diretamente pelo seu backend em cada requisição.

Esta página explica como cada credencial é enviada, como funciona a troca por sessão, o que cada escopo permite, como o escopo vendor é concedido e todos os erros de autenticação, com suas causas e soluções. Para entender o que cada credencial permite caso seja exposta, consulte o modelo de segurança.

Tipos de credenciais​

CredencialPrefixoOnde ficaComo é usadaPlano
Chave publicávelkld_pk_live_…Código-fonte da páginaEnviada uma vez na troca por sessão; rejeitada em todos os outros endpointsFree, Pro, Enterprise
Token de sessãokld_sess_live_…Memória do navegadorEnviado em cada chamada de execução feita pela página para a qual foi emitidoEmitido a partir de uma chave publicável ou de um mapa publicado
Chave de servidorkld_sk_live_…Somente no seu backendEnviada em cada chamada de execução; rejeitada quando a requisição inclui o cabeçalho OriginPro, Enterprise
Chave legadakld_live_…Seu backendFunciona como credencial direta, como uma chave de servidor. Sua rotação gera uma chave de servidorSomente chaves existentes

Chaves criadas pela API de gerenciamento de chaves com environment: "test" usam test em vez de live (kld_pk_test_…, kld_sk_test_…). Uma chave de teste não pode carregar tiles do mapa-base.

Uma chave é exibida integralmente apenas uma vez, quando é criada ou rotacionada. A Kaleidr armazena somente um hash; portanto, uma chave perdida não pode ser recuperada: faça sua rotação.

Envio de uma credencial​

Envie a credencial em qualquer um dos dois cabeçalhos. Ambos são aceitos em todos os endpoints.

Authorization: Bearer kld_sk_live_…
X-Api-Key: kld_sk_live_…

Se a requisição incluir ambos, Authorization será usado quando seu valor começar com um prefixo da Kaleidr; caso contrário, X-Api-Key será lido. Nunca coloque uma chave de servidor em uma URL.

O que cada credencial pode fazer em um endpoint de execução (todos, exceto a troca por sessão):

CredencialResultado em um endpoint de execução
Chave publicável401 publishable_requires_session. Primeiro, troque-a por uma sessão.
Chave de servidor, sem cabeçalho OriginAceita; em seguida, são verificados a lista de IPs permitidos, o escopo, os produtos permitidos, a cota e o limite de requisições.
Chave de servidor com cabeçalho Origin403 server_key_in_browser. Navegadores adicionam Origin a requisições entre origens, permitindo que a API identifique uma chave de servidor em uma página web.
Token de sessão da origem para a qual foi emitidoAceito.
Token de sessão com outro Origin403 session_origin_mismatch.
Token de sessão de um mapa publicado sem Origin403 session_origin_mismatch.

O SDK JavaScript aplica essa mesma regra antes: Kaleidr.mount rejeita uma chave kld_sk_… no navegador sem fazer nenhuma requisição.

Troca por sessão​

Uma chave publicável é trocada por um token de sessão em um endpoint. O SDK faz isso em cada montagem com chave e mantém o token atualizado; você só precisa chamar o endpoint diretamente ao criar seu próprio cliente de navegador.

POST https://api.kaleidr.com/inference-api/b2b/v1/sdk/sessions
X-Api-Key: kld_pk_live_…
Content-Type: application/json

{ "product": "chat" }

product é obrigatório e deve ser chat, editor, viewer ou tile. A requisição deve incluir o cabeçalho Origin. O navegador o adiciona automaticamente.

{
"session_token": "kld_sess_live_eyJhbGciOi…",
"expires_in": 900,
"product": "chat",
"basemap_style_id": null
}
CampoSignificado
session_tokenCredencial usada nas chamadas de execução. Formato: kld_sess_{env}_{token}.
expires_inValidade em segundos. Uma sessão com chave dura 900 segundos. Leia esse campo; não fixe o número no código.
productProduto ao qual a sessão está vinculada.
basemap_style_idMapa-base padrão da sua organização, ou null quando nenhum estiver configurado.

A que uma sessão está vinculada​

  • Uma origem. O Origin da requisição de troca. Chamadas feitas de outra origem são rejeitadas.
  • Um produto. Uma sessão tile não pode chamar endpoints de chat.
  • Um conjunto restrito de escopos. A sessão inclui somente o escopo necessário ao produto: ai para chat, design para editor, maps para tile e nenhum para viewer. Uma sessão de chat também mantém vendor quando a chave o possui e o plano o permite (Enterprise). Sessões de outros produtos nunca incluem vendor.

Renovação​

O cliente não pode solicitar uma validade maior. Faça outra troca antes do vencimento de expires_in. O SDK renova 90 segundos antes de expirar, quando uma aba em segundo plano volta a ficar visível com a sessão a 90 segundos ou menos do vencimento (ou já expirada), e a cada 30 segundos após uma falha de renovação. Se a primeira troca falhar, a montagem falha e não é repetida.

Cada troca com product: "tile" consome um carregamento de mapa da franquia da sua organização; as trocas dos outros produtos não têm custo. A troca tem um limite de requisições próprio por chave, separado das chamadas de execução. Consulte Cotas e limites de requisições.

Ordem das verificações​

A troca é interrompida na primeira verificação que falhar:

OrdemVerificaçãoFalha
1A chave é válida401 Invalid or missing API key
2Limite de trocas da chave429 rate_limited
3A chave é publicável403 publishable_key_required
4A requisição inclui o cabeçalho Origin403 origin_required
5A origem está na lista de origens permitidas da chave, caso exista403 origin_not_allowed
6A chave não está restrita de forma a excluir este produto403 product_not_allowed
7Seu plano inclui o produto403 tier_capability_not_allowed
8A chave possui o escopo exigido pelo produto403 insufficient_scope, ou tier_capability_not_allowed se a chave o possui, mas seu plano não o inclui mais
9Para tile: há um carregamento de mapa disponível429 map_load_quota_exceeded

Teste pelo terminal​

curl -s https://api.kaleidr.com/inference-api/b2b/v1/sdk/sessions \
-H "X-Api-Key: kld_pk_live_…" \
-H "Origin: https://www.example.com" \
-H "Content-Type: application/json" \
-d '{"product":"chat"}'

Isso funciona porque Origin é um cabeçalho comum que qualquer cliente fora do navegador pode definir. Por isso, a lista de origens permitidas é descrita como um controle para navegadores, não como um segredo: consulte CORS e origens permitidas.

Sessões para um mapa publicado​

Um mapa publicado pelo Studio cujo bloco Kaleidr AI ativa Control Tower ou Popup Window pode oferecer chat aos visitantes sem uma chave na página. Em vez dela, a página troca o ID público do mapa e o recurso que ele abre:

POST https://api.kaleidr.com/inference-api/b2b/v1/sdk/share-sessions
Content-Type: application/json

{ "share_id": "your-map-id", "feature": "control_tower" }
{ "session_token": "kld_sess_live_eyJhbGciOi…", "expires_in": 300, "product": "chat" }

Essa sessão serve apenas para chat, inclui o escopo ai, dura 300 segundos e é cobrada da organização proprietária do mapa. Ela nunca inclui vendor. Deve ser usada pela página que a solicitou: uma chamada sem Origin ou com outra origem é rejeitada. As recusas são:

StatusCódigoCausa
403origin_requiredA requisição não contém o cabeçalho Origin.
404not_foundNão existe mapa publicado nem link de compartilhamento com esse ID, ou o mapa do link de compartilhamento não está publicado.
403chat_disabledO Kaleidr AI do mapa não ativa o recurso solicitado.
403origin_not_allowedA página não está entre os domínios permitidos do mapa.
403owner_has_no_organizationO proprietário do mapa não tem uma organização à qual cobrar.
403tier_capability_not_allowedO plano do proprietário não inclui chat.
429rate_limitedHouve trocas demais para este mapa ou a partir deste endereço.

A configuração está descrita em Kaleidr AI em um mapa publicado.

Escopos​

Uma chave contém escopos. Cada família de endpoints exige um deles.

EscopoO que liberaNecessário para
aiEndpoints /chat/* e /retrieval/*Chat e qualquer backend que chame endpoints de conversa ou consulta
designEndpoints /design/*Sessões do Editor e qualquer backend que chame endpoints de design
mapsSessões de mapa-baseTile
vendorNada por si só. Permite que as respostas do chat usem os dados publicados da sua própria organização.Chat, quando você enviou dados

Uma nova chave recebe ai, maps e design, a menos que você solicite algo diferente. No plano Free, uma chave sempre inclui todos os recursos do Free: exatamente esses três escopos e os quatro produtos (chat, editor, viewer, tile), independentemente de quais sejam especificados na requisição. vendor nunca é um padrão, e somente uma organização Enterprise pode criar uma chave com esse escopo.

Uma solicitação de criação de chave que inclua um escopo ou produto não permitido pelo plano é rejeitada com 403 tier_capability_not_allowed. Nenhum item é removido silenciosamente da solicitação. Na prática, isso ocorre ao solicitar vendor no Free ou no Pro.

Os escopos são definidos quando a chave é criada. Nenhum endpoint ou configuração pode alterá-los depois disso. Uma chave rotacionada herda os escopos, exceto aqueles que o plano atual não permite mais. Para alterar os escopos, crie uma nova chave e revogue a antiga.

A rotação no Free segue a regra do Free. Nesse plano, a substituta de uma chave publicável rotacionada inclui todos os recursos do Free (ai, maps, design e os quatro produtos), independentemente dos escopos da chave anterior. Uma chave de servidor ou legada não pode ser rotacionada no Free: a requisição é rejeitada com 403 free_plan_publishable_only.

O que uma chave pode fazer é limitado tanto pela chave quanto pelo plano​

Toda requisição verifica os escopos e produtos registrados para a chave em relação ao que o plano da sua organização inclui hoje. Alterar o plano nunca modifica uma chave, mas muda o que ela pode fazer:

  • insufficient_scope: o escopo nunca foi concedido à chave. Solução: use uma chave que o tenha.
  • tier_capability_not_allowed: a chave possui o escopo, mas o plano atual não o inclui. Solução: altere o plano.

vendor é a exceção à segunda regra, pois não libera nenhum endpoint. Uma chave que armazene vendor em um plano inferior ao Enterprise não é rejeitada: suas requisições funcionam, mas as respostas são produzidas sem os seus dados.

Uma chave com a lista de produtos vazia pode usar todos os produtos incluídos no seu plano. Uma chave sem escopos é rejeitada em qualquer endpoint.

Um limite de produtos se aplica a todas as chaves​

allowed_products restringe uma chave a alguns dos produtos chat, editor, viewer e tile. Esse limite é aplicado a todos os tipos de chave, no ponto em que cada chave é usada:

ChaveOnde o limite é verificadoRecusa
Chave publicávelNa troca por sessão, em relação ao product solicitado403 product_not_allowed
Chave de servidor ou legadaEm cada requisição de execução, em relação ao produto ao qual pertence o endpoint403 product_not_allowed

Cada família de endpoints pertence ao produto cujo escopo exige:

EndpointsEscopoProduto que uma chave restrita deve permitir
/chat/*, /retrieval/*aichat
/design/*designeditor

Portanto, uma chave de servidor criada com "allowed_products": ["tile"] é rejeitada em /chat/control/stream com 403 product_not_allowed, embora tenha o escopo ai. Uma chave de servidor limitada apenas a viewer não pode chamar nenhum endpoint de execução, porque um mapa publicado não precisa de chave. Deixe a lista vazia quando uma chave precisar acessar todos os endpoints permitidos por seus escopos.

Um token de sessão não passa novamente por essa verificação: ele foi vinculado a um único produto quando foi emitido.

FreeProEnterprise
Chaves publicáveisSimSimSim
Chaves de servidorNãoSimSim
ai, maps, designSimSimSim
vendorNãoNãoSim

O Pro acrescenta chaves de servidor e um limite maior de chaves ativas ao que o Free oferece. A tabela completa dos planos está em Obter uma chave de API.

O escopo vendor​

vendor não libera nenhum endpoint. Ele determina se uma resposta de chat feita com essa chave pode utilizar os dados publicados da sua própria organização, além do conhecimento geral da Kaleidr. O processo completo, do envio dos dados à resposta, está em Seus dados: visão geral.

Quem pode utilizá-lo:

  • Free e Pro não podem ter vendor. Uma solicitação de criação de chave com esse escopo é rejeitada com 403 tier_capability_not_allowed, com ou sem o envio de vendor_acknowledged. Nenhuma chave é criada.
  • Enterprise pode criar chaves com vendor.

O escopo serve para ler os dados por meio de uma chave. O envio de dados é uma permissão separada, concedida a um proprietário ou administrador da organização, e não à chave; também é exclusiva do Enterprise: Free e Pro não podem enviar dados comerciais. Os arquivos que um usuário conectado adiciona a um mapa no Kaleidr Studio são um recurso diferente, disponível em todos os planos, e nenhum escopo permite lê-los: consulte Conjuntos de dados em um mapa.

A página API Keys não pode conceder vendor. Crie a chave pela API de gerenciamento de chaves:

curl -s https://api.kaleidr.com/shared-api/api-keys \
-H "Authorization: Bearer $KALEIDR_ACCOUNT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "store-locator-chat",
"key_type": "publishable",
"scopes": ["ai", "vendor"],
"vendor_acknowledged": true,
"allowed_origins": ["https://www.example.com"]
}'

vendor_acknowledged: true é obrigatório para uma chave publicável que inclua vendor. Sem isso, a solicitação falha com 422 vendor_scope_requires_acknowledgement. Esse campo existe porque uma chave publicável fica no código-fonte público da página; assim, qualquer visitante pode ler os dados acessíveis por ela. Uma chave de servidor não precisa dessa confirmação.

Antes de adicionar vendor a uma chave publicável:

  • Use uma chave por site. Apenas o site que precisa responder com seus dados deve receber vendor.
  • Considere públicos, nesse site, todos os seus dados publicados. Não publique custos de aquisição, tarifas ainda não divulgadas ou informações que você não colocaria na página.
  • Lembre-se de que sessões já em andamento não recebem o novo escopo. Uma chave criada com vendor o fornece apenas às sessões emitidas a partir de então.

Para retirar vendor, revogue a chave e crie uma substituta sem esse escopo. A revogação passa a valer na próxima requisição, inclusive para sessões já emitidas.

Quando uma organização deixa o Enterprise​

A mudança de Enterprise para Pro ou Free não altera suas chaves nem faz com que elas parem de funcionar:

O que mudaApós a mudança
Uma chave com vendorContinua funcionando para todos os outros usos. As respostas deixam de utilizar os seus dados. Nenhum erro, status ou campo indica isso.
Sessões de navegador emitidas antes da mudançaSão encerradas. A próxima requisição retorna 401, e o SDK obtém uma nova sessão sem vendor.
Rotação de uma chave com vendorNo Pro: retorna 201 com sucesso. A substituta mantém os mesmos escopos, exceto vendor; a lista de produtos não muda. No Free: a substituta de uma chave publicável recebe ai, maps, design e os quatro produtos, independentemente da chave anterior; a rotação de uma chave de servidor ou legada é rejeitada com 403 free_plan_publishable_only.
Criação de uma chave com vendorRejeitada com 403 tier_capability_not_allowed.
Suas versões publicadasProprietários e administradores ainda podem listá-las, despublicá-las e excluí-las em qualquer plano usando a API de envio de dados. No Free e no Pro, envio e publicação são rejeitados com 403 vendor_data_not_on_plan.

Ao voltar para o Enterprise, uma chave que ainda armazene vendor poderá acessar os dados novamente. Uma substituta rotacionada no plano inferior não recupera o escopo: crie uma nova chave.

Restrições de uma chave​

RestriçãoAplica-se aConfigurável na página API KeysConfigurável pela API de gerenciamento de chavesRecusa
Origens permitidasChaves publicáveisSimSim (allowed_origins)403 origin_not_allowed na troca
Produtos permitidosQualquer chaveNãoSim (allowed_products)403 product_not_allowed: na troca para uma chave publicável, em cada requisição de execução para uma chave de servidor ou legada. Consulte limites de produtos.
Lista de IPs permitidosChaves de servidor e legadasNãoSim (allowed_ips)403 ip_not_allowed
Limite mensalQualquer chaveNãoSim (monthly_cap_tokens)429 quota_exceeded
ExpiraçãoQualquer chaveNãoSim (expires_at)401 após a data
EscoposQualquer chaveNãoApenas na criação (scopes)403 insufficient_scope

Origens permitidas. Até 100 entradas, cada uma no formato scheme://host[:port], sem caminho. Em uma chave publicável, uma lista vazia significa qualquer origem. Os detalhes e motivos de falha estão em CORS e origens permitidas.

Lista de IPs permitidos. Até 100 endereços IP ou blocos CIDR. Um bloco que corresponda a todos os endereços (/0) é rejeitado: deixe a lista vazia para permitir qualquer endereço. Se houver uma lista e não for possível determinar o endereço do solicitante, a requisição será rejeitada.

Limite mensal. Teto do que uma chave pode consumir dos créditos de IA da organização durante um período de faturamento. Consulte Cotas e limites de requisições.

O que muda em uma sessão já emitida​

Uma sessão verifica novamente sua chave de origem em cada requisição; por isso, remover o acesso tem efeito rápido. Conceder acesso adicional exige uma nova troca.

Alteração na chave ou na contaEfeito em uma sessão já emitida
Chave revogada ou rotacionada sem período de carência401 na próxima requisição.
Origem da sessão removida das origens permitidas da chave401 na próxima requisição.
Produto da sessão removido dos produtos permitidos da chave401 na próxima requisição.
Plano rebaixadoSessões emitidas antes do rebaixamento recebem 401. Sessões emitidas depois recebem 403 tier_capability_not_allowed ao tentar usar algo que o plano já não inclui.
Limite mensal adicionado ou reduzidoAplicado na próxima requisição.
Limite mensal removidoAplicado a partir da próxima troca.
Plano atualizado para uma categoria superiorAplicado a partir da próxima troca.

Como as sessões duram poucos minutos, aguardar “até a próxima troca” é pouco tempo. A renovação do SDK aplica a mudança sem alterações no código.

API de gerenciamento de chaves​

A página API Keys em kaleidr.com/api-keys permite configurar o nome, o tipo e as origens permitidas de uma chave. Todo o restante descrito nesta página é configurado pela mesma API utilizada por essa página.

  • URL base: https://api.kaleidr.com/shared-api/api-keys
  • Autenticação: Authorization: Bearer com o token de acesso de uma conta Kaleidr conectada que seja proprietária ou administradora da organização. Uma chave da plataforma não é aceita aqui. Atualmente não existe uma credencial separada de longa duração para gerenciamento de chaves.
  • Organização: quando nenhuma organização é indicada, usa-se a sua organização principal. Para indicar outra, envie org_id no corpo JSON ao criar uma chave e como parâmetro de consulta ?org_id= em todas as outras rotas. Um parâmetro org_id na consulta da rota de criação é ignorado.
Método e caminhoFinalidadeSucesso
POST /Criar uma chave201, objeto da chave mais plaintext_key
GET /Listar chaves ativas, das mais recentes às mais antigas200
GET /{id}/events?limit=1..200Eventos de auditoria de uma chave200
PATCH /{id}Alterar restrições200, objeto da chave
POST /{id}/rotateSubstituir a chave201, nova chave mais plaintext_key
POST /{id}/revokeRevogar a chave200, objeto da chave

Não existe uma rota de exclusão: revogue a chave para desativá-la definitivamente.

Campos aceitos na criação de uma chave:

CampoTipoPadrãoObservações
namestring, de 1 a 200 caracteresobrigatório
org_idUUIDsua organização principalOrganização em que a chave é criada. Envie no corpo: um parâmetro de consulta é ignorado nesta rota.
key_type"publishable" ou "server""publishable""server" é rejeitado no Free com 403 free_plan_publishable_only.
environment"live" ou "test""live"
scopesarray de strings["ai", "maps", "design"]Entre ai, maps, design, vendor. Qualquer outro retorna 422 unknown_scope. Um escopo que seu plano não permite (vendor abaixo de Enterprise) retorna 403 tier_capability_not_allowed.
allowed_originsarray de strings, até 100[]Vazio significa qualquer origem para uma chave publicável.
allowed_productsarray de strings[]Entre chat, editor, viewer, tile. Vazio significa todos. Qualquer outro retorna 422 unknown_product. Aplica-se a chaves publicáveis, de servidor e legadas: consulte limites de produtos.
allowed_ipsarray de strings, até 100[]Endereços IP ou blocos CIDR.
monthly_cap_tokensinteiro, 0 ou maisnenhum1 ou mais limita a chave. 0 ou null significa sem limite.
expires_atdata e hora futurasnenhum
vendor_acknowledgedbooleanofalseObrigatório para uma chave publicável com vendor (Enterprise).

PATCH aceita name, allowed_origins, allowed_products, allowed_ips, monthly_cap_tokens e expires_at. Envie apenas os campos que deseja alterar; um null explícito limpa o valor. scopes não é aceito.

rotate aceita { "grace_hours": 0 }, entre 0 e 8760. A substituta herda os escopos da chave antiga, exceto aqueles que seu plano atual não permite mais. No Free, a substituta sempre recebe todos os recursos do Free, e uma chave de servidor ou legada não pode ser rotacionada (403 free_plan_publishable_only). Com 0, a chave antiga e suas sessões param de funcionar imediatamente. Com um período de carência, a chave antiga continua funcionando até o fim desse período, ainda conta no limite de chaves ativas do plano e não pode ser rotacionada novamente. A página API Keys usa um período de carência de 24 horas.

Os erros dessas rotas são descritos em Erros: gerenciamento de chaves.

Erros de autenticação​

Um 401 significa que a API não aceita a credencial. Um 403 significa que a API reconhece a credencial, mas recusa a operação. Todos têm o formato {"detail": "<code>"}.

No navegador, uma requisição rejeitada por causa da credencial ou da origem não inclui um cabeçalho CORS na resposta; por isso, a página vê um erro CORS em vez do corpo. Uma requisição rejeitada posteriormente por escopo ou plano pode ser lida, e o SDK informa kaleidr session exchange failed (403). Nos dois casos, abra a requisição na guia Network das ferramentas do navegador para ler o código. Consulte CORS e origens permitidas.

StatusCódigoCausaSolução
401Invalid or missing API keyNenhuma credencial; chave desconhecida, revogada ou expirada; sessão expirada; sessão cuja chave foi revogada, perdeu a permissão para esta origem ou produto ou foi emitida antes de um rebaixamento de plano; organização suspensa ou sem plano.Verifique o valor e o estado da chave na página API Keys. Para uma sessão, faça outra troca.
401publishable_requires_sessionUma chave publicável foi enviada a um endpoint de execução.Troque-a por uma sessão ou chame o endpoint pelo backend com uma chave de servidor.
403publishable_key_requiredA troca por sessão foi chamada com uma chave de servidor ou legada.Use uma chave kld_pk_… na troca.
403origin_requiredTroca por sessão sem cabeçalho Origin.Faça a chamada a partir de uma página no navegador.
403origin_not_allowedA origem da página não está entre as origens permitidas da chave ou entre os domínios permitidos do mapa publicado.Adicione a origem exata à chave ou o domínio ao mapa.
403product_not_allowedOs produtos permitidos da chave excluem o produto: o product solicitado na troca ou, para uma chave de servidor ou legada, o produto ao qual pertence o endpoint chamado.Altere allowed_products ou use outra chave.
403insufficient_scopeA chave foi criada sem o escopo exigido pelo endpoint ou produto.Use uma chave que tenha esse escopo. Escopos não podem ser editados.
403tier_capability_not_allowedA chave tem o escopo ou produto, mas o plano atual não o inclui.Altere o plano em kaleidr.com/billing.
403server_key_in_browserUma chave de servidor foi enviada com o cabeçalho Origin.Faça a chamada pelo seu backend. Se a chave estava no código-fonte da página, faça sua rotação.
403session_origin_mismatchUm token de sessão foi usado de outra origem, diferente daquela para a qual foi emitido, ou uma sessão de mapa publicado foi usada sem Origin.Faça a troca por sessão na página que irá usá-la.
403ip_not_allowedUma chave de servidor ou legada com lista de IPs permitidos foi usada de um endereço fora da lista.Faça a chamada de um endereço permitido ou altere allowed_ips.
403chat_disabledTroca de mapa publicado: o Kaleidr AI do mapa não ativa o recurso solicitado.Ative Control Tower ou Popup Window no bloco Kaleidr AI do mapa no Studio.
403owner_has_no_organizationTroca de mapa publicado: o proprietário do mapa não tem organização.O proprietário deve criar uma organização ou entrar em uma existente.
404not_foundTroca de mapa publicado: não existe mapa publicado nem link de compartilhamento com esse ID.Verifique o ID e se o mapa está publicado.

O catálogo completo, incluindo respostas 429 e 5xx, está em Erros.

Relacionados​