Dokumentation / API · Geräte / Pakete POST Pakete/api/v1/account/entitlements/resources/preview
Prüfen Sie aktive und durch das Paket pausierte Ressourcen. Eigentümer können ihre bestehenden Plätze zuweisen; nur Admins ändern Zusatzfreigaben. Änderungen benötigen CSRF, die aktuelle Revision, eine passende einmalige Vorschau und ausdrückliche Bestätigung. Gespeicherte Konfigurationen und manuelle Pausen bleiben erhalten.
Auf dieser Seite Zugriff und Rechte Parameter und Header Anfragekörper Antworten Wiederholungen und asynchrone Aufträge Anfragebeispiele Verwandte Anleitungen Prüfen Sie aktive und durch das Paket pausierte Ressourcen. Eigentümer können ihre bestehenden Plätze zuweisen; nur Admins ändern Zusatzfreigaben. Änderungen benötigen CSRF, die aktuelle Revision, eine passende einmalige Vorschau und ausdrückliche Bestätigung. Gespeicherte Konfigurationen und manuelle Pausen bleiben erhalten.
Browsersitzung: Cookie __Host-mb_session.
Benötigte Maschinenberechtigungen (Scopes): config:write Senden Sie bei einer Änderung mit Browsersitzung das aktuelle CSRF-Token in X-CSRF-Token zusammen mit dem Same-Site-Cookie. OAuth-Zustimmung verwendet ihr dokumentiertes Formularfeld.
Feld Position Typ und Grenzen Erforderlich Bedeutung workspace_id URL-Parameter string; {"format":"uuid"} Nein Begrenzen Sie die Liste auf einen zugänglichen Arbeitsbereich.
Feld Typ und Grenzen Erforderlich Bedeutung $ PlanAccessEdit Ja — $.revision string Ja — $.selected array<string; {"format":"uuid"}>; {"maxItems":10000} Ja — $.selected[] string; {"format":"uuid"} Ja — $.grants object Nein — $.preview_id string; {"format":"uuid"} Nein — $.confirm boolean Nein —
200 · Erfolgreiche Antwort. Header Typ und Grenzen Bedeutung Cache-Control string; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"} Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation. Content-Language string; {"enum":["en","de"]} Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil. Referrer-Policy JSON; {"enum":["strict-origin-when-cross-origin","no-referrer"]} Standard-Referrerpolicy ist strict-origin-when-cross-origin. Anbieterloginantworten verwenden no-referrer zum Schutz der Loginparameter. Vary string Antworten variieren nach Accept-Language; browsergerenderte Antworten können zusätzlich nach Präferenzcookie variieren. X-Content-Type-Options JSON; {"const":"nosniff"} Der Browser muss den angegebenen Inhaltstyp verwenden. X-Frame-Options JSON; {"const":"DENY"} Die Antwort darf nicht in einem Frame eingebettet werden. X-Request-ID string Vom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.
application/json
Feld Typ und Grenzen Erforderlich Bedeutung $ PlanAccessView Ja — $.revision string Nein — $.entitlements AccountEntitlements Nein — $.entitlements.account_id string; {"format":"uuid"} Ja — $.entitlements.plan_id string; {"enum":["free","essentials","pro","business","enterprise"]} Ja — $.entitlements.revision integer Ja — $.entitlements.pending boolean Ja — $.entitlements.features object Ja — $.entitlements.grants object Nein — $.entitlements.usage object Ja — $.resources array<PlanResource> Nein — $.resources[] PlanResource Ja — $.resources[].id string Nein — $.resources[].name string Nein — $.resources[].kind string Nein — $.resources[].reason string Nein — $.resources[].selected boolean Nein — $.resources[].manual_pause boolean Nein — $.resources[].previous_interval integer; {"minimum":0} Nein — $.resources[].effective_interval integer; {"minimum":0} Nein — $.preview_id string; {"format":"uuid"} Nein —
401 · Anfrage abgewiesen. Prüfen Sie den stabilen Fehlercode. Stabile Fehlercodes invalid_credential unauthorized authentication_required
Header Typ und Grenzen Bedeutung Cache-Control string; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"} Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation. Content-Language string; {"enum":["en","de"]} Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil. Referrer-Policy JSON; {"enum":["strict-origin-when-cross-origin","no-referrer"]} Standard-Referrerpolicy ist strict-origin-when-cross-origin. Anbieterloginantworten verwenden no-referrer zum Schutz der Loginparameter. Vary string Antworten variieren nach Accept-Language; browsergerenderte Antworten können zusätzlich nach Präferenzcookie variieren. X-Content-Type-Options JSON; {"const":"nosniff"} Der Browser muss den angegebenen Inhaltstyp verwenden. X-Frame-Options JSON; {"const":"DENY"} Die Antwort darf nicht in einem Frame eingebettet werden. X-Request-ID string Vom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.
application/problem+json
Feld Typ und Grenzen Erforderlich Bedeutung $ Problem Ja — $.code string Ja Stabiler maschinenlesbarer Fehlercode $.detail string Ja Kurze lokalisierte Erklärung ohne interne Fehlerdaten $.instance string Ja Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource $.message string Ja Vorübergehend für bestehende Clients gleich detail $.message_key string Ja Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage $.message_params object; {"additionalProperties":true} Ja Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML $.request_id string; {"pattern":"^[0-9a-f]{32}$"} Ja Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. $.status integer; {"maximum":599,"minimum":400} Ja — $.title string Ja Lokalisierte HTTP-Statusbezeichnung $.type string; {"const":"about:blank"} Ja —
json Beispiel kopieren
{
"code" : "demo" ,
"detail" : "Demo error detail; inspect the documented code." ,
"instance" : "demo" ,
"message" : "Demo error detail; inspect the documented code." ,
"message_key" : "errors.requestFailed" ,
"message_params" : {},
"request_id" : "00000000000000000000000000000000" ,
"status" : 401,
"title" : "Demo error" ,
"type" : "about:blank"
} 403 · Anfrage abgewiesen. Prüfen Sie den stabilen Fehlercode. Stabile Fehlercodes csrf insufficient_scope invalid_origin owner_required csrf_failed forbidden plan_limit
Header Typ und Grenzen Bedeutung Cache-Control string; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"} Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation. Content-Language string; {"enum":["en","de"]} Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil. Referrer-Policy JSON; {"enum":["strict-origin-when-cross-origin","no-referrer"]} Standard-Referrerpolicy ist strict-origin-when-cross-origin. Anbieterloginantworten verwenden no-referrer zum Schutz der Loginparameter. Vary string Antworten variieren nach Accept-Language; browsergerenderte Antworten können zusätzlich nach Präferenzcookie variieren. X-Content-Type-Options JSON; {"const":"nosniff"} Der Browser muss den angegebenen Inhaltstyp verwenden. X-Frame-Options JSON; {"const":"DENY"} Die Antwort darf nicht in einem Frame eingebettet werden. X-Request-ID string Vom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.
application/problem+json
Feld Typ und Grenzen Erforderlich Bedeutung $ Problem Ja — $.code string Ja Stabiler maschinenlesbarer Fehlercode $.detail string Ja Kurze lokalisierte Erklärung ohne interne Fehlerdaten $.instance string Ja Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource $.message string Ja Vorübergehend für bestehende Clients gleich detail $.message_key string Ja Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage $.message_params object; {"additionalProperties":true} Ja Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML $.request_id string; {"pattern":"^[0-9a-f]{32}$"} Ja Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. $.status integer; {"maximum":599,"minimum":400} Ja — $.title string Ja Lokalisierte HTTP-Statusbezeichnung $.type string; {"const":"about:blank"} Ja —
json Beispiel kopieren
{
"code" : "demo" ,
"detail" : "Demo error detail; inspect the documented code." ,
"instance" : "demo" ,
"message" : "Demo error detail; inspect the documented code." ,
"message_key" : "errors.requestFailed" ,
"message_params" : {},
"request_id" : "00000000000000000000000000000000" ,
"status" : 403,
"title" : "Demo error" ,
"type" : "about:blank"
} 404 · Anfrage abgewiesen. Prüfen Sie den stabilen Fehlercode. Stabile Fehlercodes not_found
Header Typ und Grenzen Bedeutung Cache-Control string; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"} Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation. Content-Language string; {"enum":["en","de"]} Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil. Referrer-Policy JSON; {"enum":["strict-origin-when-cross-origin","no-referrer"]} Standard-Referrerpolicy ist strict-origin-when-cross-origin. Anbieterloginantworten verwenden no-referrer zum Schutz der Loginparameter. Vary string Antworten variieren nach Accept-Language; browsergerenderte Antworten können zusätzlich nach Präferenzcookie variieren. X-Content-Type-Options JSON; {"const":"nosniff"} Der Browser muss den angegebenen Inhaltstyp verwenden. X-Frame-Options JSON; {"const":"DENY"} Die Antwort darf nicht in einem Frame eingebettet werden. X-Request-ID string Vom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.
application/problem+json
Feld Typ und Grenzen Erforderlich Bedeutung $ Problem Ja — $.code string Ja Stabiler maschinenlesbarer Fehlercode $.detail string Ja Kurze lokalisierte Erklärung ohne interne Fehlerdaten $.instance string Ja Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource $.message string Ja Vorübergehend für bestehende Clients gleich detail $.message_key string Ja Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage $.message_params object; {"additionalProperties":true} Ja Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML $.request_id string; {"pattern":"^[0-9a-f]{32}$"} Ja Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. $.status integer; {"maximum":599,"minimum":400} Ja — $.title string Ja Lokalisierte HTTP-Statusbezeichnung $.type string; {"const":"about:blank"} Ja —
json Beispiel kopieren
{
"code" : "demo" ,
"detail" : "Demo error detail; inspect the documented code." ,
"instance" : "demo" ,
"message" : "Demo error detail; inspect the documented code." ,
"message_key" : "errors.requestFailed" ,
"message_params" : {},
"request_id" : "00000000000000000000000000000000" ,
"status" : 404,
"title" : "Demo error" ,
"type" : "about:blank"
} 503 · Anfrage abgewiesen. Prüfen Sie den stabilen Fehlercode. Stabile Fehlercodes unavailable feature_unavailable
Header Typ und Grenzen Bedeutung Cache-Control string; {"pattern":"(?:^|,\\s*)no-store(?:,|$)"} Private API-Antworten verbieten Speicherung. Öffentliche OAuth-Metadaten werden 300 Sekunden gecacht; Livestreams verbieten zusätzlich Transformation. Content-Language string; {"enum":["en","de"]} Sprache lesbarer Antworttexte aus Accept-Language oder der dokumentierten Browserpräferenz. Technische Codes und Kennungen bleiben stabil. Referrer-Policy JSON; {"enum":["strict-origin-when-cross-origin","no-referrer"]} Standard-Referrerpolicy ist strict-origin-when-cross-origin. Anbieterloginantworten verwenden no-referrer zum Schutz der Loginparameter. Retry-After string; {"pattern":"^[0-9]+$"} Sekunden bis zur Wiederholung. Bewahren Sie unterstützte Idempotenzkennungen und beachten Sie die Änderungsregeln der Operation. Vary string Antworten variieren nach Accept-Language; browsergerenderte Antworten können zusätzlich nach Präferenzcookie variieren. X-Content-Type-Options JSON; {"const":"nosniff"} Der Browser muss den angegebenen Inhaltstyp verwenden. X-Frame-Options JSON; {"const":"DENY"} Die Antwort darf nicht in einem Frame eingebettet werden. X-Request-ID string Vom Server erzeugte Anfragekennung. Bei Fehlermeldungen mitgeben; eingehende Werte werden nicht als vertrauenswürdig übernommen.
application/problem+json
Feld Typ und Grenzen Erforderlich Bedeutung $ Problem Ja — $.code string Ja Stabiler maschinenlesbarer Fehlercode $.detail string Ja Kurze lokalisierte Erklärung ohne interne Fehlerdaten $.instance string Ja Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource $.message string Ja Vorübergehend für bestehende Clients gleich detail $.message_key string Ja Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage $.message_params object; {"additionalProperties":true} Ja Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML $.request_id string; {"pattern":"^[0-9a-f]{32}$"} Ja Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. $.status integer; {"maximum":599,"minimum":400} Ja — $.title string Ja Lokalisierte HTTP-Statusbezeichnung $.type string; {"const":"about:blank"} Ja —
json Beispiel kopieren
{
"code" : "demo" ,
"detail" : "Demo error detail; inspect the documented code." ,
"instance" : "demo" ,
"message" : "Demo error detail; inspect the documented code." ,
"message_key" : "errors.requestFailed" ,
"message_params" : {},
"request_id" : "00000000000000000000000000000000" ,
"status" : 503,
"title" : "Demo error" ,
"type" : "about:blank"
} 409 · Die Anfrage kann nicht ausgeführt werden. Den stabilen Fehlercode beachten. Stabile Fehlercodes preview_required plan_changed
application/problem+json
Feld Typ und Grenzen Erforderlich Bedeutung $ Problem Ja — $.code string Ja Stabiler maschinenlesbarer Fehlercode $.detail string Ja Kurze lokalisierte Erklärung ohne interne Fehlerdaten $.instance string Ja Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource $.message string Ja Vorübergehend für bestehende Clients gleich detail $.message_key string Ja Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage $.message_params object; {"additionalProperties":true} Ja Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML $.request_id string; {"pattern":"^[0-9a-f]{32}$"} Ja Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. $.status integer; {"maximum":599,"minimum":400} Ja — $.title string Ja Lokalisierte HTTP-Statusbezeichnung $.type string; {"const":"about:blank"} Ja —
422 · Die Anfrage kann nicht ausgeführt werden. Den stabilen Fehlercode beachten. Stabile Fehlercodes invalid_plan_access
application/problem+json
Feld Typ und Grenzen Erforderlich Bedeutung $ Problem Ja — $.code string Ja Stabiler maschinenlesbarer Fehlercode $.detail string Ja Kurze lokalisierte Erklärung ohne interne Fehlerdaten $.instance string Ja Einmalige relative Kennung /api/v1/requests/{request_id}; keine abrufbare Ressource $.message string Ja Vorübergehend für bestehende Clients gleich detail $.message_key string Ja Stabiler Übersetzungsschlüssel für einen Sprachwechsel der Anzeige ohne neue Anfrage $.message_params object; {"additionalProperties":true} Ja Benannte, sicher ausgegebene Meldungsparameter; kein beliebiges HTML $.request_id string; {"pattern":"^[0-9a-f]{32}$"} Ja Vom Server erzeugte Diagnosekennung. Enthält kein Logintoken und keine Zugangsdaten. $.status integer; {"maximum":599,"minimum":400} Ja — $.title string Ja Lokalisierte HTTP-Statusbezeichnung $.type string; {"const":"about:blank"} Ja —
Für diese Änderung gibt es keine allgemeine Wiederholungsgarantie. Prüfen Sie bei unklarer Antwort den betroffenen Eintrag, bevor Sie es erneut versuchen. Beachten Sie Wartezeiten aus Retry-After und fordern Sie abgelaufene Anmelde- oder Aktionscodes neu an.
Ersetzen Sie Demokennungen, Zeitstempel und Platzhalter durch eigene Werte. Behalten Sie bei Wiederholungen Kennungen, Zeit und Inhalt bei. Diese Beispiele führen auf der Seite keine Anfragen aus.
Halten Sie Anmeldelinks, Codes, Cookies und Schlüssel privat. Schreiben Sie sie nicht in Logs und teilen Sie sie nicht in Hilfeanfragen.
shell Beispiel kopieren
curl --proto "=https" --tlsv1.2 --fail- with -body --max-time 30 --request POST --header @ "$HOME/.config/metribeacon/headers.txt" --header "Content-Type: application/json" --data-binary '{"revision":"CURRENT_REVISION","selected":[],"grants":{}}' "https://metribeacon.com/api/v1/account/entitlements/resources/preview"
python Beispiel kopieren
import json
from pathlib import Path
from urllib.request import Request, urlopen
headers=json.loads((Path.home()/ ".config/metribeacon/headers.json" ).read_text())
headers[ "Content-Type" ]= "application/json"
data=json.dumps({ 'revision' : 'CURRENT_REVISION' , 'selected' : [], 'grants' : {}}).encode()
request=Request( 'https://metribeacon.com/api/v1/account/entitlements/resources/preview' ,data=data,headers=headers,method= 'POST' )
with urlopen(request,timeout=10) as response:
print(response.status)
javascript Beispiel kopieren
import {readFile} from "node:fs/promises" ;
import {homedir} from "node:os" ;
import {join} from "node:path" ;
const headers=JSON.parse(await readFile(join(homedir(), ".config/metribeacon/headers.json" ), "utf8" ));
headers[ "Content-Type" ]= "application/json" ;
const response=await fetch( "https://metribeacon.com/api/v1/account/entitlements/resources/preview" ,{method: "POST" ,headers,redirect: "manual" ,signal:AbortSignal.timeout(10000),body:JSON.stringify({ "revision" : "CURRENT_REVISION" , "selected" :[], "grants" :{}})});
console.log(response.status);
await response.body?.cancel();
go Beispiel kopieren
package main
import ( "encoding/json" ; "fmt" ; "net/http" ; "os" ; "path/filepath" ; "time" ; "strings" )
func main(){
home,err:=os.UserHomeDir(); if err!=nil{panic( "local credentials unavailable" )}
raw,err:=os.ReadFile(filepath.Join(home, ".config/metribeacon/headers.json" )); if err!=nil{panic( "local credentials unavailable" )}
var headers map[string]string; if json.Unmarshal(raw,&headers)!=nil{panic( "invalid local headers" )}
req,err:=http.NewRequest( "POST" , "https://metribeacon.com/api/v1/account/entitlements/resources/preview" ,strings.NewReader(`{ "revision" : "CURRENT_REVISION" , "selected" :[], "grants" :{}}`)); if err!=nil{panic( "request setup failed" )}
for key,value:=range headers{req.Header.Set(key,value)}
req.Header.Set( "Content-Type" , "application/json" )
client:=&http.Client{Timeout:10*time.Second,CheckRedirect: func (*http.Request,[]*http.Request)error{ return http.ErrUseLastResponse}}
response,err:=client.Do(req); if err!=nil{panic( "request failed" )}; defer response.Body.Close();fmt.Println(response.StatusCode)
}
Verwandte Anleitungen HTTP-API, OAuth und MCP Finden Sie die Nutzer-API-Endpunkte mit Rechten, Feldern, Beispielen und Antwortformaten.
GET PaketePrüfen Sie aktive und durch das Paket pausierte Ressourcen. Eigentümer können ihre bestehenden Plätze zuweisen; nur Admins ändern Zusatzfreigaben. Änderungen benötigen CSRF, die aktuelle Revision, eine passende einmalige Vorschau und ausdrückliche Bestätigung. Gespeicherte Konfigurationen und manuelle Pausen bleiben erhalten.
PATCH PaketePrüfen Sie aktive und durch das Paket pausierte Ressourcen. Eigentümer können ihre bestehenden Plätze zuweisen; nur Admins ändern Zusatzfreigaben. Änderungen benötigen CSRF, die aktuelle Revision, eine passende einmalige Vorschau und ausdrückliche Bestätigung. Gespeicherte Konfigurationen und manuelle Pausen bleiben erhalten.
GET PaketeLesen Sie das wirksame Paket des Eigentümerkontos, ausdrückliche Adminfreigaben und den Verbrauch des aktuellen UTC-Kalendermonats. Eine Workspace-Mitgliedschaft überträgt das persönliche Paket nicht. Laufende Übernahmen gewähren keine veralteten Freigaben. plan_required und plan_limit benennen die gesperrte Funktion sowie gegebenenfalls Grenze und Verbrauch.