Referência da API

API de Painéis de BI

Dashboards de BI: conexões e visualizações de Power BI, Tableau e páginas web com login

Referência HTTP. Gerada a partir do contrato backend. Navegue pelos endpoints abaixo ou baixe o OpenAPI.

Este grupo tem 14 operações, geradas a partir de api/openapi.yaml. Filtre por caminho, ação ou autenticação. Cada endpoint lista suas entradas; expanda-o para ver um modelo de solicitação e os códigos de resposta. Os modelos precisam de seus próprios valores e de um corpo válido conforme o esquema.

Substitua os espaços reservados em maiúsculas pelos seus valores. Para uma solicitação JSON, salve um corpo que corresponda ao esquema em request.json. Exemplos de cookies usam um jar local de cookies de uma sessão autenticada.

Dashboards de BI: conexões e visualizações de Power BI, Tableau e páginas web com login

GET/api/bi-connections

Listar conexões BI

Lista as conexões de BI do projeto, da mais antiga para a mais recente, 200 por página; passe next_cursor de volta como cursor para a próxima. Um segredo nunca é retornado: secret mostra se está definido e seus últimos 4 caracteres.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
listBIConnections

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
cursorconsultaopcionalnext_cursor da página anterior.
limiteconsultaopcional
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections'

Respostas

StatusSignificadoCorpo e cabeçalhos
200Uma página de conexões.BIConnectionList (application/json); cabeçalhos: Cache-Control
400invalid_request, inclusive um cursor malformado.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
POST/api/bi-connections

Criar conexão BI

Adiciona uma conexão a um sistema de BI que o projeto possui. Para o Grafana: o endereço dele (http ou https em um host público, com prefixo de caminho opcional) e um token de conta de serviço com a função Viewer. O token é selado e nunca é retornado.

Grafana renders dashboards for screens through its Image Renderer plugin or remote rendering service, so the customer installs one; run POST /api/bi-connections/{id}/test to check. For Power BI (kind powerbi): config.tenant_id and config.client_id of a Microsoft Entra app registration and its client secret value as secret.

Um administrador do Power BI deve ativar as configurações de desenvolvedor Embed content in apps e Service principals can call Fabric public APIs para o app (portal de administração, configurações do locatário), o app deve ser Membro ou Administrador de cada workspace que exibe, e os relatórios precisam de uma capacidade Embedded, Fabric ou Premium em produção.

For Tableau (kind tableau): config.url (the https address of Tableau Server, or of your Tableau Cloud pod such as https://10ay.online.tableau.com), config.site (the site content URL, empty for the default site), config.client_id and config.secret_id of a connected app with direct trust, config.username (the Tableau user the screens views are shown as) and the secret value as secret.

Adicione embed_origin da resposta à lista de domínios permitidos do aplicativo conectado e ative o segredo. Quem tem um ticket de tela pode incorporar qualquer visualização que esse usuário possa ver, então use um usuário que veja apenas os dashboards das telas. Tableau Cloud, ou Tableau Server 2023.3 ou posterior.

Para uma página web com login (kind web): a conta de serviço de um site que mostra o dashboard atrás de um login. config.login_mode é auto (config.login_url, config.username e a senha como secret: o renderizador abre a página de login e preenche o formulário), steps (config.login_url e config.steps, um script de passos goto, fill, click, press, wait_for e wait_ms cujos valores podem conter {{username}}, {{password}} e {{otp}}) ou none (sem login: a conexão mostra páginas com os cookies que você dá a ela). totp_secret é a chave base32, ou o endereço otpauth://, do aplicativo autenticador da conta: o servidor calcula o código de uso único (RFC 6238) e envia ao renderizador apenas o código. cookies é um conjunto de cookies exportado de um navegador logado, para um site cujo login não pode ser automatizado (login único aprovado no celular, uma verificação de dispositivo); o servidor guarda o conjunto e o renova com os cookies que cada captura devolve, então um login é raro.

A senha, a semente e os cookies são selados e nunca devolvidos. Use uma conta de serviço somente leitura. A senha é digitada apenas em config.login_url e nos passos goto, então movê-los para outra origem exige secret de novo. Depois de cinco logins recusados seguidos, a conexão para de fazer login até que suas credenciais mudem.

Um servidor sem renderizador de páginas responde bi_web_unavailable. Adiciona bi_connection.created. Uma nova tentativa exata com a mesma Idempotency-Key devolve esta mesma resposta.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
BIConnectionWrite
ID da operação
createBIConnection

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.

Campos do corpo da solicitação

CampoDescrição
nome (obrigatório, string)minLength: 1 maxLength: 80
kind (obrigatório, string)Permitido: "grafana", "powerbi", "tableau", "web"
config (obrigatório, BIConnectionConfig)
secret (opcional, string)

Obrigatório exceto para web, e para uma conexão do Power BI que nomeia connection_id. O token da conta de serviço (Grafana), o valor do segredo de cliente do aplicativo (Power BI), o valor do segredo do aplicativo conectado (Tableau) ou a senha da conta de serviço (web: exigida por login_mode auto, não usada por none).

Selado na chegada; a CLI o lê de um arquivo ou da entrada padrão, nunca de um argumento. minLength: 1 maxLength: 4096

totp_secret (opcional, string)

Web: a chave base32 do aplicativo autenticador da conta (de 16 a 128 caracteres, espaços permitidos), ou o endereço otpauth://totp dela, que pode definir o algoritmo (SHA1, SHA256, SHA512), os dígitos (6 a 8) e o período. Selado; apenas o código calculado sai do servidor. maxLength: 1024

cookies (opcional, array)Web: um conjunto de cookies exportado de um navegador logado. Selado; renovado a cada captura.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/bi-connections'

Respostas

StatusSignificadoCorpo e cabeçalhos
201Criada.BIConnection (application/json); cabeçalhos: ETag, Cache-Control
400invalid_request, inclusive um endereço que não é um host público da Internet.Problema (application/problem+json)
402feature_not_in_plan — o plano do projeto não inclui os dashboards de BI; required_plan nomeia o plano que os inclui.Problema (application/problem+json)
409idempotency_mismatch, ou bi_web_unavailable para uma conexão web em um servidor sem renderizador de páginas.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
GET/api/bi-connections/{id}

Obter conexão BI

Uma conexão, com o último teste.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
getBIConnection

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID'

Respostas

StatusSignificadoCorpo e cabeçalhos
200Uma conexão.BIConnection (application/json); cabeçalhos: ETag, Cache-Control
404not_found.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
PATCH/api/bi-connections/{id}

Atualizar conexão BI

Changes a connection's name, address, organization or secret (a sent secret replaces it; an omitted one is kept). Moving a Grafana or Tableau connection to another origin (scheme, host or port) needs the secret in the same request, answered invalid_request at secret otherwise: the stored secret is only sent to the address it was saved for.

Uma mudança de endereço ou de segredo limpa last_test e descarta todas as renderizações em cache das visualizações dela. Registra bi_connection.updated. If-Match protege a revisão.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
BIConnectionPatch
ID da operação
updateBIConnection

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
If-MatchcabeçalhoopcionalRevisão positiva opcional do recurso. Omitir para escrever o recurso atual; uma revisão obsoleta fornecida é revision_conflict.
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.

Campos do corpo da solicitação

CampoDescrição
nome (opcional, string)minLength: 1 maxLength: 80
config (opcional, BIConnectionConfig)
secret (opcional, string)Substitui o segredo armazenado. Em uma conexão web, uma string vazia remove a senha. maxLength: 4096
totp_secret (opcional, string)Web: substitui o segredo TOTP; uma string vazia o remove. maxLength: 1024
cookies (opcional, array)Web: substitui o conjunto de cookies; uma lista vazia o remove.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request PATCH --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/bi-connections/RESOURCE_ID'

Respostas

StatusSignificadoCorpo e cabeçalhos
200A conexão atualizada.BIConnection (application/json); cabeçalhos: ETag, Cache-Control
400invalid_request.Problema (application/problem+json)
402

feature_not_in_plan — o plano do projeto não inclui os dashboards de BI; required_plan nomeia o plano que os inclui. Uma alteração que apenas substitui o segredo (e o secret_id do Tableau que o acompanha) é sempre permitida, de modo que uma conexão cujo token expirou continua atualizada.

Problema (application/problem+json)
412revision_conflict.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
EXCLUIR/api/bi-connections/{id}

Excluir conexão BI

Exclui uma conexão que nenhuma visualização usa; enquanto houver visualizações usando-a, a resposta é resource_conflict com os ids delas. Registra bi_connection.deleted. If-Match protege a revisão.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
deleteBIConnection

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
If-MatchcabeçalhoopcionalRevisão positiva opcional do recurso. Omitir para escrever o recurso atual; uma revisão obsoleta fornecida é revision_conflict.
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID'

Respostas

StatusSignificadoCorpo e cabeçalhos
204Excluído.sem corpo
409resource_conflict: há visualizações que usam a conexão.Problema (application/problem+json)
412revision_conflict.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
POST/api/bi-connections/{id}/test

Testar conexão BI

Calls the BI system with the connection's secret and stores the answer as last_test. For Grafana the checks are token (GET /api/search accepts it) and image_renderer (the plugin is listed; a missing plugin is a warning because a remote rendering service does not show as one).

Ela não julga permissões por painel, a saúde das fontes de dados nem a acessibilidade de um renderizador remoto: teste uma visualização para renderizar de verdade. Uma recusa do Grafana é uma verificação com falha, não um erro.

For Power BI the checks are token (Microsoft Entra accepts the app) and workspaces (the app can list workspaces; it counts them and none fails the check, naming the workspace access step). It does not judge capacity, row-level security or access to any one report: test a view, which generates a real embed token.

For Tableau the check is signin: Tableau accepts a content-read JWT signed with the connected app secret for the connection user, and the server signs out again. It does not judge the domain allowlist, which only a screen loading a view proves, or the permissions on any view: test a view, which looks the view up as the user.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
testBIConnection

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID/test'

Respostas

StatusSignificadoCorpo e cabeçalhos
200As verificações.BITestReport (application/json); cabeçalhos: Cache-Control
404not_found.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
GET/api/bi-connections/{id}/browse

Navegar na conexão BI

Lista o que o token da conexão pode mostrar. Grafana: os painéis dele (query pesquisa nos títulos; next_cursor pagina) ou, com dashboard definido, os painéis internos desse painel (linhas achatadas) em dashboard.

Power BI: os workspaces que o app pode ver (id, name; query mantém os nomes que a contêm) ou, com workspace definido, os relatórios desse workspace (id, name, embed_url) em workspace.

Tableau: as visualizações que o usuário da conexão pode ver (caminho como Workbook/View, name), 100 por página lida; query mantém as visualizações cujo nome ou caminho o contém, lendo até dez páginas para encontrá-las, e next_cursor é a próxima página a ler. Uma conexão web não lista nada.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
browseBIConnection

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
consultaconsultaopcional
painelconsultaopcionalUm uid de painel; lista os painéis dele.
workspaceconsultaopcionalUm id de workspace do Power BI; lista os relatórios dele.
cursorconsultaopcionalnext_cursor da página anterior.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID/browse'

Respostas

StatusSignificadoCorpo e cabeçalhos
200Painéis ou seus painéis internos.BIBrowse (application/json); cabeçalhos: Cache-Control
409bi_upstream_refused: o sistema de BI recusou as credenciais ou as permissões da conexão.Problema (application/problem+json)
500bi_upstream_unavailable.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
GET/api/bi-views

Listar visualizações BI

Lists the project's BI views, oldest first, 200 to a page; pass next_cursor back as cursor for the next. Each carries embed_url, the address an iframe primitive shows (content_fit fill); it is null where this server has no embed host.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
listBIViews

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
cursorconsultaopcionalnext_cursor da página anterior.
limiteconsultaopcional
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views'

Respostas

StatusSignificadoCorpo e cabeçalhos
200Uma página de visualizações.BIViewList (application/json); cabeçalhos: Cache-Control
400invalid_request, inclusive um cursor malformado.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
POST/api/bi-views

Criar visualização BI

Adiciona uma visualização de um painel do Grafana da conexão ou de um único painel interno dele (url: um endereço /d/{uid}/... no host da conexão, ou target), ou de um link de painel público do Grafana (kind grafana e target.public_url, sem conexão).

Put the answer's embed_url in an iframe primitive: the server renders the dashboard as a PNG through Grafana's /render API, refreshed every refresh_s (30 to 86400, default 300) and shared by every screen of the same size; the screen never talks to Grafana. A public dashboard plays live from Grafana, which must allow embedding.

A página de incorporação mostra apenas um ticket que o manifesto da tela traz, então uma visualização só é reproduzida nas telas do próprio projeto.

For Power BI (kind powerbi): a report of a workspace the connection's app is a member of (url: an app.powerbi.com /groups/{workspace}/reports/{report} address, or target with workspace_id and report_id), with pages to show and rotate_s to rotate through them (pages listing two or more, or rotate_all_pages, need rotate_s of 10 to 3600; one report page needs none), and refresh_s of 0 (no refresh) or 60 to 86400 (default 300).

The page asks the server for a short-lived view-only embed token (GenerateToken, App owns data) and renews it before it expires; the screen never holds the client secret. A Power BI Publish to web link is a view without a connection (kind powerbi, target.public_url https://app.powerbi.com/view?r=...), framed as it is.

For Tableau (kind tableau): a view of the connection site (url: an address copied from Tableau, such as https://HOST/t/SITE/views/WORKBOOK/VIEW or Tableau Cloud https://HOST/#/site/SITE/views/WORKBOOK/VIEW, or Workbook/View; or target.view), optionally with target.rotate_sheets and rotate_s of 10 to 3600 to turn the workbook published sheets (rotate_s and rotate_sheets go together; rotate_sheets may be given as the whole target beside url), and refresh_s of 0 (no refresh) or 60 to 86400 (default 300).

The page asks the server for a five minute JWT with only the embed scope, signed with the connected app secret, and builds the Embedding API v3 tableau-viz from the Tableau host; the screen never holds the secret.

Uma visualização do Tableau Public é uma visualização sem conexão (kind tableau, target.public_url, reconstruída como https://public.tableau.com/views/WORKBOOK/VIEW) e também aceita rotate_sheets. Para uma página web (kind web): uma página do site da conexão web (url: um endereço https em um host público, sem target).

O navegador na borda a abre já logado, espera o elemento wait_for quando definido e wait_ms milissegundos (até 10000), e desenha clip, um seletor CSS, quando definido, ou então a página inteira.

A imagem é redesenhada a cada refresh_s (60 a 86400, 300 por padrão) e compartilhada por todas as telas do mesmo tamanho, e só enquanto uma tela mostra a visualização; quando uma captura falha, a última imagem continua na tela. Defina wait_for como um elemento que só existe quando a página está logada, para que uma página de login nunca seja mostrada. Adiciona bi_view.created.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
BIViewWrite
ID da operação
createBIView

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.

Campos do corpo da solicitação

CampoDescrição
connection_id (opcional, string)
kind (opcional, string)Obrigatório sem connection_id; caso contrário deve corresponder à conexão. Permitido: "grafana", "powerbi", "tableau", "web"
nome (obrigatório, string)minLength: 1 maxLength: 80
url (opcional, string)

Um endereço de dashboard /d/{uid}/... no host da conexão. O servidor lê dele orgId, viewPanel (N ou panel-N) ou panelId, from, to, var-* e theme. Tableau: um endereço de visualização no host da conexão (/views/W/V, /t/SITE/views/W/V, #/site/SITE/views/W/V) ou Workbook/View. Web: o endereço https da página em um host público. maxLength: 2048

target (opcional, BITarget)

O que uma visualização mostra. Grafana com uma conexão: dashboard_uid (e opcionalmente um painel). Power BI com uma conexão: workspace_id e report_id, com pages ou rotate_all_pages. Tableau com uma conexão: view (Workbook/View), com rotate_sheets. Web com uma conexão: url. Sem uma conexão: apenas public_url (e rotate_sheets para o Tableau).

refresh_s (opcional, inteiro)Grafana 30 a 86400; Power BI e Tableau 0 ou 60 a 86400; web 60 a 86400. default: 300 minimum: 0 maximum: 86400
rotate_s (opcional, inteiro)Power BI e Tableau: 0 ou de 10 a 3600; obrigatório para um destino que alterna páginas ou planilhas. default: 0 minimum: 0 maximum: 3600
fit (opcional, string)Permitidos: "contain", "cover", "fill" padrão: "contain"
wait_for (opcional, string)Web: um seletor CSS de um elemento que aparece quando a página está pronta, e só quando está logada. maxLength: 512
wait_ms (opcional, inteiro)Web: os milissegundos a esperar depois que a página está pronta. minimum: 0 maximum: 10000
clip (opcional, string)Web: um seletor CSS da parte da página a desenhar. maxLength: 512
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/bi-views'

Respostas

StatusSignificadoCorpo e cabeçalhos
201Criada.BIView (application/json); cabeçalhos: ETag, Cache-Control
400invalid_request, inclusive uma url que não é um endereço de painel da conexão.Problema (application/problem+json)
402feature_not_in_plan — o plano do projeto não inclui os dashboards de BI; required_plan nomeia o plano que os inclui.Problema (application/problem+json)
404not_found: a conexão não está neste projeto.Problema (application/problem+json)
409idempotency_mismatch.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
GET/api/bi-views/{id}

Obter visualização BI

Uma visualização, com embed_url e como se saiu na tela da última vez (status).

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
getBIView

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID'

Respostas

StatusSignificadoCorpo e cabeçalhos
200Uma visualização.BIView (application/json); cabeçalhos: ETag, Cache-Control
404not_found.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
PATCH/api/bi-views/{id}

Atualizar visualização BI

Changes a view's name, target (url or target replaces the whole target), cadence or fit. A new target clears status, and every render cached for the old one is retired. A view keeps its connection and kind. Appends bi_view.updated. If-Match guards the revision.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
BIViewPatch
ID da operação
updateBIView

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
If-MatchcabeçalhoopcionalRevisão positiva opcional do recurso. Omitir para escrever o recurso atual; uma revisão obsoleta fornecida é revision_conflict.
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.

Campos do corpo da solicitação

CampoDescrição
nome (opcional, string)minLength: 1 maxLength: 80
url (opcional, string)maxLength: 2048
target (opcional, BITarget)

O que uma visualização mostra. Grafana com uma conexão: dashboard_uid (e opcionalmente um painel). Power BI com uma conexão: workspace_id e report_id, com pages ou rotate_all_pages. Tableau com uma conexão: view (Workbook/View), com rotate_sheets. Web com uma conexão: url. Sem uma conexão: apenas public_url (e rotate_sheets para o Tableau).

refresh_s (opcional, inteiro)mínimo: 0 máximo: 86400
rotate_s (opcional, inteiro)mínimo: 0 máximo: 3600
fit (opcional, string)Permitidos: "contain", "cover", "fill"
wait_for (opcional, string)Web: uma string vazia o remove. maxLength: 512
wait_ms (opcional, inteiro)Web: 0 o remove. minimum: 0 maximum: 10000
clip (opcional, string)Web: uma string vazia o remove. maxLength: 512
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request PATCH --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt --header 'Content-Type: application/json' --data '@request.json' 'https://screenrig.ai/api/bi-views/RESOURCE_ID'

Respostas

StatusSignificadoCorpo e cabeçalhos
200A visualização atualizada.BIView (application/json); cabeçalhos: ETag, Cache-Control
400invalid_request.Problema (application/problem+json)
402feature_not_in_plan — o plano do projeto não inclui os dashboards de BI; required_plan nomeia o plano que os inclui.Problema (application/problem+json)
412revision_conflict.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
EXCLUIR/api/bi-views/{id}

Excluir visualização BI

Exclui uma visualização. Uma tela que ainda exibe o embed_url dela responde not_found na tela até a playlist mudar. Registra bi_view.deleted. If-Match protege a revisão.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
deleteBIView

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
If-MatchcabeçalhoopcionalRevisão positiva opcional do recurso. Omitir para escrever o recurso atual; uma revisão obsoleta fornecida é revision_conflict.
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID'

Respostas

StatusSignificadoCorpo e cabeçalhos
204Excluído.sem corpo
412revision_conflict.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
POST/api/bi-views/{id}/test

Testar visualização BI

Renders a connection view for real (1920x1080, outside the shared cache and without touching status), or fetches a public dashboard link and checks that its page may be framed by the view's embed host (allow_embedding in Grafana). It does not judge what the picture shows. A Grafana failure is a failed check, not an error.

Uma visualização de conexão do Power BI gera um token de incorporação real para o relatório (verifica report e embed_token); ela não julga as páginas que nomeia, a capacidade nem o que o relatório mostra, e um conjunto de dados com segurança em nível de linha é recusado pelo Power BI com mensagem própria, exibida na verificação. Um link público do Power BI é buscado e seus cabeçalhos de enquadramento são lidos.

Uma visualização de conexão do Tableau entra como o usuário da conexão e procura a visualização (verifica signin e view); ela não julga a lista de domínios permitidos, a permissão de incorporação nem o que a visualização mostra. Uma visualização do Tableau Public pergunta ao Tableau Public se a pasta de trabalho existe e não julga o nome da visualização.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
testBIView

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
Idempotency-KeycabeçalhoopcionalOmitir para uma operação nova. Forneça e reutilize uma chave para deduplicar tentativas; o CLI gerencia as chaves automaticamente.
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID/test'

Respostas

StatusSignificadoCorpo e cabeçalhos
200As verificações.BIViewTest (application/json); cabeçalhos: Cache-Control
404not_found.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)
GET/api/bi-views/{id}/image

Obter imagem da visualização BI

Desenha agora uma visualização do Grafana ou web como PNG (uma visualização do Power BI ou do Tableau responde not_found), fora do cache compartilhado, de modo que um teste mostra exatamente o que o Grafana ou o navegador renderiza nesse tamanho. A própria página de incorporação usa a renderização compartilhada.

Autenticação
projectBearer OU dashboardSession
Corpo da solicitação
nenhum
ID da operação
getBIViewImage

Parâmetros

NomeEnviarObrigatório?Descrição
ScreenRig-ProjectcabeçalhoopcionalObsoleto por uma versão. Deve ser consistente com as concessões de projetos JWT; adiciona cabeçalhos Deprecation e Warning. Sem troca de token.
idcaminhoobrigatório
larguraconsultaopcional
alturaconsultaopcional
Modelo e respostas da solicitação
shell · modelo de requisição
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID/image'

Respostas

StatusSignificadoCorpo e cabeçalhos
200O PNG renderizado.string (image/png); cabeçalhos: Cache-Control
409bi_upstream_refused: o sistema de BI recusou as credenciais ou as permissões da conexão.Problema (application/problem+json)
500bi_upstream_unavailable, inclusive um Grafana sem renderizador de imagens.Problema (application/problem+json)
padrão

Resposta de problema estável RFC 9457. Um 421 server_draining tem Retry-After de 1 segundo, um 500 not_ready ou dependency_unavailable tem 5, e um 500 manifest_degraded tem 60, a menos que o handler defina valor mais específico.

Problema (application/problem+json)