Sökningen laddas först när du använder den. Bläddra bland alla kategorier nedan.

Medier och mediefiler

Hämta status för mediefilsimport

Läs en import via import_id. För publicering anger du include_asset=true: ett ready-resultat innehåller registrerad mediefils id, kind och stabil asset_url, så att ett separat get_asset inte behövs. Väntande eller saknade mediefiler kan inte schemaläggas. Använd aldrig käll- eller förhandsvisnings-URL som medieidentitet. Om importen har stannat, läs sosoapi_job_status med job_id; starta aldrig en duplicerad import.

POST /assets-api/imports/status

Kontrakt granskat: · sha256:563d2d581da0ad29

Översikt

Läs en import via import_id. För publicering anger du include_asset=true: ett ready-resultat innehåller registrerad mediefils id, kind och stabil asset_url, så att ett separat get_asset inte behövs. Väntande eller saknade mediefiler kan inte schemaläggas. Använd aldrig käll- eller förhandsvisnings-URL som medieidentitet. Om importen har stannat, läs sosoapi_job_status med job_id; starta aldrig en duplicerad import.

Ett lyckat HTTP-svar kan betyda att en begäran accepterats snarare än slutförts. Spara returnerat ID för bakgrundsarbete och kontrollera samma åtgärd tills den är klar. Ett schemalagt eller accepterat inlägg är publicerat först när plattformen bekräftar det; en klienttimeout fastställer inte resultatet.

Autentisering och behörigheter

Godtagna typer av autentiseringsuppgifter
user_session, delegated_oauth, personal_access_token
Delegerad funktion
agent:operate
Lägsta arbetsyteroll
viewer
Åtkomstomfång
Resurser som denna användare har behörighet att komma åt
Samtycke för alla arbetsytor krävs
Nej
Ändrar tillstånd
Nej
När åtgärden är klar
synchronous_http_response

En token får endast använda ägarens rättigheter. Varje anrop kontrollerar arbetsytemedlemskap, resursägarskap, valda arbetsytor och beviljade funktioner. Profilerna core och full ändrar vilka verktyg som visas; de ger ingen åtkomst.

Anropsfält

Obligatoriskt betyder obligatoriskt inom sitt överordnade objekt och vald gren. Ett obligatoriskt underfält gör inte ett valfritt överordnat objekt obligatoriskt. Regler och fältnamn nedan kopieras från kontraktet.

Anropsfält
Fält / grenTyp / obligatorisktBegränsningar
$objectObligatoriskt i överordnat objekt
  • additionalProperties: false
workspace_idstringObligatoriskt i överordnat objekt
  • 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)$"
import_idstringObligatoriskt i överordnat objekt
  • 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)$"
include_assetbooleanValfritt / objekt—
Fullständigt 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)$"
    },
    "import_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)$"
    },
    "include_asset": {
      "type": "boolean"
    }
  },
  "required": [
    "workspace_id",
    "import_id"
  ],
  "additionalProperties": false
}

Svar och slutförande

HTTP-status vid framgång: 200. När åtgärden är klar: synchronous_http_response.

Ett lyckat HTTP-svar kan betyda att en begäran accepterats snarare än slutförts. Spara returnerat ID för bakgrundsarbete och kontrollera samma åtgärd tills den är klar. Ett schemalagt eller accepterat inlägg är publicerat först när plattformen bekräftar det; en klienttimeout fastställer inte resultatet.

Obligatoriskt betyder obligatoriskt inom sitt överordnade objekt och vald gren. Ett obligatoriskt underfält gör inte ett valfritt överordnat objekt obligatoriskt. Regler och fältnamn nedan kopieras från kontraktet.

Svar och slutförande
Fält / grenTyp / obligatorisktBegränsningar
$objectObligatoriskt i överordnat objekt—
importobjectObligatoriskt i överordnat objekt—
import.idstringObligatoriskt i överordnat objekt
  • 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)$"
import.statusstringObligatoriskt i överordnat objekt
  • enum: ["queued","importing","needs_repair","ready","asset_purged","failed"]
import.job_idstring | nullObligatoriskt i överordnat objekt—
import.job_idanyOf 1stringObligatoriskt i överordnat objekt
  • 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)$"
import.job_idanyOf 2nullObligatoriskt i överordnat objekt—
import.asset_idinteger | nullObligatoriskt i överordnat objekt—
import.asset_idanyOf 1integerObligatoriskt i överordnat objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
import.asset_idanyOf 2nullObligatoriskt i överordnat objekt—
import.completed_asset_idinteger | nullObligatoriskt i överordnat objekt—
import.completed_asset_idanyOf 1integerObligatoriskt i överordnat objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
import.completed_asset_idanyOf 2nullObligatoriskt i överordnat objekt—
import.asset_purged_atstring | nullObligatoriskt i överordnat objekt—
import.asset_purged_atanyOf 1stringObligatoriskt i överordnat objekt—
import.asset_purged_atanyOf 2nullObligatoriskt i överordnat objekt—
import.source_urlstringObligatoriskt i överordnat objekt
  • format: "uri"
import.final_urlstring | nullObligatoriskt i överordnat objekt—
import.final_urlanyOf 1stringObligatoriskt i överordnat objekt
  • format: "uri"
import.final_urlanyOf 2nullObligatoriskt i överordnat objekt—
import.object_keystring | nullObligatoriskt i överordnat objekt—
import.object_keyanyOf 1stringObligatoriskt i överordnat objekt
  • minLength: 1
import.object_keyanyOf 2nullObligatoriskt i överordnat objekt—
import.content_typestring | nullObligatoriskt i överordnat objekt—
import.content_typeanyOf 1stringObligatoriskt i överordnat objekt
  • minLength: 1
import.content_typeanyOf 2nullObligatoriskt i överordnat objekt—
import.byte_sizeinteger | nullObligatoriskt i överordnat objekt—
import.byte_sizeanyOf 1integerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 9007199254740991
import.byte_sizeanyOf 2nullObligatoriskt i överordnat objekt—
import.content_sha256string | nullObligatoriskt i överordnat objekt—
import.content_sha256anyOf 1stringObligatoriskt i överordnat objekt
  • pattern: "^[0-9a-f]{64}$"
import.content_sha256anyOf 2nullObligatoriskt i överordnat objekt—
import.media_probereference | nullObligatoriskt i överordnat objekt—
import.media_probeanyOf 1string | number | boolean | null | array | objectObligatoriskt i överordnat objekt—
import.media_probeanyOf 1 / anyOf 1stringObligatoriskt i överordnat objekt—
import.media_probeanyOf 1 / anyOf 2numberObligatoriskt i överordnat objekt—
import.media_probeanyOf 1 / anyOf 3booleanObligatoriskt i överordnat objekt—
import.media_probeanyOf 1 / anyOf 4nullObligatoriskt i överordnat objekt—
import.media_probeanyOf 1 / anyOf 5arrayObligatoriskt i överordnat objekt—
import.media_probe[]anyOf 1 / anyOf 5referenceValfritt / objekt
  • #/$defs/__schema0
import.media_probeanyOf 1 / anyOf 6objectObligatoriskt i överordnat objekt
  • additionalProperties: {"$ref":"#/$defs/__schema0"}
import.media_probe.*anyOf 1 / anyOf 6referenceValfritt / objekt
  • #/$defs/__schema0
import.media_probeanyOf 2nullObligatoriskt i överordnat objekt—
import.error_messagestring | nullObligatoriskt i överordnat objekt—
import.error_messageanyOf 1stringObligatoriskt i överordnat objekt—
import.error_messageanyOf 2nullObligatoriskt i överordnat objekt—
import.created_atstringObligatoriskt i överordnat objekt—
import.completed_atstring | nullObligatoriskt i överordnat objekt—
import.completed_atanyOf 1stringObligatoriskt i överordnat objekt—
import.completed_atanyOf 2nullObligatoriskt i överordnat objekt—
assetobject | nullValfritt / objekt—
assetanyOf 1objectValfritt / objekt—
asset.idanyOf 1integer | stringObligatoriskt i överordnat objekt—
asset.idanyOf 1 / anyOf 1integerObligatoriskt i överordnat objekt
  • minimum: -9007199254740991
  • maximum: 9007199254740991
asset.idanyOf 1 / anyOf 2stringObligatoriskt i överordnat objekt—
asset.asset_typeanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["text","image","video","audio"]
asset.asset_urlanyOf 1string | nullObligatoriskt i överordnat objekt—
asset.asset_urlanyOf 1 / anyOf 1stringObligatoriskt i överordnat objekt—
asset.asset_urlanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
assetanyOf 2nullValfritt / objekt—
Fullständigt JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "import": {
      "type": "object",
      "properties": {
        "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)$"
        },
        "status": {
          "type": "string",
          "enum": [
            "queued",
            "importing",
            "needs_repair",
            "ready",
            "asset_purged",
            "failed"
          ]
        },
        "job_id": {
          "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"
            }
          ]
        },
        "asset_id": {
          "anyOf": [
            {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            {
              "type": "null"
            }
          ]
        },
        "completed_asset_id": {
          "anyOf": [
            {
              "type": "integer",
              "exclusiveMinimum": 0,
              "maximum": 9007199254740991
            },
            {
              "type": "null"
            }
          ]
        },
        "asset_purged_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "source_url": {
          "type": "string",
          "format": "uri"
        },
        "final_url": {
          "anyOf": [
            {
              "type": "string",
              "format": "uri"
            },
            {
              "type": "null"
            }
          ]
        },
        "object_key": {
          "anyOf": [
            {
              "type": "string",
              "minLength": 1
            },
            {
              "type": "null"
            }
          ]
        },
        "content_type": {
          "anyOf": [
            {
              "type": "string",
              "minLength": 1
            },
            {
              "type": "null"
            }
          ]
        },
        "byte_size": {
          "anyOf": [
            {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            {
              "type": "null"
            }
          ]
        },
        "content_sha256": {
          "anyOf": [
            {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            {
              "type": "null"
            }
          ]
        },
        "media_probe": {
          "anyOf": [
            {
              "$ref": "#/$defs/__schema0"
            },
            {
              "type": "null"
            }
          ]
        },
        "error_message": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        },
        "created_at": {
          "type": "string"
        },
        "completed_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "id",
        "status",
        "job_id",
        "asset_id",
        "completed_asset_id",
        "asset_purged_at",
        "source_url",
        "final_url",
        "object_key",
        "content_type",
        "byte_size",
        "content_sha256",
        "media_probe",
        "error_message",
        "created_at",
        "completed_at"
      ]
    },
    "asset": {
      "anyOf": [
        {
          "type": "object",
          "properties": {
            "id": {
              "anyOf": [
                {
                  "type": "integer",
                  "minimum": -9007199254740991,
                  "maximum": 9007199254740991
                },
                {
                  "type": "string"
                }
              ]
            },
            "asset_type": {
              "type": "string",
              "enum": [
                "text",
                "image",
                "video",
                "audio"
              ]
            },
            "asset_url": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ]
            }
          },
          "required": [
            "id",
            "asset_type",
            "asset_url"
          ]
        },
        {
          "type": "null"
        }
      ]
    }
  },
  "required": [
    "import"
  ],
  "$defs": {
    "__schema0": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "number"
        },
        {
          "type": "boolean"
        },
        {
          "type": "null"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/__schema0"
          }
        },
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "$ref": "#/$defs/__schema0"
          }
        }
      ]
    }
  }
}

Fel och säkra nya försök

Kontrollera HTTP-status och svarskropp. Ett valideringsfel med 400 kan innehålla ZodError; hanterarfel använder fälten error, message och code. Spara request_id eller x-request-id för felsökning, utan inloggningsuppgifter. Åtgärda åtkomstfel med 401/403 innan du försöker igen och följ Retry-After vid 429. Om en skrivning är osäker eller returnerar 5xx, läs först det befintliga resultatet. Återanvänd en idempotensnyckel endast där det stöds; försöksbeteendet varierar mellan åtgärder och garanterar inte leverans exakt en gång.

Felsökningsguide

Exempel

Exemplen använder fiktiva värden som kontrollerats mot schemana. Ersätt ID:n med sådana du får använda, medier med färdiga mediefiler och datum med din bekräftade publiceringstid. Kontrollera kontots behörighet före en skrivning. Denna sida skickar inga API-anrop.

Sätt SOSOAPI_ACCESS_TOKEN på servern till en autentiseringsuppgift som åtgärden godtar och håll den borta från webbläsarkod. För en agent använder du sosoapi auth login för att logga in via webbläsaren och låter CLI förnya sina uppgifter.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "import_id": "11111111-1111-4111-8111-111111111111"
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/assets-api/imports/status" \
  -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/assets-api/imports/status", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "import_id": "11111111-1111-4111-8111-111111111111"
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /assets-api/imports/status < request.json

Syntetiskt svarsexempel

{
  "import": {
    "id": "11111111-1111-4111-8111-111111111111",
    "status": "queued",
    "job_id": null,
    "asset_id": null,
    "completed_asset_id": null,
    "asset_purged_at": null,
    "source_url": "https://example.com/media.png",
    "final_url": null,
    "object_key": null,
    "content_type": null,
    "byte_size": null,
    "content_sha256": null,
    "media_probe": null,
    "error_message": null,
    "created_at": "example",
    "completed_at": null
  }
}

MCP: sosoapi_get_asset_import_status