POST Vorlage atomar im eigenen Arbeitsbereich anwenden
/api/v1/templates/apply
Wendet eine Vorlage atomar innerhalb der Kontogrenzen an. Server/NAS v2 reserviert Monitor, Reihen und ausgewählte Alarmplätze und liefert einen fortsetzbaren Auftrag; andere Vorlagen werden sofort angewendet. Wiederholte normalisierte Anfragen liefern den vorhandenen Monitor.
Auf dieser Seite
Zugriff und Rechte
Wendet eine Vorlage atomar innerhalb der Kontogrenzen an. Server/NAS v2 reserviert Monitor, Reihen und ausgewählte Alarmplätze und liefert einen fortsetzbaren Auftrag; andere Vorlagen werden sofort angewendet. Wiederholte normalisierte Anfragen liefern den vorhandenen Monitor.
Browsersitzung: Cookie __Host-mb_session.
Maschinen-Verwaltungszugang in Authorization: Bearer. Beachten Sie die von der Operation benötigten Berechtigungen (Scopes).
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.
Parameter und Header
| Feld | Position | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|---|
| Origin | Header | string; {"format":"uri"} | Nein | Muss, falls vorhanden, dem kanonischen HTTPS-Origin entsprechen. Sec-Fetch-Site cross-site wird abgewiesen. |
| X-CSRF-Token | Header | string | Nein | Wert des Browser-CSRF-Cookies. Bei einem zulässigen Maschinen-Verwaltungszugang nicht erforderlich. |
Anfragekörper
| Feld | Typ und Grenzen | Erforderlich | Bedeutung |
|---|---|---|---|
| $ | TemplateRequest | Ja | — |
| $.activate_alarms | array<TemplateAlarmActivation>; {"maxItems":200} | Nein | Optional; nur ausdrücklich gewählte Vorschläge mit vollständigen Bedingungen werden atomar angelegt. Der Vorschlag run überwacht fehlgeschlagene, abgebrochene, überlange und ausgebliebene Läufe gemeinsam. |
| $.activate_alarms[] | TemplateAlarmActivation | Ja | — |
| $.activate_alarms[].clear | AlarmCondition | Nein | — |
| $.activate_alarms[].clear.operator | string; {"enum":["gt","lt","eq","ne","outside","inside"]} | Ja | — |
| $.activate_alarms[].clear.value | number | Ja | — |
| $.activate_alarms[].clear.value_high | number | Nein | Pflicht bei inside und outside; muss größer als value sein |
| $.activate_alarms[].clear (allOf 1) | JSON | Nein | — |
| $.activate_alarms[].clear_duration_seconds | integer; {"maximum":86400,"minimum":0} | Nein | — |
| $.activate_alarms[].kind | string; {"enum":["numeric","state","no_data","heartbeat","run"]} | Ja | Muss genau einmal zu einem Vorschlag der gewählten Vorlagenversion passen. |
| $.activate_alarms[].name | string; {"maxLength":128,"minLength":1} | Ja | Lesbarer Ressourcenname. Beachten Sie die angegebene Längengrenze. |
| $.activate_alarms[].no_data_seconds | integer; {"maximum":604800,"minimum":30} | Nein | — |
| $.activate_alarms[].severity | string; {"enum":["info","warning","critical"]} | Ja | Schweregrad aus dem angegebenen Wertebereich. |
| $.activate_alarms[].state_clear_samples | integer; {"default":2,"maximum":2,"minimum":1} | Nein | Anzahl verschiedener gültiger aufeinanderfolgender Prüfungen für diesen Zustandswechsel. |
| $.activate_alarms[].state_trigger_samples | integer; {"default":2,"maximum":2,"minimum":1} | Nein | Anzahl verschiedener gültiger aufeinanderfolgender Prüfungen für diesen Zustandswechsel. |
| $.activate_alarms[].suggestion_id | string; {"maxLength":256} | Ja | Stabile Vorschlagskennung der aktuellen Vorlage oder des Serverprofils; mehrere Regeln können dieselbe Art besitzen. |
| $.activate_alarms[].target_state | string; {"maxLength":128} | Nein | — |
| $.activate_alarms[].trigger | AlarmCondition | Nein | — |
| $.activate_alarms[].trigger.operator | string; {"enum":["gt","lt","eq","ne","outside","inside"]} | Ja | — |
| $.activate_alarms[].trigger.value | number | Ja | — |
| $.activate_alarms[].trigger.value_high | number | Nein | Pflicht bei inside und outside; muss größer als value sein |
| $.activate_alarms[].trigger (allOf 1) | JSON | Nein | — |
| $.activate_alarms[].trigger_duration_seconds | integer; {"maximum":86400,"minimum":0} | Nein | — |
| $.config | object | Nein | Für website_api sind url und ein bis fünf autorisierte location_ids erforderlich; für backup_cron sind cron und timezone erforderlich. HTTP-Konfiguration verwendet HTTPMonitorConfig. |
| $.external_id | string; {"maxLength":128,"minLength":1} | Ja | Stabile eigene Kennung für idempotente Wiederholung; Änderungen an der ursprünglichen Anfrage ergeben 409. |
| $.name | string; {"maxLength":128,"minLength":1} | Ja | Lesbarer Ressourcenname. Beachten Sie die angegebene Längengrenze. |
| $.paused | boolean; {"default":false} | Nein | Ob automatische Monitorarbeit pausiert ist. Vorhandene Messdaten und Historien bleiben erhalten. |
| $.server_profile | ServerProfileRequest | Nein | — |
| $.server_profile.components | array<object>; {"maxItems":200} | null | Nein | Erkannte oder ausdrücklich ausgewählte Serverkomponenten. |
| $.server_profile.components (anyOf 1) | array<object>; {"maxItems":200} | Nein | — |
| $.server_profile.components (anyOf 1)[] | object | Ja | — |
| $.server_profile.components (anyOf 1)[].address | string | Nein | — |
| $.server_profile.components (anyOf 1)[].family | string | Nein | — |
| $.server_profile.components (anyOf 1)[].id | string | Ja | UUID dieser Ressource. Bewahren Sie die zurückgegebene Kennung für weitere Operationen auf. |
| $.server_profile.components (anyOf 1)[].kind | string | Ja | Ressourcenart oder Messwerttyp aus den angegebenen Werten. |
| $.server_profile.components (anyOf 1)[].label | string; {"maxLength":128,"minLength":1} | Ja | Anzeigename der Komponente. |
| $.server_profile.components (anyOf 1)[].local_ref | string | Nein | — |
| $.server_profile.components (anyOf 1)[].name | string | Nein | Lesbarer Ressourcenname. Beachten Sie die angegebene Längengrenze. |
| $.server_profile.components (anyOf 1)[].path | string; {"maxLength":1024} | Nein | — |
| $.server_profile.components (anyOf 1)[].port | integer | Nein | — |
| $.server_profile.components (anyOf 1)[].project | string | Nein | — |
| $.server_profile.components (anyOf 1)[].protocol | string | Nein | — |
| $.server_profile.components (anyOf 1)[].text_languages | object | Nein | — |
| $.server_profile.components (anyOf 1)[].timeout_seconds | integer | Nein | — |
| $.server_profile.components (anyOf 1)[].translations | object; {"additionalProperties":false} | Nein | — |
| $.server_profile.components (anyOf 1)[].translations.de | object | Nein | — |
| $.server_profile.components (anyOf 1)[].translations.en | object | Nein | — |
| $.server_profile.components (anyOf 1)[].transport | string | Nein | — |
| $.server_profile.components (anyOf 1)[].filesystem_identity | string; {"maxLength":256} | Nein | Vom Agenten gemeldete Volumeidentität. Unverändert beibehalten, damit ein Ersatzvolume nicht die Historie eines anderen Volumes fortsetzt. |
| $.server_profile.components (anyOf 1)[].disk_identity | string; {"maxLength":256} | Nein | — |
| $.server_profile.components (anyOf 2) | null | Nein | — |
| $.server_profile.selections | array<object>; {"maxItems":200} | null | Nein | Gewählte Komponenten-/Parameterpaare mit Abtastintervallen. |
| $.server_profile.selections (anyOf 1) | array<object>; {"maxItems":200} | Nein | — |
| $.server_profile.selections (anyOf 1)[] | object | Ja | — |
| $.server_profile.selections (anyOf 1)[].component_id | string | Ja | Stabile Kennung der gewählten oder erkannten Komponente. |
| $.server_profile.selections (anyOf 1)[].interval_seconds | integer; {"maximum":86400,"minimum":0} | Nein | Abtast- oder Prüfintervall in Sekunden innerhalb der angegebenen Grenzen. |
| $.server_profile.selections (anyOf 1)[].parameter_key | string | Ja | Stabile Parameterkennung aus dem Serverkatalog. |
| $.server_profile.selections (anyOf 2) | null | Nein | — |
| $.server_profile.version | JSON; {"const":2} | Ja | — |
| $.server_profile.overview | object; {"additionalProperties":false} | Nein | Ausdrückliche Ziele für die Serverübersicht mit sechs Diagrammen; wählen Sie alle benötigten Messwerte aus. |
| $.server_profile.overview.system_id | string; {"maxLength":128} | Ja | — |
| $.server_profile.overview.filesystem_id | string; {"maxLength":128} | Ja | — |
| $.server_profile.overview.disk_id | string; {"maxLength":128} | Ja | — |
| $.server_profile.overview.network_id | string; {"maxLength":128} | Ja | — |
| $.server_profile.filesystem_discovery | object; {"additionalProperties":false} | Nein | Optionale Erkennung lokaler Dateisysteme mit einem Grundintervall von mindestens 10 Sekunden. Neue Server/NAS-Einrichtungen aktivieren sie. Bestehende Profile benötigen eine ausdrückliche Aktivierung. Manuell deaktivierte Messreihen bleiben erhalten. |
| $.server_profile.filesystem_discovery.mode | string; {"enum":["off","local"]} | Ja | — |
| $.server_profile.filesystem_discovery.interval_seconds | integer; {"minimum":10,"maximum":86400} | Ja | — |
| $.server_profile.system_discovery | object; {"additionalProperties":false} | Nein | — |
| $.server_profile.system_discovery.mode | string; {"enum":["off","local"]} | Ja | — |
| $.server_profile.system_discovery.interval_seconds | integer; {"minimum":10,"maximum":86400} | Ja | — |
| $.server_profile.global_interval_seconds | integer; {"minimum":1,"maximum":86400} | Nein | Ausdrückliche globale Intervallauswahl. Jede Quelle behält ihr Plattformminimum; einzelne schnelle Reihen gelten nicht als globale Auswahl. |
| $.template_id | string; {"enum":["server_nas","website_api","backup_cron","workflow_agent","sensor_energy","application_kpi","custom_data","tcp_port","udp_reply","dns_records","tls_certificate","host_ping","service_health","browser_journey"]} | Ja | — |
| $.version | integer; {"enum":[1,2]} | Ja | Server/NAS verwendet Version 2; alle anderen Vorlagen verwenden Version 1. |
| $.workspace_id | string; {"format":"uuid"} | Ja | UUID des zugehörigen Arbeitsbereichs. Zugriff wird gegen das angemeldete Konto geprüft. |
| $ (allOf 1) | JSON | Nein | — |
| $ (allOf 2) | JSON | Nein | — |
Antworten
| 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 |
|---|---|---|---|
| $ | object | Ja | — |
| $.alarm_ids | object | Nein | — |
| $.alarm_suggestions | array<object> | Nein | — |
| $.alarm_suggestions[] | object | Ja | — |
| $.alarm_suggestions[].kind | string | Ja | Ressourcenart oder Messwerttyp aus den angegebenen Werten. |
| $.alarm_suggestions[].series_key | string | Nein | — |
| $.alarm_suggestions[].summary | string | Ja | — |
| $.alarm_suggestions[].summary_key | string | Ja | — |
| $.alarms_activated | boolean | Nein | — |
| $.monitor_id | string | Nein | UUID des betroffenen Monitors. |
| $.replayed | boolean | Nein | — |
| $.series_ids | object | Nein | — |
| $.template_id | string | Nein | — |
| $.template_version | integer | Nein | — |
| $.widget_suggestions | array<object> | Nein | — |
| $.widget_suggestions[] | object | Ja | — |
| $.widget_suggestions[].kind | string | Ja | Ressourcenart oder Messwerttyp aus den angegebenen Werten. |
| $.widget_suggestions[].series_id | string | Ja | UUID der Messreihe des freigegebenen Geräts. |
| $.widget_suggestions[].title | string | Ja | Kurze lesbare Bezeichnung der Antwort oder des Widgets. |
| $.widget_suggestions[].title_key | string | Ja | — |
| $.config_revision | integer; {"minimum":1} | Nein | — |
{}| 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 |
|---|---|---|---|
| $ | object | Ja | — |
| $.alarm_ids | object | Nein | — |
| $.alarm_suggestions | array<object> | Nein | — |
| $.alarm_suggestions[] | object | Ja | — |
| $.alarm_suggestions[].kind | string | Ja | Ressourcenart oder Messwerttyp aus den angegebenen Werten. |
| $.alarm_suggestions[].series_key | string | Nein | — |
| $.alarm_suggestions[].summary | string | Ja | — |
| $.alarm_suggestions[].summary_key | string | Ja | — |
| $.alarms_activated | boolean | Nein | — |
| $.monitor_id | string | Nein | UUID des betroffenen Monitors. |
| $.replayed | boolean | Nein | — |
| $.series_ids | object | Nein | — |
| $.template_id | string | Nein | — |
| $.template_version | integer | Nein | — |
| $.widget_suggestions | array<object> | Nein | — |
| $.widget_suggestions[] | object | Ja | — |
| $.widget_suggestions[].kind | string | Ja | Ressourcenart oder Messwerttyp aus den angegebenen Werten. |
| $.widget_suggestions[].series_id | string | Ja | UUID der Messreihe des freigegebenen Geräts. |
| $.widget_suggestions[].title | string | Ja | Kurze lesbare Bezeichnung der Antwort oder des Widgets. |
| $.widget_suggestions[].title_key | string | Ja | — |
| $.pending_alarms | array<string; {"maxLength":128}> | Nein | — |
| $.pending_alarms[] | string; {"maxLength":128} | Ja | — |
| $.config_revision | integer; {"minimum":1} | Nein | — |
{}| Stabile Fehlercodes |
|---|
| invalid_credential |
| unauthorized |
| 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 | — |
{
"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"
}| Stabile Fehlercodes |
|---|
| csrf |
| insufficient_scope |
| invalid_origin |
| 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 | — |
{
"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"
}| 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 | — |
{
"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"
}| Stabile Fehlercodes |
|---|
| external_id_conflict |
| 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 | — |
{
"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": 409,
"title": "Demo error",
"type": "about:blank"
}| Stabile Fehlercodes |
|---|
| invalid_payload |
| 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 | — |
{
"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": 422,
"title": "Demo error",
"type": "about:blank"
}| Stabile Fehlercodes |
|---|
| quota_exceeded |
| 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 | — |
{
"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": 429,
"title": "Demo error",
"type": "about:blank"
}| Stabile Fehlercodes |
|---|
| feature_unavailable |
| 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 | — |
{
"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"
}Wiederholungen und asynchrone Aufträge
Behalten Sie die dokumentierten Kennungen bei Wiederholungen. Ersetzen Sie sie nach einer unklaren Antwort nicht durch neue Kennungen, die eine weitere Ressource oder Messung erzeugen könnten.
Anfragebeispiele
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.
curl --silent --show-error --output /dev/null --write-out "%{http_code}\n" \
--request POST \
--header @"$HOME/.config/metribeacon/headers.txt" \
--header "Content-Type: application/json" \
--data-binary '{"external_id":"demo","name":"demo","template_id":"server_nas","version":2,"workspace_id":"00000000-0000-4000-8000-000000000001"}' \
"https://metribeacon.com/api/v1/templates/apply"
import json
from pathlib import Path
from urllib.request import Request, HTTPRedirectHandler, build_opener
from urllib.error import HTTPError
headers = json.loads((Path.home() / ".config/metribeacon/headers.json").read_text())
headers["Content-Type"] = "application/json"
request = Request("https://metribeacon.com/api/v1/templates/apply", data="{\"external_id\":\"demo\",\"name\":\"demo\",\"template_id\":\"server_nas\",\"version\":1,\"workspace_id\":\"00000000-0000-4000-8000-000000000001\"}".encode("utf-8"), headers=headers, method="POST")
class NoRedirect(HTTPRedirectHandler):
def redirect_request(self, request, fp, code, message, headers, target):
return None
opener = build_opener(NoRedirect())
try:
with opener.open(request, timeout=10) as response:
print(response.status)
except HTTPError as error:
print(error.code)
error.close()
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/templates/apply", {
method: "POST", headers, redirect: "manual",
signal: AbortSignal.timeout(10000), body: "{\"external_id\":\"demo\",\"name\":\"demo\",\"template_id\":\"server_nas\",\"version\":1,\"workspace_id\":\"00000000-0000-4000-8000-000000000001\"}",
});
console.log(response.status);
await response.body?.cancel();
package main
import (
"fmt"
"net/http"
"time"
"encoding/json"
"os"
"path/filepath"
"strings"
)
func main() {
home, err := os.UserHomeDir(); if err != nil { panic("request failed; credentials and response omitted") }
raw, err := os.ReadFile(filepath.Join(home, ".config/metribeacon/headers.json")); if err != nil { panic("request failed; credentials and response omitted") }
var headers map[string]string
if json.Unmarshal(raw, &headers) != nil { panic("invalid local headers") }
request, err := http.NewRequest("POST", "https://metribeacon.com/api/v1/templates/apply", strings.NewReader("{\"external_id\":\"demo\",\"name\":\"demo\",\"template_id\":\"server_nas\",\"version\":1,\"workspace_id\":\"00000000-0000-4000-8000-000000000001\"}"))
if err != nil { panic("request failed; credentials and response omitted") }
for name, value := range headers { request.Header.Set(name, value) }
request.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(request)
if err != nil { panic("request failed; credentials and response omitted") }
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 Versionierten Vorlagenkatalog lesen
Vorschläge aktivieren Alarme nicht automatisch. HTTP- und Laufvorlagen benötigen außerdem die jeweiligen Funktionsfreigaben.
- POST Vorlagenkapazität ohne Reservierung prüfen
Prüfen Sie Ressourcen und Platzbedarf einer Vorlage, ohne sie anzulegen. Eine Vorschau reserviert keine Plätze; apply prüft den verfügbaren Platz erneut.
- POST Vorlage ohne Ressourcenänderung prüfen
Prüft Syntax, Version, Konfiguration und Alarmauswahl ohne Ressourcen zu reservieren. Eigentum und Kapazität werden bei plan und apply geprüft.