Die Suche lädt erst bei Nutzung. Durchsuche unten alle Kategorien.

Analysen und Insights

Eine Version einer privaten Berichtsvorlage lesen

Eine Version einer privaten Berichtsvorlage lesen. Verwendet den ausdrücklich geprüften Datensatz und die festgelegte Version; die Quelle wird nicht automatisch aktualisiert. Render-Eingaben können per Pipe an sosoapi report render --output FILE übergeben werden.

POST /analytics-api/reporting/templates/get

Vertrag geprüft: · sha256:d6e85a113e8fb367

Überblick

Eine Version einer privaten Berichtsvorlage lesen. Verwendet den ausdrücklich geprüften Datensatz und die festgelegte Version; die Quelle wird nicht automatisch aktualisiert. Render-Eingaben können per Pipe an sosoapi report render --output FILE übergeben werden.

Eine erfolgreiche HTTP-Antwort kann Annahme statt Abschluss bedeuten. Speichere bei Hintergrundarbeit die ID und prüfe dieselbe Operation bis zum Abschluss. Geplante oder angenommene Beiträge gelten erst nach Plattformbestätigung als veröffentlicht; ein Client-Timeout klärt das Ergebnis nicht.

Authentifizierung und Berechtigungen

Akzeptierte Zugangsdatenklassen
user_session, delegated_oauth, personal_access_token
Delegierte Funktion
agent:operate
Minimale Workspace-Rolle
viewer
Zugriffsumfang
Ressourcen, auf die dieser Nutzer zugreifen darf
Zustimmung für alle Workspaces erforderlich
Nein
Ändert Zustand
Nein
Nach Abschluss der Operation
synchronous_http_response

Ein Token nutzt nur Eigentümerrechte. Jede Anfrage prüft Workspace-Mitgliedschaft, Ressourceneigentum, gewählte Workspaces und Funktionen. core und full ändern sichtbare Tools; sie erteilen keinen Zugriff.

Anfragefelder

Erforderlich bedeutet innerhalb des übergeordneten Objekts und gewählten Zweigs erforderlich. Ein erforderliches Kind macht kein optionales Elternobjekt erforderlich. Regeln und Feldnamen unten stammen aus dem Vertrag.

Anfragefelder
Feld / VarianteTyp / erforderlichEinschränkungen
$objectIm Elternobjekt erforderlich
  • additionalProperties: false
workspace_idstringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
idstringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
versionintegerIm Elternobjekt erforderlich
  • minimum: 1
  • maximum: 1000000
Vollständiges JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "workspace_id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "version": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000000
    }
  },
  "required": [
    "workspace_id",
    "id",
    "version"
  ],
  "additionalProperties": false
}

Antwort und Abschluss

HTTP-Erfolgsstatus: 200. Wenn die Operation abgeschlossen ist: synchronous_http_response.

Eine erfolgreiche HTTP-Antwort kann Annahme statt Abschluss bedeuten. Speichere bei Hintergrundarbeit die ID und prüfe dieselbe Operation bis zum Abschluss. Geplante oder angenommene Beiträge gelten erst nach Plattformbestätigung als veröffentlicht; ein Client-Timeout klärt das Ergebnis nicht.

Erforderlich bedeutet innerhalb des übergeordneten Objekts und gewählten Zweigs erforderlich. Ein erforderliches Kind macht kein optionales Elternobjekt erforderlich. Regeln und Feldnamen unten stammen aus dem Vertrag.

Antwort und Abschluss
Feld / VarianteTyp / erforderlichEinschränkungen
$objectIm Elternobjekt erforderlich—
contractVersionstringIm Elternobjekt erforderlich
  • const: "analytics-template/v1"
workspaceIdstringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
idstringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
versionintegerIm Elternobjekt erforderlich
  • minimum: 1
  • maximum: 1000000
namestringIm Elternobjekt erforderlich
  • minLength: 1
  • maxLength: 100
formatstringIm Elternobjekt erforderlich
  • enum: ["pptx","docx","xlsx"]
sourceBase64stringIm Elternobjekt erforderlich
  • maxLength: 12582912
  • pattern: "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"
sourceSha256stringIm Elternobjekt erforderlich
  • pattern: "^[a-f0-9]{64}$"
mappingsobjectIm Elternobjekt erforderlich
  • additionalProperties: {"oneOf":[{"type":"object","properties":{"kind":{"type":"string","const":"text"},"value":{"type":"string","maxLength":2000}},"required":["kind","value"]},{"type":"object","properties":{"kind":{"type":"string","const":"selection"},"field":{"type":"string","enum":["accounts","period","timezone","platforms","dataset","reviewed","coverage"]}},"required":["kind","field"]},{"type":"object","properties":{"kind":{"type":"string","const":"metric"},"platform":{"type":"string","enum":["facebook","instagram","threads","youtube"]},"key":{"type":"string","minLength":1,"maxLength":150},"unit":{"type":"string","minLength":1,"maxLength":100},"grain":{"type":"string","enum":["post","account"]},"measurementKind":{"type":"string","enum":["lifetime","snapshot","period","unknown"]},"accountId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"providerResourceId":{"anyOf":[{"type":"string","minLength":1,"maxLength":512},{"type":"null"}]},"sourcePath":{"type":"string","maxLength":2000},"requestId":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]}},"required":["kind","platform","key","unit","grain","measurementKind"]},{"type":"object","properties":{"kind":{"type":"string","const":"formula"},"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","minimum":1,"maximum":1000000}},"required":["kind","id","version"]},{"type":"object","properties":{"kind":{"type":"string","const":"table"},"source":{"type":"string","enum":["measurements","formulas"]},"limit":{"type":"integer","minimum":1,"maximum":100}},"required":["kind","source","limit"]},{"type":"object","properties":{"kind":{"type":"string","const":"chart"},"source":{"type":"string","const":"publication_by_platform"}},"required":["kind","source"]}]}
mappings.*objectOptional / Element—
mappings.*oneOf 1objectOptional / Element—
mappings.*.kindoneOf 1stringIm Elternobjekt erforderlich
  • const: "text"
mappings.*.valueoneOf 1stringIm Elternobjekt erforderlich
  • maxLength: 2000
mappings.*oneOf 2objectOptional / Element—
mappings.*.kindoneOf 2stringIm Elternobjekt erforderlich
  • const: "selection"
mappings.*.fieldoneOf 2stringIm Elternobjekt erforderlich
  • enum: ["accounts","period","timezone","platforms","dataset","reviewed","coverage"]
mappings.*oneOf 3objectOptional / Element—
mappings.*.kindoneOf 3stringIm Elternobjekt erforderlich
  • const: "metric"
mappings.*.platformoneOf 3stringIm Elternobjekt erforderlich
  • enum: ["facebook","instagram","threads","youtube"]
mappings.*.keyoneOf 3stringIm Elternobjekt erforderlich
  • minLength: 1
  • maxLength: 150
mappings.*.unitoneOf 3stringIm Elternobjekt erforderlich
  • minLength: 1
  • maxLength: 100
mappings.*.grainoneOf 3stringIm Elternobjekt erforderlich
  • enum: ["post","account"]
mappings.*.measurementKindoneOf 3stringIm Elternobjekt erforderlich
  • enum: ["lifetime","snapshot","period","unknown"]
mappings.*.accountIdoneOf 3stringOptional / Element
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
mappings.*.providerResourceIdoneOf 3string | nullOptional / Element—
mappings.*.providerResourceIdoneOf 3 / anyOf 1stringOptional / Element
  • minLength: 1
  • maxLength: 512
mappings.*.providerResourceIdoneOf 3 / anyOf 2nullOptional / Element—
mappings.*.sourcePathoneOf 3stringOptional / Element
  • maxLength: 2000
mappings.*.requestIdoneOf 3string | nullOptional / Element—
mappings.*.requestIdoneOf 3 / anyOf 1stringOptional / Element
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
mappings.*.requestIdoneOf 3 / anyOf 2nullOptional / Element—
mappings.*oneOf 4objectOptional / Element—
mappings.*.kindoneOf 4stringIm Elternobjekt erforderlich
  • const: "formula"
mappings.*.idoneOf 4stringIm Elternobjekt erforderlich
  • format: "uuid"
  • pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
mappings.*.versiononeOf 4integerIm Elternobjekt erforderlich
  • minimum: 1
  • maximum: 1000000
mappings.*oneOf 5objectOptional / Element—
mappings.*.kindoneOf 5stringIm Elternobjekt erforderlich
  • const: "table"
mappings.*.sourceoneOf 5stringIm Elternobjekt erforderlich
  • enum: ["measurements","formulas"]
mappings.*.limitoneOf 5integerIm Elternobjekt erforderlich
  • minimum: 1
  • maximum: 100
mappings.*oneOf 6objectOptional / Element—
mappings.*.kindoneOf 6stringIm Elternobjekt erforderlich
  • const: "chart"
mappings.*.sourceoneOf 6stringIm Elternobjekt erforderlich
  • const: "publication_by_platform"
createdAtstringIm Elternobjekt erforderlich
  • format: "date-time"
  • pattern: "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
Vollständiges JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contractVersion": {
      "type": "string",
      "const": "analytics-template/v1"
    },
    "workspaceId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "id": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "version": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000000
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "format": {
      "type": "string",
      "enum": [
        "pptx",
        "docx",
        "xlsx"
      ]
    },
    "sourceBase64": {
      "type": "string",
      "maxLength": 12582912,
      "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"
    },
    "sourceSha256": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "mappings": {
      "type": "object",
      "propertyNames": {
        "type": "string",
        "pattern": "^[A-Za-z][A-Za-z0-9_.-]{0,63}$"
      },
      "additionalProperties": {
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "text"
              },
              "value": {
                "type": "string",
                "maxLength": 2000
              }
            },
            "required": [
              "kind",
              "value"
            ]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "selection"
              },
              "field": {
                "type": "string",
                "enum": [
                  "accounts",
                  "period",
                  "timezone",
                  "platforms",
                  "dataset",
                  "reviewed",
                  "coverage"
                ]
              }
            },
            "required": [
              "kind",
              "field"
            ]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "metric"
              },
              "platform": {
                "type": "string",
                "enum": [
                  "facebook",
                  "instagram",
                  "threads",
                  "youtube"
                ]
              },
              "key": {
                "type": "string",
                "minLength": 1,
                "maxLength": 150
              },
              "unit": {
                "type": "string",
                "minLength": 1,
                "maxLength": 100
              },
              "grain": {
                "type": "string",
                "enum": [
                  "post",
                  "account"
                ]
              },
              "measurementKind": {
                "type": "string",
                "enum": [
                  "lifetime",
                  "snapshot",
                  "period",
                  "unknown"
                ]
              },
              "accountId": {
                "type": "string",
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
              },
              "providerResourceId": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 512
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "sourcePath": {
                "type": "string",
                "maxLength": 2000
              },
              "requestId": {
                "anyOf": [
                  {
                    "type": "string",
                    "format": "uuid",
                    "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "required": [
              "kind",
              "platform",
              "key",
              "unit",
              "grain",
              "measurementKind"
            ]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "formula"
              },
              "id": {
                "type": "string",
                "format": "uuid",
                "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
              },
              "version": {
                "type": "integer",
                "minimum": 1,
                "maximum": 1000000
              }
            },
            "required": [
              "kind",
              "id",
              "version"
            ]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "table"
              },
              "source": {
                "type": "string",
                "enum": [
                  "measurements",
                  "formulas"
                ]
              },
              "limit": {
                "type": "integer",
                "minimum": 1,
                "maximum": 100
              }
            },
            "required": [
              "kind",
              "source",
              "limit"
            ]
          },
          {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string",
                "const": "chart"
              },
              "source": {
                "type": "string",
                "const": "publication_by_platform"
              }
            },
            "required": [
              "kind",
              "source"
            ]
          }
        ]
      }
    },
    "createdAt": {
      "type": "string",
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      "format": "date-time"
    }
  },
  "required": [
    "contractVersion",
    "workspaceId",
    "id",
    "version",
    "name",
    "format",
    "sourceBase64",
    "sourceSha256",
    "mappings",
    "createdAt"
  ]
}

Fehler und sichere Wiederholungen

Prüfe HTTP-Status und Antwortinhalt. Ein 400-Validierungsfehler kann einen ZodError enthalten; Handler-Fehler verwenden die Felder error, message und code. Bewahre request_id oder x-request-id zur Diagnose ohne Zugangsdaten auf. Behebe 401/403-Zugriffsfehler vor einem erneuten Versuch und beachte Retry-After bei 429. Ist ein Schreibvorgang ungewiss oder liefert 5xx, lies zuerst das bestehende Ergebnis. Verwende einen Idempotenzschlüssel nur wieder, wo dies unterstützt wird; Wiederholungen unterscheiden sich je nach Operation und garantieren keine genau einmalige Zustellung.

Anleitung zur Fehlerbehebung

Beispiele

Diese Beispiele nutzen anhand der Schemas geprüfte fiktive Werte. Ersetze IDs durch autorisierte IDs, Medien durch bereite Assets und Daten durch bestätigte Veröffentlichungszeiten. Prüfe Kontoeignung vor Schreibvorgängen. Diese Seite sendet keine API-Anfragen.

Setze SOSOAPI_ACCESS_TOKEN auf deinem Server auf akzeptierte Zugangsdaten dieser Operation und halte es aus Browsercode heraus. Für Agenten nutze sosoapi auth login zur Browseranmeldung und lass die CLI Zugangsdaten erneuern.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "id": "11111111-1111-4111-8111-111111111111",
  "version": 1
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/analytics-api/reporting/templates/get" \
  -H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @request.json

JavaScript

// Server-side JavaScript. Do not print tokens or credential-bearing responses.
const token = process.env.SOSOAPI_ACCESS_TOKEN;
if (!token) throw new Error("Set an accepted credential for this operation");
const response = await fetch("https://gqeshlawtcexsapabaui.supabase.co/functions/v1/analytics-api/reporting/templates/get", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "id": "11111111-1111-4111-8111-111111111111",
  "version": 1
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /analytics-api/reporting/templates/get < request.json

Synthetisches Antwortbeispiel

{
  "contractVersion": "analytics-template/v1",
  "workspaceId": "11111111-1111-4111-8111-111111111111",
  "id": "11111111-1111-4111-8111-111111111111",
  "version": 1,
  "name": "example",
  "format": "pptx",
  "sourceBase64": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "sourceSha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "mappings": {},
  "createdAt": "2099-01-15T09:00:00Z"
}

MCP: sosoapi_get_report_template