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

Planung und Veröffentlichung

Threads-CSV einreichen

Pro Anfrage höchstens fünf ausgewählte Threads-CSV-Zeilen mit denselben Import-, Entwurfs- und Einreichungsidentitäten ausdrücklich einreichen oder fortsetzen. Original-CSV und Auswahl zur Wiederherstellung behalten.

POST /studio-api/threads-csv/submit

Vertrag geprüft: · sha256:11debf801a5e6096

Überblick

Pro Anfrage höchstens fünf ausgewählte Threads-CSV-Zeilen mit denselben Import-, Entwurfs- und Einreichungsidentitäten ausdrücklich einreichen oder fortsetzen. Original-CSV und Auswahl zur Wiederherstellung behalten.

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:publish
Minimale Workspace-Rolle
editor
Zugriffsumfang
Ressourcen, auf die dieser Nutzer zugreifen darf
Zustimmung für alle Workspaces erforderlich
Nein
Ändert Zustand
Ja
Nach Abschluss der Operation
durable independent per-row acceptance; accepted rows are never recreated and acceptance is not provider publication

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)$"
social_account_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)$"
import_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)$"
csvstringIm Elternobjekt erforderlich
  • minLength: 1
  • maxLength: 200000
row_numbersarrayIm Elternobjekt erforderlich
  • minItems: 1
  • maxItems: 50
row_numbers[]integerOptional / Element
  • minimum: 1
  • maximum: 50
preview_digeststringIm Elternobjekt erforderlich
  • pattern: "^[a-f0-9]{64}$"
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)$"
    },
    "social_account_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)$"
    },
    "csv": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200000
    },
    "row_numbers": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 1,
        "maximum": 50
      }
    },
    "preview_digest": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    }
  },
  "required": [
    "workspace_id",
    "social_account_id",
    "import_id",
    "csv",
    "row_numbers",
    "preview_digest"
  ],
  "additionalProperties": false
}

Antwort und Abschluss

HTTP-Erfolgsstatus: 200. Wenn die Operation abgeschlossen ist: durable independent per-row acceptance; accepted rows are never recreated and acceptance is not provider publication.

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—
contract_versionstringIm Elternobjekt erforderlich
  • const: "threads-csv/v1"
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)$"
social_account_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)$"
import_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)$"
preview_digeststringIm Elternobjekt erforderlich
  • pattern: "^[a-f0-9]{64}$"
selected_row_numbersarrayIm Elternobjekt erforderlich
  • maxItems: 50
selected_row_numbers[]integerOptional / Element
  • minimum: 1
  • maximum: 50
rowsarrayIm Elternobjekt erforderlich
  • maxItems: 50
rows[]objectOptional / Element—
rows[].row_numberintegerIm Elternobjekt erforderlich
  • minimum: 1
  • maximum: 50
rows[].row_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)$"
rows[].draft_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)$"
rows[].save_mutation_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)$"
rows[].submission_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)$"
rows[].captionstringIm Elternobjekt erforderlich
  • maxLength: 5000
rows[].scheduled_atstring | nullIm Elternobjekt erforderlich—
rows[].scheduled_atanyOf 1stringIm 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)))$"
rows[].scheduled_atanyOf 2nullIm Elternobjekt erforderlich—
rows[].display_timezonestringIm Elternobjekt erforderlich
  • maxLength: 128
rows[].asset_idsarrayIm Elternobjekt erforderlich
  • maxItems: 20
rows[].asset_ids[]stringOptional / Element
  • pattern: "^[1-9]\\d{0,15}$"
rows[].topic_tagstring | nullIm Elternobjekt erforderlich—
rows[].topic_taganyOf 1stringIm Elternobjekt erforderlich
  • maxLength: 50
rows[].topic_taganyOf 2nullIm Elternobjekt erforderlich—
rows[].post_typestring | nullIm Elternobjekt erforderlich—
rows[].post_typeanyOf 1stringIm Elternobjekt erforderlich
  • enum: ["TEXT","IMAGE","VIDEO","CAROUSEL"]
rows[].post_typeanyOf 2nullIm Elternobjekt erforderlich—
rows[].statusstringIm Elternobjekt erforderlich
  • enum: ["ready","invalid","accepted","not_accepted","uncertain","not_attempted"]
rows[].errorsarrayIm Elternobjekt erforderlich
  • maxItems: 10
rows[].errors[]objectOptional / Element—
rows[].errors[].codestringIm Elternobjekt erforderlich
  • maxLength: 80
rows[].errors[].messagestringIm Elternobjekt erforderlich
  • maxLength: 300
rows[].duplicate_ofinteger | nullIm Elternobjekt erforderlich—
rows[].duplicate_ofanyOf 1integerIm Elternobjekt erforderlich
  • minimum: 1
  • maximum: 50
rows[].duplicate_ofanyOf 2nullIm Elternobjekt erforderlich—
rows[].draft_revisioninteger | nullIm Elternobjekt erforderlich—
rows[].draft_revisionanyOf 1integerIm Elternobjekt erforderlich
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].draft_revisionanyOf 2nullIm Elternobjekt erforderlich—
rows[].postobject | nullIm Elternobjekt erforderlich—
rows[].postanyOf 1objectIm Elternobjekt erforderlich—
rows[].post.idanyOf 1stringIm Elternobjekt erforderlich
  • pattern: "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
rows[].post.workspace_idanyOf 1stringIm 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)$"
rows[].post.social_account_idanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.social_account_idanyOf 1 / anyOf 1stringIm 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)$"
rows[].post.social_account_idanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].post.platformanyOf 1stringIm Elternobjekt erforderlich
  • enum: ["instagram","threads","facebook","youtube","x"]
rows[].post.destinationanyOf 1objectIm Elternobjekt erforderlich—
rows[].post.destination.social_account_idanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.destination.social_account_idanyOf 1 / anyOf 1stringIm 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)$"
rows[].post.destination.social_account_idanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].post.destination.platformanyOf 1stringIm Elternobjekt erforderlich
  • enum: ["instagram","threads","facebook","youtube","x"]
rows[].post.destination.platform_user_idanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.destination.account_labelanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.captionanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.hashtagsanyOf 1arrayIm Elternobjekt erforderlich—
rows[].post.hashtags[]anyOf 1stringOptional / Element—
rows[].post.mediaanyOf 1arrayIm Elternobjekt erforderlich—
rows[].post.media[]anyOf 1objectOptional / Element—
rows[].post.media[].kindanyOf 1stringIm Elternobjekt erforderlich
  • enum: ["image","video"]
rows[].post.media[].urlanyOf 1stringIm Elternobjekt erforderlich
  • format: "uri"
rows[].post.media[].cover_urlanyOf 1string | nullOptional / Element—
rows[].post.media[].cover_urlanyOf 1 / anyOf 1stringOptional / Element
  • format: "uri"
rows[].post.media[].cover_urlanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.media[].cover_asset_idanyOf 1integer | nullOptional / Element—
rows[].post.media[].cover_asset_idanyOf 1 / anyOf 1integerOptional / Element
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.media[].cover_asset_idanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.media[].asset_idanyOf 1integer | nullOptional / Element—
rows[].post.media[].asset_idanyOf 1 / anyOf 1integerOptional / Element
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.media[].asset_idanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.media[].mime_typeanyOf 1string | nullOptional / Element—
rows[].post.media[].mime_typeanyOf 1 / anyOf 1stringOptional / Element
  • minLength: 1
  • maxLength: 160
rows[].post.media[].mime_typeanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.media[].preview_urlanyOf 1string | nullOptional / Element

Temporäre autorisierte Lese-URL; url als dauerhafte Scheduled-Post-Medienidentität behalten.

—
rows[].post.media[].preview_urlanyOf 1 / anyOf 1stringOptional / Element
  • format: "uri"
rows[].post.media[].preview_urlanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.media[].cover_preview_urlanyOf 1string | nullOptional / Element

Temporäre autorisierte Cover-Lese-URL; cover_url als dauerhafte Medienidentität behalten.

—
rows[].post.media[].cover_preview_urlanyOf 1 / anyOf 1stringOptional / Element
  • format: "uri"
rows[].post.media[].cover_preview_urlanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.media[].preview_expires_atanyOf 1string | nullOptional / Element—
rows[].post.media[].preview_expires_atanyOf 1 / anyOf 1stringOptional / Element
  • 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))$"
rows[].post.media[].preview_expires_atanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.link_urlanyOf 1string | nullOptional / Element—
rows[].post.link_urlanyOf 1 / anyOf 1stringOptional / Element
  • format: "uri"
rows[].post.link_urlanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.publish_optionsanyOf 1objectIm Elternobjekt erforderlich—
rows[].post.publish_options.post_typeanyOf 1stringOptional / Element
  • enum: ["TEXT","LINK","IMAGE","MULTI_IMAGE","VIDEO","CAROUSEL","REELS","STORY_IMAGE","STORY_VIDEO","REPOST","SHORT"]
rows[].post.publish_options.location_idanyOf 1stringOptional / Element
  • minLength: 1
rows[].post.publish_options.share_to_feedanyOf 1booleanOptional / Element—
rows[].post.publish_options.collaboratorsanyOf 1arrayOptional / Element
  • maxItems: 3
rows[].post.publish_options.collaborators[]anyOf 1stringOptional / Element
  • minLength: 1
rows[].post.publish_options.first_commentanyOf 1stringOptional / Element
  • minLength: 1
  • maxLength: 2200
rows[].post.publish_options.topic_taganyOf 1stringOptional / Element
  • minLength: 1
rows[].post.publish_options.thumb_offset_msanyOf 1integerOptional / Element
  • minimum: 0
  • maximum: 9007199254740991
rows[].post.publish_options.titleanyOf 1stringOptional / Element
  • maxLength: 255
rows[].post.publish_options.youtube_privacy_statusanyOf 1stringOptional / Element
  • enum: ["private","unlisted","public"]
rows[].post.publish_options.youtube_category_idanyOf 1stringOptional / Element
  • pattern: "^\\d+$"
rows[].post.publish_options.youtube_contains_synthetic_mediaanyOf 1booleanOptional / Element—
rows[].post.publish_options.descriptionanyOf 1stringOptional / Element
  • maxLength: 5000
rows[].post.publish_options.category_idanyOf 1stringOptional / Element
  • pattern: "^\\d+$"
rows[].post.publish_options.privacy_statusanyOf 1stringOptional / Element
  • enum: ["private","unlisted","public"]
rows[].post.publish_options.cancellation_modeanyOf 1stringOptional / Element
  • enum: ["DELETE","UNSCHEDULE_KEEP_PRIVATE"]
rows[].post.publish_options.tagsanyOf 1arrayOptional / Element—
rows[].post.publish_options.tags[]anyOf 1stringOptional / Element—
rows[].post.publish_options.default_languageanyOf 1stringOptional / Element—
rows[].post.publish_options.localizationsanyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.localizations.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.licenseanyOf 1stringOptional / Element
  • enum: ["youtube","creativeCommon"]
rows[].post.publish_options.embeddableanyOf 1booleanOptional / Element—
rows[].post.publish_options.public_stats_viewableanyOf 1booleanOptional / Element—
rows[].post.publish_options.self_declared_made_for_kidsanyOf 1booleanOptional / Element—
rows[].post.publish_options.contains_synthetic_mediaanyOf 1booleanOptional / Element—
rows[].post.publish_options.has_paid_product_placementanyOf 1booleanOptional / Element—
rows[].post.publish_options.recording_dateanyOf 1stringOptional / Element—
rows[].post.publish_options.notify_subscribersanyOf 1booleanOptional / Element—
rows[].post.publish_options.thumbnail_asset_idanyOf 1integerOptional / Element
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.publish_options.surface_expectationanyOf 1stringOptional / Element
  • const: "SHORT"
rows[].post.publish_options.brand_partneranyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.brand_partner.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.cover_asset_idanyOf 1integerOptional / Element
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.publish_options.audio_nameanyOf 1stringOptional / Element—
rows[].post.publish_options.trial_paramsanyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.trial_params.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.is_ai_generatedanyOf 1booleanOptional / Element—
rows[].post.publish_options.branded_content_sponsor_idsanyOf 1arrayOptional / Element—
rows[].post.publish_options.branded_content_sponsor_ids[]anyOf 1stringOptional / Element—
rows[].post.publish_options.is_paid_partnershipanyOf 1booleanOptional / Element—
rows[].post.publish_options.media_optionsanyOf 1arrayOptional / Element—
rows[].post.publish_options.media_options[]anyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.media_options[].*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.reply_to_idanyOf 1stringOptional / Element—
rows[].post.publish_options.quote_post_idanyOf 1stringOptional / Element—
rows[].post.publish_options.repost_target_idanyOf 1stringOptional / Element—
rows[].post.publish_options.reply_controlanyOf 1stringOptional / Element—
rows[].post.publish_options.enable_reply_approvalsanyOf 1booleanOptional / Element—
rows[].post.publish_options.link_attachmentanyOf 1stringOptional / Element
  • format: "uri"
rows[].post.publish_options.poll_attachmentanyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.poll_attachment.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.gif_attachmentanyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.gif_attachment.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.text_attachmentanyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.text_attachment.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.text_entitiesanyOf 1arrayOptional / Element—
rows[].post.publish_options.text_entities[]anyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.text_entities[].*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.is_spoiler_mediaanyOf 1booleanOptional / Element—
rows[].post.publish_options.is_ghost_postanyOf 1booleanOptional / Element—
rows[].post.publish_options.allowlisted_country_codesanyOf 1arrayOptional / Element—
rows[].post.publish_options.allowlisted_country_codes[]anyOf 1stringOptional / Element—
rows[].post.publish_options.crossreshare_to_iganyOf 1booleanOptional / Element—
rows[].post.publish_options.crossreshare_to_ig_dark_modeanyOf 1booleanOptional / Element—
rows[].post.publish_options.auto_publish_textanyOf 1booleanOptional / Element—
rows[].post.publish_options.publication_modeanyOf 1stringOptional / Element
  • enum: ["PUBLISH","DRAFT"]
rows[].post.publish_options.backdated_timeanyOf 1numberOptional / Element—
rows[].post.publish_options.backdated_time_granularityanyOf 1stringOptional / Element
  • enum: ["year","month","day","hour","minute"]
rows[].post.publish_options.placeanyOf 1stringOptional / Element—
rows[].post.publish_options.feed_targetinganyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.feed_targeting.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.targetinganyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.targeting.*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.child_attachmentsanyOf 1arrayOptional / Element—
rows[].post.publish_options.child_attachments[]anyOf 1objectOptional / Element
  • additionalProperties: {}
rows[].post.publish_options.child_attachments[].*anyOf 1any JSON valueOptional / Element—
rows[].post.publish_options.multi_share_end_cardanyOf 1booleanOptional / Element—
rows[].post.publish_options.multi_share_optimizedanyOf 1booleanOptional / Element—
rows[].post.publish_options.unpublished_content_typeanyOf 1stringOptional / Element—
rows[].post.publish_options.no_storyanyOf 1booleanOptional / Element—
rows[].post.publish_options.crossposted_video_idanyOf 1stringOptional / Element—
rows[].post.publish_options.sphericalanyOf 1booleanOptional / Element—
rows[].post.scheduled_atanyOf 1stringIm Elternobjekt erforderlich—
rows[].post.display_timezoneanyOf 1stringIm Elternobjekt erforderlich
  • minLength: 1
  • maxLength: 80
rows[].post.local_scheduled_atanyOf 1string | nullOptional / Element—
rows[].post.local_scheduled_atanyOf 1 / anyOf 1stringOptional / Element
  • pattern: "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
rows[].post.local_scheduled_atanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.schedule_timezoneanyOf 1string | nullOptional / Element—
rows[].post.schedule_timezoneanyOf 1 / anyOf 1stringOptional / Element
  • minLength: 1
  • maxLength: 80
rows[].post.schedule_timezoneanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.schedule_dst_disambiguationanyOf 1string | nullOptional / Element—
rows[].post.schedule_dst_disambiguationanyOf 1 / anyOf 1stringOptional / Element
  • enum: ["exact","earlier","later"]
rows[].post.schedule_dst_disambiguationanyOf 1 / anyOf 2nullOptional / Element—
rows[].post.schedule_intent_stateanyOf 1stringOptional / Element
  • enum: ["verified","legacy_unverified"]
rows[].post.expires_atanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.statusanyOf 1stringIm Elternobjekt erforderlich
  • enum: ["scheduled","publishing","published","failed","expired","needs_reschedule","cancelled","deleted"]
rows[].post.versionanyOf 1integerIm Elternobjekt erforderlich
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.automatic_retry_enabledanyOf 1booleanIm Elternobjekt erforderlich—
rows[].post.delete_requested_atanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.deletionanyOf 1objectOptional / Element—
rows[].post.deletion.stateanyOf 1stringIm Elternobjekt erforderlich
  • enum: ["pending","retry_scheduled","failed","unconfirmed","confirmed","unpublished_cancelled"]
rows[].post.deletion.retry_atanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.deletion.retry_atanyOf 1 / anyOf 1stringIm 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))$"
rows[].post.deletion.retry_atanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].post.published_atanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.deleted_atanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.provider_post_idanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.permalinkanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.permalinkanyOf 1 / anyOf 1stringIm Elternobjekt erforderlich
  • format: "uri"
rows[].post.permalinkanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].post.created_atanyOf 1stringIm Elternobjekt erforderlich—
rows[].post.updated_atanyOf 1stringIm Elternobjekt erforderlich—
rows[].post.project_idanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.project_idanyOf 1 / anyOf 1stringIm 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)$"
rows[].post.project_idanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].post.batch_idanyOf 1string | nullIm Elternobjekt erforderlich—
rows[].post.batch_idanyOf 1 / anyOf 1stringIm 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)$"
rows[].post.batch_idanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].post.source_refanyOf 1object | nullIm Elternobjekt erforderlich—
rows[].post.source_refanyOf 1 / anyOf 1objectIm Elternobjekt erforderlich
  • additionalProperties: {}
rows[].post.source_ref.*anyOf 1 / anyOf 1any JSON valueOptional / Element—
rows[].post.source_refanyOf 1 / anyOf 2nullIm Elternobjekt erforderlich—
rows[].postanyOf 2nullIm Elternobjekt erforderlich—
import_errorsarrayIm Elternobjekt erforderlich
  • maxItems: 10
import_errors[]objectOptional / Element—
import_errors[].codestringIm Elternobjekt erforderlich
  • maxLength: 80
import_errors[].messagestringIm Elternobjekt erforderlich
  • maxLength: 300
countsobjectIm Elternobjekt erforderlich—
counts.totalintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
counts.readyintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
counts.invalidintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
counts.acceptedintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
counts.not_acceptedintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
counts.uncertainintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
counts.not_attemptedintegerIm Elternobjekt erforderlich
  • minimum: 0
  • maximum: 50
completebooleanIm Elternobjekt erforderlich—
Vollständiges JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "contract_version": {
      "type": "string",
      "const": "threads-csv/v1"
    },
    "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)$"
    },
    "social_account_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)$"
    },
    "preview_digest": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "selected_row_numbers": {
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 1,
        "maximum": 50
      }
    },
    "rows": {
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "row_number": {
            "type": "integer",
            "minimum": 1,
            "maximum": 50
          },
          "row_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)$"
          },
          "draft_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)$"
          },
          "save_mutation_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)$"
          },
          "submission_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)$"
          },
          "caption": {
            "type": "string",
            "maxLength": 5000
          },
          "scheduled_at": {
            "anyOf": [
              {
                "type": "string",
                "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)))$"
              },
              {
                "type": "null"
              }
            ]
          },
          "display_timezone": {
            "type": "string",
            "maxLength": 128
          },
          "asset_ids": {
            "maxItems": 20,
            "type": "array",
            "items": {
              "type": "string",
              "pattern": "^[1-9]\\d{0,15}$"
            }
          },
          "topic_tag": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 50
              },
              {
                "type": "null"
              }
            ]
          },
          "post_type": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "TEXT",
                  "IMAGE",
                  "VIDEO",
                  "CAROUSEL"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "status": {
            "type": "string",
            "enum": [
              "ready",
              "invalid",
              "accepted",
              "not_accepted",
              "uncertain",
              "not_attempted"
            ]
          },
          "errors": {
            "maxItems": 10,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "code": {
                  "type": "string",
                  "maxLength": 80
                },
                "message": {
                  "type": "string",
                  "maxLength": 300
                }
              },
              "required": [
                "code",
                "message"
              ]
            }
          },
          "duplicate_of": {
            "anyOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 50
              },
              {
                "type": "null"
              }
            ]
          },
          "draft_revision": {
            "anyOf": [
              {
                "type": "integer",
                "exclusiveMinimum": 0,
                "maximum": 9007199254740991
              },
              {
                "type": "null"
              }
            ]
          },
          "post": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
                  },
                  "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)$"
                  },
                  "social_account_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"
                      }
                    ]
                  },
                  "platform": {
                    "type": "string",
                    "enum": [
                      "instagram",
                      "threads",
                      "facebook",
                      "youtube",
                      "x"
                    ]
                  },
                  "destination": {
                    "type": "object",
                    "properties": {
                      "social_account_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"
                          }
                        ]
                      },
                      "platform": {
                        "type": "string",
                        "enum": [
                          "instagram",
                          "threads",
                          "facebook",
                          "youtube",
                          "x"
                        ]
                      },
                      "platform_user_id": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "account_label": {
                        "type": [
                          "string",
                          "null"
                        ]
                      }
                    },
                    "required": [
                      "social_account_id",
                      "platform",
                      "platform_user_id",
                      "account_label"
                    ]
                  },
                  "caption": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "hashtags": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "media": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "kind": {
                          "type": "string",
                          "enum": [
                            "image",
                            "video"
                          ]
                        },
                        "url": {
                          "type": "string",
                          "format": "uri"
                        },
                        "cover_url": {
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "uri"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "cover_asset_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "exclusiveMinimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "asset_id": {
                          "anyOf": [
                            {
                              "type": "integer",
                              "exclusiveMinimum": 0,
                              "maximum": 9007199254740991
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "mime_type": {
                          "anyOf": [
                            {
                              "type": "string",
                              "minLength": 1,
                              "maxLength": 160
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "preview_url": {
                          "description": "Temporary authorized read URL; keep url as persisted Scheduled Post media identity.",
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "uri"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "cover_preview_url": {
                          "description": "Temporary authorized cover read URL; keep cover_url as persisted media identity.",
                          "anyOf": [
                            {
                              "type": "string",
                              "format": "uri"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        },
                        "preview_expires_at": {
                          "anyOf": [
                            {
                              "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))$",
                              "format": "date-time"
                            },
                            {
                              "type": "null"
                            }
                          ]
                        }
                      },
                      "required": [
                        "kind",
                        "url"
                      ]
                    }
                  },
                  "link_url": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "uri"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "publish_options": {
                    "type": "object",
                    "properties": {
                      "post_type": {
                        "type": "string",
                        "enum": [
                          "TEXT",
                          "LINK",
                          "IMAGE",
                          "MULTI_IMAGE",
                          "VIDEO",
                          "CAROUSEL",
                          "REELS",
                          "STORY_IMAGE",
                          "STORY_VIDEO",
                          "REPOST",
                          "SHORT"
                        ]
                      },
                      "location_id": {
                        "type": "string",
                        "minLength": 1
                      },
                      "share_to_feed": {
                        "type": "boolean"
                      },
                      "collaborators": {
                        "maxItems": 3,
                        "type": "array",
                        "items": {
                          "type": "string",
                          "minLength": 1
                        }
                      },
                      "first_comment": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 2200
                      },
                      "topic_tag": {
                        "type": "string",
                        "minLength": 1
                      },
                      "thumb_offset_ms": {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      "title": {
                        "type": "string",
                        "maxLength": 255
                      },
                      "youtube_privacy_status": {
                        "type": "string",
                        "enum": [
                          "private",
                          "unlisted",
                          "public"
                        ]
                      },
                      "youtube_category_id": {
                        "type": "string",
                        "pattern": "^\\d+$"
                      },
                      "youtube_contains_synthetic_media": {
                        "type": "boolean"
                      },
                      "description": {
                        "type": "string",
                        "maxLength": 5000
                      },
                      "category_id": {
                        "type": "string",
                        "pattern": "^\\d+$"
                      },
                      "privacy_status": {
                        "type": "string",
                        "enum": [
                          "private",
                          "unlisted",
                          "public"
                        ]
                      },
                      "cancellation_mode": {
                        "type": "string",
                        "enum": [
                          "DELETE",
                          "UNSCHEDULE_KEEP_PRIVATE"
                        ]
                      },
                      "tags": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "default_language": {
                        "type": "string"
                      },
                      "localizations": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "license": {
                        "type": "string",
                        "enum": [
                          "youtube",
                          "creativeCommon"
                        ]
                      },
                      "embeddable": {
                        "type": "boolean"
                      },
                      "public_stats_viewable": {
                        "type": "boolean"
                      },
                      "self_declared_made_for_kids": {
                        "type": "boolean"
                      },
                      "contains_synthetic_media": {
                        "type": "boolean"
                      },
                      "has_paid_product_placement": {
                        "type": "boolean"
                      },
                      "recording_date": {
                        "type": "string"
                      },
                      "notify_subscribers": {
                        "type": "boolean"
                      },
                      "thumbnail_asset_id": {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      "surface_expectation": {
                        "type": "string",
                        "const": "SHORT"
                      },
                      "brand_partner": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "cover_asset_id": {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      "audio_name": {
                        "type": "string"
                      },
                      "trial_params": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "is_ai_generated": {
                        "type": "boolean"
                      },
                      "branded_content_sponsor_ids": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "is_paid_partnership": {
                        "type": "boolean"
                      },
                      "media_options": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {}
                        }
                      },
                      "reply_to_id": {
                        "type": "string"
                      },
                      "quote_post_id": {
                        "type": "string"
                      },
                      "repost_target_id": {
                        "type": "string"
                      },
                      "reply_control": {
                        "type": "string"
                      },
                      "enable_reply_approvals": {
                        "type": "boolean"
                      },
                      "link_attachment": {
                        "type": "string",
                        "format": "uri"
                      },
                      "poll_attachment": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "gif_attachment": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "text_attachment": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "text_entities": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {}
                        }
                      },
                      "is_spoiler_media": {
                        "type": "boolean"
                      },
                      "is_ghost_post": {
                        "type": "boolean"
                      },
                      "allowlisted_country_codes": {
                        "type": "array",
                        "items": {
                          "type": "string"
                        }
                      },
                      "crossreshare_to_ig": {
                        "type": "boolean"
                      },
                      "crossreshare_to_ig_dark_mode": {
                        "type": "boolean"
                      },
                      "auto_publish_text": {
                        "type": "boolean"
                      },
                      "publication_mode": {
                        "type": "string",
                        "enum": [
                          "PUBLISH",
                          "DRAFT"
                        ]
                      },
                      "backdated_time": {
                        "type": "number"
                      },
                      "backdated_time_granularity": {
                        "type": "string",
                        "enum": [
                          "year",
                          "month",
                          "day",
                          "hour",
                          "minute"
                        ]
                      },
                      "place": {
                        "type": "string"
                      },
                      "feed_targeting": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "targeting": {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      "child_attachments": {
                        "type": "array",
                        "items": {
                          "type": "object",
                          "propertyNames": {
                            "type": "string"
                          },
                          "additionalProperties": {}
                        }
                      },
                      "multi_share_end_card": {
                        "type": "boolean"
                      },
                      "multi_share_optimized": {
                        "type": "boolean"
                      },
                      "unpublished_content_type": {
                        "type": "string"
                      },
                      "no_story": {
                        "type": "boolean"
                      },
                      "crossposted_video_id": {
                        "type": "string"
                      },
                      "spherical": {
                        "type": "boolean"
                      }
                    }
                  },
                  "scheduled_at": {
                    "type": "string"
                  },
                  "display_timezone": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 80
                  },
                  "local_scheduled_at": {
                    "anyOf": [
                      {
                        "type": "string",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "schedule_timezone": {
                    "anyOf": [
                      {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 80
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "schedule_dst_disambiguation": {
                    "anyOf": [
                      {
                        "type": "string",
                        "enum": [
                          "exact",
                          "earlier",
                          "later"
                        ]
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "schedule_intent_state": {
                    "type": "string",
                    "enum": [
                      "verified",
                      "legacy_unverified"
                    ]
                  },
                  "expires_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "status": {
                    "type": "string",
                    "enum": [
                      "scheduled",
                      "publishing",
                      "published",
                      "failed",
                      "expired",
                      "needs_reschedule",
                      "cancelled",
                      "deleted"
                    ]
                  },
                  "version": {
                    "type": "integer",
                    "exclusiveMinimum": 0,
                    "maximum": 9007199254740991
                  },
                  "automatic_retry_enabled": {
                    "type": "boolean"
                  },
                  "delete_requested_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "deletion": {
                    "type": "object",
                    "properties": {
                      "state": {
                        "type": "string",
                        "enum": [
                          "pending",
                          "retry_scheduled",
                          "failed",
                          "unconfirmed",
                          "confirmed",
                          "unpublished_cancelled"
                        ]
                      },
                      "retry_at": {
                        "anyOf": [
                          {
                            "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))$",
                            "format": "date-time"
                          },
                          {
                            "type": "null"
                          }
                        ]
                      }
                    },
                    "required": [
                      "state",
                      "retry_at"
                    ]
                  },
                  "published_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "deleted_at": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "provider_post_id": {
                    "type": [
                      "string",
                      "null"
                    ]
                  },
                  "permalink": {
                    "anyOf": [
                      {
                        "type": "string",
                        "format": "uri"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "created_at": {
                    "type": "string"
                  },
                  "updated_at": {
                    "type": "string"
                  },
                  "project_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"
                      }
                    ]
                  },
                  "batch_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"
                      }
                    ]
                  },
                  "source_ref": {
                    "anyOf": [
                      {
                        "type": "object",
                        "propertyNames": {
                          "type": "string"
                        },
                        "additionalProperties": {}
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "id",
                  "workspace_id",
                  "social_account_id",
                  "platform",
                  "destination",
                  "caption",
                  "hashtags",
                  "media",
                  "publish_options",
                  "scheduled_at",
                  "display_timezone",
                  "expires_at",
                  "status",
                  "version",
                  "automatic_retry_enabled",
                  "delete_requested_at",
                  "published_at",
                  "deleted_at",
                  "provider_post_id",
                  "permalink",
                  "created_at",
                  "updated_at",
                  "project_id",
                  "batch_id",
                  "source_ref"
                ]
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "row_number",
          "row_id",
          "draft_id",
          "save_mutation_id",
          "submission_id",
          "caption",
          "scheduled_at",
          "display_timezone",
          "asset_ids",
          "topic_tag",
          "post_type",
          "status",
          "errors",
          "duplicate_of",
          "draft_revision",
          "post"
        ]
      }
    },
    "import_errors": {
      "maxItems": 10,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "maxLength": 80
          },
          "message": {
            "type": "string",
            "maxLength": 300
          }
        },
        "required": [
          "code",
          "message"
        ]
      }
    },
    "counts": {
      "type": "object",
      "properties": {
        "total": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        },
        "ready": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        },
        "invalid": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        },
        "accepted": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        },
        "not_accepted": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        },
        "uncertain": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        },
        "not_attempted": {
          "type": "integer",
          "minimum": 0,
          "maximum": 50
        }
      },
      "required": [
        "total",
        "ready",
        "invalid",
        "accepted",
        "not_accepted",
        "uncertain",
        "not_attempted"
      ]
    },
    "complete": {
      "type": "boolean"
    }
  },
  "required": [
    "contract_version",
    "workspace_id",
    "social_account_id",
    "import_id",
    "preview_digest",
    "selected_row_numbers",
    "rows",
    "import_errors",
    "counts",
    "complete"
  ]
}

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 KI-Agenten nutze sosoapi auth login zur Browseranmeldung und lass die CLI Zugangsdaten erneuern.

request.json

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "social_account_id": "22222222-2222-4222-8222-222222222222",
  "import_id": "55555555-5555-4555-8555-555555555555",
  "csv": "caption,scheduled_at,display_timezone,asset_ids,topic_tag\nA fictional announcement.,2099-01-15T09:00:00Z,UTC,,Cooking",
  "row_numbers": [
    1
  ],
  "preview_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/threads-csv/submit" \
  -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/studio-api/threads-csv/submit", {
  method: "POST",
  headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
  body: JSON.stringify({
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "social_account_id": "22222222-2222-4222-8222-222222222222",
  "import_id": "55555555-5555-4555-8555-555555555555",
  "csv": "caption,scheduled_at,display_timezone,asset_ids,topic_tag\nA fictional announcement.,2099-01-15T09:00:00Z,UTC,,Cooking",
  "row_numbers": [
    1
  ],
  "preview_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
})
});
const result = await response.json();
// Check response.ok, the operation-specific body and completion state before continuing.

CLI

npx sosoapi api post /studio-api/threads-csv/submit < request.json

Synthetisches Antwortbeispiel

{
  "workspace_id": "11111111-1111-4111-8111-111111111111",
  "social_account_id": "22222222-2222-4222-8222-222222222222",
  "import_id": "55555555-5555-4555-8555-555555555555",
  "contract_version": "threads-csv/v1",
  "preview_digest": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
  "selected_row_numbers": [
    1
  ],
  "rows": [
    {
      "row_number": 1,
      "row_id": "80000000-0000-4000-8000-000000000004",
      "draft_id": "70000000-0000-4000-8000-000000000004",
      "save_mutation_id": "60000000-0000-4000-8000-000000000004",
      "submission_id": "60000000-0000-4000-8000-000000000005",
      "caption": "A fictional announcement.",
      "scheduled_at": "2099-01-15T09:00:00Z",
      "display_timezone": "UTC",
      "asset_ids": [],
      "topic_tag": "Cooking",
      "post_type": "TEXT",
      "status": "accepted",
      "errors": [],
      "duplicate_of": null,
      "draft_revision": 3,
      "post": {
        "id": "90000000-0000-4000-8000-000000000004",
        "workspace_id": "11111111-1111-4111-8111-111111111111",
        "social_account_id": "22222222-2222-4222-8222-222222222222",
        "platform": "threads",
        "destination": {
          "social_account_id": "22222222-2222-4222-8222-222222222222",
          "platform": "threads",
          "platform_user_id": "12345",
          "account_label": "Fictional Threads account"
        },
        "caption": "A fictional announcement.",
        "hashtags": [],
        "media": [],
        "publish_options": {
          "post_type": "TEXT",
          "topic_tag": "Cooking"
        },
        "scheduled_at": "2099-01-15T09:00:00Z",
        "display_timezone": "UTC",
        "expires_at": null,
        "status": "scheduled",
        "version": 1,
        "automatic_retry_enabled": false,
        "delete_requested_at": null,
        "published_at": null,
        "deleted_at": null,
        "provider_post_id": null,
        "permalink": null,
        "project_id": null,
        "batch_id": "50000000-0000-4000-8000-000000000004",
        "source_ref": null,
        "created_at": "2099-01-14T09:00:00Z",
        "updated_at": "2099-01-14T09:00:00Z"
      }
    }
  ],
  "import_errors": [],
  "counts": {
    "total": 1,
    "ready": 0,
    "invalid": 0,
    "accepted": 1,
    "not_accepted": 0,
    "uncertain": 0,
    "not_attempted": 0
  },
  "complete": true
}

MCP: sosoapi_submit_threads_csv