API-Referenz

BI-Dashboards-API

BI-Dashboards: Verbindungen und Ansichten für Power BI, Tableau und Webseiten mit Anmeldung

HTTP-Referenz. Generiert aus dem Backend-Vertrag. Durchsuchen Sie die Endpunkte unten oder laden Sie OpenAPI herunter.

Diese Gruppe hat 14 Operationen, generiert aus api/openapi.yaml. Filtern Sie nach Pfad, Aktion oder Authentifizierung. Jeder Endpunkt listet seine Eingaben auf; klappen Sie ihn auf, um eine Anfragevorlage und die Antwortcodes zu sehen. Die Vorlagen brauchen Ihre eigenen Werte und einen schemagültigen Anfragekörper.

Großgeschriebene Platzhalter durch Ihre Werte ersetzen. Für eine JSON-Anfrage speichern Sie einen Body, der dem Schema in request.json entspricht. Cookie-Beispiele verwenden ein lokales Cookie-Archiv aus einer authentifizierten Sitzung.

BI-Dashboards: Verbindungen und Ansichten für Power BI, Tableau und Webseiten mit Anmeldung

GET/api/bi-connections

BI-Verbindungen auflisten

Listet die BI-Verbindungen des Projekts auf, älteste zuerst, 200 pro Seite; geben Sie next_cursor als cursor für die nächste zurück. Ein Secret wird nie zurückgegeben: secret zeigt, ob es gesetzt ist, und seine letzten 4 Zeichen.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
listBIConnections

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
CursorAbfrageoptionalnext_cursor der vorherigen Seite.
LimitAbfrageoptional
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections'

Antworten

StatusBedeutungTextkörper und Header
200Eine Seite mit Verbindungen.BIConnectionList (application/json); Header: Cache-Control
400invalid_request, auch bei einem fehlerhaften Cursor.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Verbindung anlegen

Fügt eine Verbindung zu einem BI-System hinzu, das dem Projekt gehört. Für Grafana: seine Adresse (http oder https auf einem öffentlichen Host, mit optionalem Pfadpräfix) und ein Service-Account-Token mit der Rolle Viewer. Das Token wird versiegelt und nie zurückgegeben.

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.

Ein Power-BI-Administrator muss für die App die Entwicklereinstellungen Embed content in apps und Service principals can call Fabric public APIs aktivieren (Admin-Portal, Mandanteneinstellungen), die App muss Mitglied oder Administrator jedes Arbeitsbereichs sein, den sie zeigt, und Berichte brauchen im Produktivbetrieb eine Embedded-, Fabric- oder Premium-Kapazität.

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.

Fügen Sie embed_origin der Antwort zur Domain-Zulassungsliste der verbundenen App hinzu und aktivieren Sie das Secret. Wer ein Bildschirm-Ticket hält, kann jede Ansicht einbetten, die dieser Benutzer sehen kann; verwenden Sie daher einen Benutzer, der nur die Bildschirm-Dashboards sieht. Tableau Cloud oder Tableau Server 2023.3 oder neuer.

Für eine Webseite mit Anmeldung (kind web): das Dienstkonto einer Website, die ihr Dashboard hinter einer Anmeldung zeigt. config.login_mode ist auto (config.login_url, config.username und das Passwort als secret: Der Renderer öffnet die Anmeldeseite und füllt das Formular aus), steps (config.login_url und config.steps, ein Skript aus den Schritten goto, fill, click, press, wait_for und wait_ms, deren Werte {{username}}, {{password}} und {{otp}} enthalten dürfen) oder none (keine Anmeldung: Die Verbindung zeigt Seiten mit den Cookies, die Sie ihr geben). totp_secret ist der Base32-Schlüssel oder die otpauth://-Adresse der Authenticator-App des Kontos: Der Server berechnet den Einmalcode (RFC 6238) und sendet dem Renderer nur den Code. cookies ist ein aus einem angemeldeten Browser exportierter Cookie-Satz für eine Website, deren Anmeldung sich nicht skripten lässt (Single Sign-on, das auf einem Telefon genehmigt wird, eine Geräteprüfung); der Server behält den Satz und erneuert ihn aus den Cookies, die jede Erfassung zurückgibt, sodass eine Anmeldung selten ist.

Das Passwort, der Seed und die Cookies werden versiegelt und nie zurückgegeben. Verwenden Sie ein schreibgeschütztes Dienstkonto. Das Passwort wird nur in config.login_url und die goto-Schritte eingegeben, sodass das Verlegen auf einen anderen Ursprung erneut secret verlangt. Nach fünf abgelehnten Anmeldungen in Folge meldet sich die Verbindung nicht mehr an, bis sich ihre Zugangsdaten ändern.

Ein Server ohne Seiten-Renderer antwortet mit bi_web_unavailable. Hängt bi_connection.created an. Ein exakter Wiederholungsversuch mit demselben Idempotency-Key gibt dieselbe Antwort zurück.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
BIConnectionWrite
Operations-ID
createBIConnection

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.

Anfrageinhalt-Felder

FeldBeschreibung
Name (erforderlich, Zeichenkette)minLength: 1 maxLength: 80
kind (erforderlich, string)Erlaubt: "grafana", "powerbi", "tableau", "web"
config (erforderlich, BIConnectionConfig)
secret (optional, String)

Erforderlich außer für web und für eine Power-BI-Verbindung, die connection_id nennt. Das Token des Dienstkontos (Grafana), der Wert des Client-Secrets der App (Power BI), der Secret-Wert der verbundenen App (Tableau) oder das Passwort des Dienstkontos (web: von login_mode auto verlangt, von none nicht verwendet).

Beim Eingang versiegelt; die CLI liest es aus einer Datei oder stdin, nie aus einem Argument. minLength: 1 maxLength: 4096

totp_secret (optional, Zeichenfolge)

Web: der Base32-Schlüssel der Authenticator-App des Kontos (16 bis 128 Zeichen, Leerzeichen erlaubt) oder seine otpauth://totp-Adresse, die den Algorithmus (SHA1, SHA256, SHA512), die Stellenzahl (6 bis 8) und die Periode festlegen kann. Versiegelt; nur der berechnete Code verlässt den Server. maxLength: 1024

cookies (optional, array)Web: ein aus einem angemeldeten Browser exportierter Cookie-Satz. Versiegelt; bei jeder Erfassung erneuert.
Anfragevorlage und Antworten
Shell · Anfragevorlage
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'

Antworten

StatusBedeutungTextkörper und Header
201Erstellt.BIConnection (application/json); Header: ETag, Cache-Control
400invalid_request, auch bei einer Adresse, die kein öffentlicher Internet-Host ist.Problem (application/problem+json)
402feature_not_in_plan — der Plan des Projekts enthält keine BI-Dashboards; required_plan nennt den Plan, der sie enthält.Problem (application/problem+json)
409idempotency_mismatch oder bi_web_unavailable für eine Web-Verbindung auf einem Server ohne Seiten-Renderer.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Verbindung abrufen

Eine Verbindung mit ihrem letzten Test.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
getBIConnection

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID'

Antworten

StatusBedeutungTextkörper und Header
200Eine Verbindung.BIConnection (application/json); Header: ETag, Cache-Control
404not_found.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Verbindung ändern

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.

Eine geänderte Adresse oder ein geändertes Secret löscht last_test und verwirft alle für ihre Ansichten zwischengespeicherten Renderings. Hängt bi_connection.updated an. If-Match schützt die Revision.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
BIConnectionPatch
Operations-ID
updateBIConnection

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
If-MatchÜberschriftoptionalOptionale positive Ressourcenrevision. Weglassen, um die aktuelle Ressource zu schreiben; eine übergebene veraltete Revision ist revision_conflict.
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.

Anfrageinhalt-Felder

FeldBeschreibung
Name (optional, Zeichenkette)minLength: 1 maxLength: 80
config (optional, BIConnectionConfig)
secret (optional, String)Ersetzt das gespeicherte Secret. Bei einer Web-Verbindung entfernt eine leere Zeichenfolge das Passwort. maxLength: 4096
totp_secret (optional, Zeichenfolge)Web: ersetzt das TOTP-Secret; eine leere Zeichenfolge entfernt es. maxLength: 1024
cookies (optional, array)Web: ersetzt den Cookie-Satz; eine leere Liste entfernt ihn.
Anfragevorlage und Antworten
Shell · Anfragevorlage
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'

Antworten

StatusBedeutungTextkörper und Header
200Die aktualisierte Verbindung.BIConnection (application/json); Header: ETag, Cache-Control
400invalid_request.Problem (application/problem+json)
402

feature_not_in_plan — der Plan des Projekts enthält keine BI-Dashboards; required_plan nennt den Plan, der sie enthält. Eine Änderung, die nur das Geheimnis ersetzt (und die dazugehörige Tableau-secret_id), ist immer erlaubt, sodass eine Verbindung, deren Token abgelaufen ist, aktuell bleibt.

Problem (application/problem+json)
412revision_conflict.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

Problem (application/problem+json)
LÖSCHEN/api/bi-connections/{id}

BI-Verbindung löschen

Löscht eine Verbindung, die keine Ansicht verwendet; solange Ansichten sie verwenden, lautet die Antwort resource_conflict mit deren IDs. Hängt bi_connection.deleted an. If-Match schützt die Revision.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
deleteBIConnection

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
If-MatchÜberschriftoptionalOptionale positive Ressourcenrevision. Weglassen, um die aktuelle Ressource zu schreiben; eine übergebene veraltete Revision ist revision_conflict.
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID'

Antworten

StatusBedeutungTextkörper und Header
204Gelöscht.kein Körper
409resource_conflict: Ansichten verwenden die Verbindung.Problem (application/problem+json)
412revision_conflict.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Verbindung testen

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).

Sie beurteilt weder Berechtigungen pro Dashboard noch den Zustand von Datenquellen noch die Erreichbarkeit eines Remote-Renderers: Testen Sie eine Ansicht, um wirklich zu rendern. Eine Ablehnung durch Grafana ist eine fehlgeschlagene Prüfung, kein Fehler.

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.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
testBIConnection

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID/test'

Antworten

StatusBedeutungTextkörper und Header
200Die Prüfungen.BITestReport (application/json); Header: Cache-Control
404not_found.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Verbindung durchsuchen

Listet auf, was das Token der Verbindung anzeigen kann. Grafana: seine Dashboards (query durchsucht Titel; next_cursor blättert) oder, wenn dashboard gesetzt ist, die Panels dieses Dashboards (Zeilen abgeflacht) unter dashboard.

Power BI: die Arbeitsbereiche, die die App sehen kann (id, name; query behält Namen, die sie enthalten), oder, wenn workspace gesetzt ist, die Berichte dieses Arbeitsbereichs (id, name, embed_url) unter workspace.

Tableau: die Ansichten, die der Benutzer der Verbindung sehen kann (Pfad als Workbook/View, name), 100 pro gelesener Seite; query behält Ansichten, deren Name oder Pfad ihn enthält, und liest bis zu zehn Seiten, um sie zu finden, und next_cursor ist die nächste zu lesende Seite. Eine Web-Verbindung listet nichts.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
browseBIConnection

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
AbfrageAbfrageoptional
DashboardAbfrageoptionalEine Dashboard-uid; listet ihre Panels auf.
ArbeitsbereichAbfrageoptionalEine Power-BI-Arbeitsbereichs-ID; listet ihre Berichte auf.
CursorAbfrageoptionalnext_cursor der vorherigen Seite.
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-connections/RESOURCE_ID/browse'

Antworten

StatusBedeutungTextkörper und Header
200Dashboards oder Panels.BIBrowse (application/json); Header: Cache-Control
409bi_upstream_refused: Das BI-System hat die Zugangsdaten oder Berechtigungen der Verbindung abgelehnt.Problem (application/problem+json)
500bi_upstream_unavailable.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Ansichten auflisten

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.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
listBIViews

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
CursorAbfrageoptionalnext_cursor der vorherigen Seite.
LimitAbfrageoptional
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views'

Antworten

StatusBedeutungTextkörper und Header
200Eine Seite mit Ansichten.BIViewList (application/json); Header: Cache-Control
400invalid_request, auch bei einem fehlerhaften Cursor.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Ansicht anlegen

Fügt eine Ansicht eines Grafana-Dashboards der Verbindung oder eines einzelnen seiner Panels hinzu (url: eine Adresse /d/{uid}/... auf dem Host der Verbindung, oder target) oder eines öffentlichen Grafana-Dashboard-Links (kind grafana und target.public_url, ohne Verbindung).

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.

Die Einbettungsseite zeigt nur ein Ticket, das das Manifest des Bildschirms enthält, sodass eine Ansicht nur auf den Bildschirmen ihres eigenen Projekts läuft.

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.

Eine Tableau-Public-Visualisierung ist eine Ansicht ohne Verbindung (kind tableau, target.public_url, neu aufgebaut als https://public.tableau.com/views/WORKBOOK/VIEW) und akzeptiert ebenfalls rotate_sheets. Für eine Webseite (kind web): eine Seite der Website der Web-Verbindung (url: eine https-Adresse auf einem öffentlichen Host, ohne target).

Der Browser am Rand öffnet sie angemeldet, wartet auf das Element wait_for, wenn gesetzt, und wait_ms Millisekunden (bis zu 10000) und zeichnet clip, einen CSS-Selektor, wenn gesetzt, sonst die ganze Seite.

Das Bild wird alle refresh_s (60 bis 86400, standardmäßig 300) neu gezeichnet und von allen Bildschirmen gleicher Größe geteilt, und nur, solange ein Bildschirm die Ansicht zeigt; schlägt eine Erfassung fehl, bleibt das letzte Bild auf dem Bildschirm. Setzen Sie wait_for auf ein Element, das nur existiert, wenn die Seite angemeldet ist, damit nie eine Anmeldeseite gezeigt wird. Hängt bi_view.created an.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
BIViewWrite
Operations-ID
createBIView

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.

Anfrageinhalt-Felder

FeldBeschreibung
connection_id (optional, String)
kind (optional, String)Erforderlich ohne connection_id; sonst muss es zur Verbindung passen. Erlaubt: "grafana", "powerbi", "tableau", "web"
Name (erforderlich, Zeichenkette)minLength: 1 maxLength: 80
url (optional, Zeichenfolge)

Eine Dashboard-Adresse /d/{uid}/... auf dem Host der Verbindung. Der Server liest daraus orgId, viewPanel (N oder panel-N) oder panelId, from, to, var-* und theme. Tableau: eine Ansichtsadresse auf dem Host der Verbindung (/views/W/V, /t/SITE/views/W/V, #/site/SITE/views/W/V) oder Workbook/View. Web: die https-Adresse der Seite auf einem öffentlichen Host. maxLength: 2048

target (optional, BITarget)

Was eine Ansicht zeigt. Grafana mit einer Verbindung: dashboard_uid (und optional ein Panel). Power BI mit einer Verbindung: workspace_id und report_id, mit pages oder rotate_all_pages. Tableau mit einer Verbindung: view (Workbook/View), mit rotate_sheets. Web mit einer Verbindung: url. Ohne Verbindung: nur public_url (und rotate_sheets für Tableau).

refresh_s (optional, Integer)Grafana 30 bis 86400; Power BI und Tableau 0 oder 60 bis 86400; web 60 bis 86400. default: 300 minimum: 0 maximum: 86400
rotate_s (optional, Integer)Power BI und Tableau: 0 oder 10 bis 3600; erforderlich für ein Ziel, das Seiten oder Blätter rotiert. default: 0 minimum: 0 maximum: 3600
fit (optional, String)Erlaubt: "contain", "cover", "fill" Standard: "contain"
wait_for (optional, Zeichenfolge)Web: ein CSS-Selektor eines Elements, das erscheint, wenn die Seite bereit ist, und nur, wenn sie angemeldet ist. maxLength: 512
wait_ms (optional, Integer)Web: die Millisekunden, die nach der Bereitschaft der Seite gewartet wird. minimum: 0 maximum: 10000
clip (optional, Zeichenfolge)Web: ein CSS-Selektor des Teils der Seite, der gezeichnet wird. maxLength: 512
Anfragevorlage und Antworten
Shell · Anfragevorlage
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'

Antworten

StatusBedeutungTextkörper und Header
201Erstellt.BIView (application/json); Header: ETag, Cache-Control
400invalid_request, auch bei einer url, die keine Dashboard-Adresse der Verbindung ist.Problem (application/problem+json)
402feature_not_in_plan — der Plan des Projekts enthält keine BI-Dashboards; required_plan nennt den Plan, der sie enthält.Problem (application/problem+json)
404not_found: Die Verbindung gehört nicht zu diesem Projekt.Problem (application/problem+json)
409idempotency_mismatch.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Ansicht abrufen

Eine Ansicht mit embed_url und ihrem letzten Abschneiden auf dem Bildschirm (status).

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
getBIView

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID'

Antworten

StatusBedeutungTextkörper und Header
200Eine Ansicht.BIView (application/json); Header: ETag, Cache-Control
404not_found.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Ansicht ändern

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.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
BIViewPatch
Operations-ID
updateBIView

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
If-MatchÜberschriftoptionalOptionale positive Ressourcenrevision. Weglassen, um die aktuelle Ressource zu schreiben; eine übergebene veraltete Revision ist revision_conflict.
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.

Anfrageinhalt-Felder

FeldBeschreibung
Name (optional, Zeichenkette)minLength: 1 maxLength: 80
url (optional, Zeichenfolge)maxLength: 2048
target (optional, BITarget)

Was eine Ansicht zeigt. Grafana mit einer Verbindung: dashboard_uid (und optional ein Panel). Power BI mit einer Verbindung: workspace_id und report_id, mit pages oder rotate_all_pages. Tableau mit einer Verbindung: view (Workbook/View), mit rotate_sheets. Web mit einer Verbindung: url. Ohne Verbindung: nur public_url (und rotate_sheets für Tableau).

refresh_s (optional, Integer)Minimum: 0 Maximum: 86400
rotate_s (optional, Integer)Minimum: 0 Maximum: 3600
fit (optional, String)Erlaubt: "contain", "cover", "fill"
wait_for (optional, Zeichenfolge)Web: eine leere Zeichenfolge entfernt es. maxLength: 512
wait_ms (optional, Integer)Web: 0 entfernt es. minimum: 0 maximum: 10000
clip (optional, Zeichenfolge)Web: eine leere Zeichenfolge entfernt es. maxLength: 512
Anfragevorlage und Antworten
Shell · Anfragevorlage
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'

Antworten

StatusBedeutungTextkörper und Header
200Die aktualisierte Ansicht.BIView (application/json); Header: ETag, Cache-Control
400invalid_request.Problem (application/problem+json)
402feature_not_in_plan — der Plan des Projekts enthält keine BI-Dashboards; required_plan nennt den Plan, der sie enthält.Problem (application/problem+json)
412revision_conflict.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

Problem (application/problem+json)
LÖSCHEN/api/bi-views/{id}

BI-Ansicht löschen

Löscht eine Ansicht. Ein Bildschirm, der ihre embed_url noch zeigt, antwortet auf dem Bildschirm mit not_found, bis sich seine Playlist ändert. Hängt bi_view.deleted an. If-Match schützt die Revision.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
deleteBIView

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
If-MatchÜberschriftoptionalOptionale positive Ressourcenrevision. Weglassen, um die aktuelle Ressource zu schreiben; eine übergebene veraltete Revision ist revision_conflict.
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request DELETE --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID'

Antworten

StatusBedeutungTextkörper und Header
204Gelöscht.kein Körper
412revision_conflict.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

BI-Ansicht testen

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.

Eine Power-BI-Verbindungsansicht erzeugt ein echtes Einbettungs-Token für ihren Bericht (prüft report und embed_token); sie beurteilt weder die genannten Seiten noch die Kapazität noch das, was der Bericht zeigt, und ein Dataset mit Zeilensicherheit wird von Power BI mit einer eigenen Meldung abgelehnt, die in der Prüfung erscheint. Ein öffentlicher Power-BI-Link wird abgerufen und seine Framing-Header werden gelesen.

Eine Tableau-Verbindungsansicht meldet sich als Verbindungsbenutzer an und sucht die Ansicht (prüft signin und view); sie beurteilt weder die Domain-Allowlist noch die Einbettungsberechtigung noch das, was die Ansicht zeigt. Eine Tableau-Public-Ansicht fragt Tableau Public, ob die Arbeitsmappe existiert, und beurteilt den Ansichtsnamen nicht.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
testBIView

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
Idempotency-KeyÜberschriftoptionalFür einen frischen Vorgang weglassen. Geben Sie einen Schlüssel an und verwenden Sie ihn erneut, um Wiederholungen zu deduplizieren; die CLI verwaltet Schlüssel automatisch.
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request POST --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID/test'

Antworten

StatusBedeutungTextkörper und Header
200Die Prüfungen.BIViewTest (application/json); Header: Cache-Control
404not_found.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

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

Bild der BI-Ansicht abrufen

Zeichnet jetzt eine Grafana- oder Web-Ansicht als PNG (eine Power-BI- oder Tableau-Ansicht antwortet not_found), außerhalb des gemeinsamen Caches, sodass ein Test genau zeigt, was Grafana oder der Browser in dieser Größe rendert. Die Einbettungsseite selbst nutzt das gemeinsame Rendering.

Authentifizierung
projectBearer ODER dashboardSession
Anfrageinhalt
keine
Operations-ID
getBIViewImage

Parameter

NameSendenErforderlich?Beschreibung
ScreenRig-ProjectÜberschriftoptionalFür eine Veröffentlichung veraltet. Muss mit den JWT-Projektberechtigungen übereinstimmen; fügt Deprecation- und Warning-Header hinzu. Kein Token-Austausch.
idPfaderforderlich
BreiteAbfrageoptional
HöheAbfrageoptional
Anfragevorlage und Antworten
Shell · Anfragevorlage
curl --request GET --header 'Authorization: Bearer [SCREENRIG_TOKEN]' --cookie cookies.txt --cookie-jar cookies.txt 'https://screenrig.ai/api/bi-views/RESOURCE_ID/image'

Antworten

StatusBedeutungTextkörper und Header
200Das gerenderte PNG.string (image/png); Header: Cache-Control
409bi_upstream_refused: Das BI-System hat die Zugangsdaten oder Berechtigungen der Verbindung abgelehnt.Problem (application/problem+json)
500bi_upstream_unavailable, auch bei einem Grafana ohne Image Renderer.Problem (application/problem+json)
Standard

Stabile RFC 9457-Fehlerantwort. Ein 421 server_draining enthält Retry-After von 1 Sekunde, ein 500 not_ready oder dependency_unavailable enthält 5, und ein 500 manifest_degraded enthält 60, sofern der Handler keinen spezifischeren Wert gesetzt hat.

Problem (application/problem+json)