VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa/Dashboards

Compartilhar abas

Publica uma aba para usuários, grupos, sellers ou todos, lista com quem ela foi compartilhada e remove um compartilhamento.

Uma aba nova é privada. Publicar concede acesso a outras pessoas por meio de compartilhamentos, cada um com um destinatário e uma permissão: R (só leitura, pode abrir, executar e duplicar) ou W (também edita). Abas do administrador podem ser publicadas para sellers (lojistas), sempre em leitura: o seller vê a aba com os próprios números, porque os cards são recalculados no escopo dele.

Publicar

POST/api/v1/admin/dashboards/{id}/publishAdmin

Publicar uma aba

Parâmetros de caminho

iduuidobrigatório
Id da aba (UUID).

Corpo da requisição

principalsarrayobrigatório

Destinatários. Publicar de novo para o mesmo destinatário apenas atualiza a permissão.

typestringobrigatório
UGVAS
U um usuário, G um grupo de usuários, V um seller, A todos os administradores (só em aba do administrador), S todos os sellers.
iduuid
Id do usuário, grupo ou seller. Obrigatório em U, G e V; omitido em A e S.
permissionstringpadrão: R
RW
R (padrão) ou W. Publicar uma aba do administrador para S ou V grava sempre R, qualquer que seja o valor enviado.

Exemplo de requisição (publicar)

Resposta (publicar)

200Publicada

Campos da resposta

messagestring
Texto fixo de confirmação, em inglês.
vendor_incompatible_cardsarray
Só aparece ao publicar uma aba do administrador para sellers: títulos dos cards que o seller verá como erro, porque a entidade deles não tem escopo de seller. A publicação acontece mesmo assim.

Erros (publicar)

StatusQuandoCorpo
401Sem token, token inválido ou expirado.{"error":"missing authorization header"}
403O usuário não tem o privilégio exigido.{"error":"insufficient privileges","required":"publish_dashboards"}
400Corpo inválido: não é JSON, tem campo desconhecido (a leitura rejeita campos que a API não conhece) ou passa de 1 MB.{"error":"invalid request body","detail":"json: unknown field \"foo\""}
404A aba não existe, não é sua ou não está visível para você. A API responde 404 em vez de 403 para não revelar que o id existe.{"error":"dashboard not found"}
400Tipo de destinatário desconhecido, id ausente onde é obrigatório, ou A em aba do seller.{"error":"failed to publish dashboard","detail":"invalid principal type \"X\""}

Listar compartilhamentos

GET/api/v1/admin/dashboards/{id}/sharesAdmin

Listar os compartilhamentos de uma aba

Parâmetros de caminho

iduuidobrigatório
Id da aba (UUID).

Exemplo de requisição (listar)

Resposta (listar)

200Compartilhamentos

Campos da resposta

sharesarray|null
Compartilhamentos. Quando não há nenhum, vem null e não []: trate os dois.
shares[].iduuid
Id do compartilhamento, usado para removê-lo.
shares[].dashboard_iduuid
Aba.
shares[].principal_typestring
UGVAS
Tipo do destinatário (U, G, V, A, S).
shares[].principal_iduuid
Id do destinatário. Ausente em A e S.
shares[].permissionstring
RW
R ou W.
shares[].shared_byuuid
Quem publicou.
shares[].created_atstring
Quando foi compartilhado, RFC 3339.

Erros (listar)

StatusQuandoCorpo
401Sem token, token inválido ou expirado.{"error":"missing authorization header"}
403O usuário não tem o privilégio exigido.{"error":"insufficient privileges","required":"manage_dashboards"}
404A aba não existe, não é sua ou não está visível para você. A API responde 404 em vez de 403 para não revelar que o id existe.{"error":"dashboard not found"}
500Falha inesperada no servidor.{"error":"failed to ..."}

Remover compartilhamento

DELETE/api/v1/admin/dashboards/{id}/shares/{shareId}Admin

Remover um compartilhamento

Parâmetros de caminho

iduuidobrigatório
Id da aba (UUID).
shareIduuidobrigatório
Id do compartilhamento (de Listar compartilhamentos).

Exemplo de requisição (remover)

Resposta (remover)

200Removido

Campos da resposta

messagestring
Texto fixo de confirmação, em inglês.

Erros (remover)

StatusQuandoCorpo
401Sem token, token inválido ou expirado.{"error":"missing authorization header"}
403O usuário não tem o privilégio exigido.{"error":"insufficient privileges","required":"publish_dashboards"}
404A aba não existe, não é sua ou não está visível para você. A API responde 404 em vez de 403 para não revelar que o id existe.{"error":"dashboard not found"}
404O compartilhamento não existe nesta aba.{"error":"share not found"}
500Falha inesperada no servidor.{"error":"failed to ..."}
Três privilégios diferentes

Publicar e remover compartilhamento exigem publish_dashboards. Listar exige manage_dashboards (porque mostra com quem a aba está aberta). Em todos, você precisa ser o dono da aba ou ter permissão W nela.

O que o seller vê

Uma aba publicada para sellers é um modelo de especificações, nunca uma cópia dos seus números. Cada card é recompilado com o escopo do seller; um card cuja entidade não tem escopo de seller falha de forma segura (mostra erro, não dados da loja inteira). O seller pode abrir, executar e duplicar a aba, mas não alterá-la.

Veja também

  • Listar abas
  • Duplicar uma aba
  • Executar a aba
Anterior
Gerar card por texto (IA)
Próxima
Classificação de status
Nesta página
  • Publicar
  • Exemplo de requisição (publicar)
  • Resposta (publicar)
  • Erros (publicar)
  • Listar compartilhamentos
  • Exemplo de requisição (listar)
  • Resposta (listar)
  • Erros (listar)
  • Remover compartilhamento
  • Exemplo de requisição (remover)
  • Resposta (remover)
  • Erros (remover)
  • Veja também
bash
curl -X POST "$BASE_URL/api/v1/admin/dashboards/8da0f9c1-b05b-4809-b07d-0b36573489e7/publish" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"principals": [{"type": "S"}, {"type": "A", "permission": "R"}]}'
bash
curl "$BASE_URL/api/v1/admin/dashboards/8da0f9c1-b05b-4809-b07d-0b36573489e7/shares" \
  -H "Authorization: Bearer $TOKEN"
bash
curl -X DELETE "$BASE_URL/api/v1/admin/dashboards/8da0f9c1-b05b-4809-b07d-0b36573489e7/shares/57ac6f6c-a3c4-4130-8353-de44b0888c0f" \
  -H "Authorization: Bearer $TOKEN"
json
{
  "message": "dashboard published",
  "vendor_incompatible_cards": []
}
json
{
  "shares": [
    {
      "id": "57ac6f6c-a3c4-4130-8353-de44b0888c0f",
      "dashboard_id": "8da0f9c1-b05b-4809-b07d-0b36573489e7",
      "principal_type": "S",
      "permission": "R",
      "shared_by": "d4613dde-ac7a-431c-9232-50d8cd6ad5fc",
      "created_at": "2026-10-11T21:10:47.048373Z"
    }
  ]
}
json
{
  "message": "share removed"
}