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

Schemaläggning och publicering

Förhandsvisa Threads-CSV

Förhandsvisa högst 50 Threads-CSV-rader för ett anslutet arbetsytekonto. Validera registrerade resurs-ID:n och uttryckliga scheman; inga publiceringsskrivningar.

POST /studio-api/threads-csv/preview

Kontrakt granskat: · sha256:11debf801a5e6096

Översikt

Förhandsvisa högst 50 Threads-CSV-rader för ett anslutet arbetsytekonto. Validera registrerade resurs-ID:n och uttryckliga scheman; inga publiceringsskrivningar.

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
editor
Å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
read-only CSV validation or existing per-row draft receipts; no aggregate import job or automatic submission

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)$"
social_account_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)$"
csvstringObligatoriskt i överordnat objekt
  • minLength: 1
  • maxLength: 200000
row_numbersarrayValfritt / objekt
  • minItems: 1
  • maxItems: 50
row_numbers[]integerValfritt / objekt
  • minimum: 1
  • maximum: 50
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)$"
    },
    "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
      }
    }
  },
  "required": [
    "workspace_id",
    "social_account_id",
    "import_id",
    "csv"
  ],
  "additionalProperties": false
}

Svar och slutförande

HTTP-status vid framgång: 200. När åtgärden är klar: read-only CSV validation or existing per-row draft receipts; no aggregate import job or automatic submission.

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—
contract_versionstringObligatoriskt i överordnat objekt
  • const: "threads-csv/v1"
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)$"
social_account_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)$"
preview_digeststringObligatoriskt i överordnat objekt
  • pattern: "^[a-f0-9]{64}$"
selected_row_numbersarrayObligatoriskt i överordnat objekt
  • maxItems: 50
selected_row_numbers[]integerValfritt / objekt
  • minimum: 1
  • maximum: 50
rowsarrayObligatoriskt i överordnat objekt
  • maxItems: 50
rows[]objectValfritt / objekt—
rows[].row_numberintegerObligatoriskt i överordnat objekt
  • minimum: 1
  • maximum: 50
rows[].row_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)$"
rows[].draft_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)$"
rows[].save_mutation_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)$"
rows[].submission_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)$"
rows[].captionstringObligatoriskt i överordnat objekt
  • maxLength: 5000
rows[].scheduled_atstring | nullObligatoriskt i överordnat objekt—
rows[].scheduled_atanyOf 1stringObligatoriskt i överordnat objekt
  • 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 2nullObligatoriskt i överordnat objekt—
rows[].display_timezonestringObligatoriskt i överordnat objekt
  • maxLength: 128
rows[].asset_idsarrayObligatoriskt i överordnat objekt
  • maxItems: 20
rows[].asset_ids[]stringValfritt / objekt
  • pattern: "^[1-9]\\d{0,15}$"
rows[].topic_tagstring | nullObligatoriskt i överordnat objekt—
rows[].topic_taganyOf 1stringObligatoriskt i överordnat objekt
  • maxLength: 50
rows[].topic_taganyOf 2nullObligatoriskt i överordnat objekt—
rows[].post_typestring | nullObligatoriskt i överordnat objekt—
rows[].post_typeanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["TEXT","IMAGE","VIDEO","CAROUSEL"]
rows[].post_typeanyOf 2nullObligatoriskt i överordnat objekt—
rows[].statusstringObligatoriskt i överordnat objekt
  • enum: ["ready","invalid","accepted","not_accepted","uncertain","not_attempted"]
rows[].errorsarrayObligatoriskt i överordnat objekt
  • maxItems: 10
rows[].errors[]objectValfritt / objekt—
rows[].errors[].codestringObligatoriskt i överordnat objekt
  • maxLength: 80
rows[].errors[].messagestringObligatoriskt i överordnat objekt
  • maxLength: 300
rows[].duplicate_ofinteger | nullObligatoriskt i överordnat objekt—
rows[].duplicate_ofanyOf 1integerObligatoriskt i överordnat objekt
  • minimum: 1
  • maximum: 50
rows[].duplicate_ofanyOf 2nullObligatoriskt i överordnat objekt—
rows[].draft_revisioninteger | nullObligatoriskt i överordnat objekt—
rows[].draft_revisionanyOf 1integerObligatoriskt i överordnat objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].draft_revisionanyOf 2nullObligatoriskt i överordnat objekt—
rows[].postobject | nullObligatoriskt i överordnat objekt—
rows[].postanyOf 1objectObligatoriskt i överordnat objekt—
rows[].post.idanyOf 1stringObligatoriskt i överordnat objekt
  • 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 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)$"
rows[].post.social_account_idanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.social_account_idanyOf 1 / anyOf 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)$"
rows[].post.social_account_idanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
rows[].post.platformanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["instagram","threads","facebook","youtube","x"]
rows[].post.destinationanyOf 1objectObligatoriskt i överordnat objekt—
rows[].post.destination.social_account_idanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.destination.social_account_idanyOf 1 / anyOf 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)$"
rows[].post.destination.social_account_idanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
rows[].post.destination.platformanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["instagram","threads","facebook","youtube","x"]
rows[].post.destination.platform_user_idanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.destination.account_labelanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.captionanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.hashtagsanyOf 1arrayObligatoriskt i överordnat objekt—
rows[].post.hashtags[]anyOf 1stringValfritt / objekt—
rows[].post.mediaanyOf 1arrayObligatoriskt i överordnat objekt—
rows[].post.media[]anyOf 1objectValfritt / objekt—
rows[].post.media[].kindanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["image","video"]
rows[].post.media[].urlanyOf 1stringObligatoriskt i överordnat objekt
  • format: "uri"
rows[].post.media[].cover_urlanyOf 1string | nullValfritt / objekt—
rows[].post.media[].cover_urlanyOf 1 / anyOf 1stringValfritt / objekt
  • format: "uri"
rows[].post.media[].cover_urlanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.media[].cover_asset_idanyOf 1integer | nullValfritt / objekt—
rows[].post.media[].cover_asset_idanyOf 1 / anyOf 1integerValfritt / objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.media[].cover_asset_idanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.media[].asset_idanyOf 1integer | nullValfritt / objekt—
rows[].post.media[].asset_idanyOf 1 / anyOf 1integerValfritt / objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.media[].asset_idanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.media[].mime_typeanyOf 1string | nullValfritt / objekt—
rows[].post.media[].mime_typeanyOf 1 / anyOf 1stringValfritt / objekt
  • minLength: 1
  • maxLength: 160
rows[].post.media[].mime_typeanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.media[].preview_urlanyOf 1string | nullValfritt / objekt

Tillfällig behörig läs-URL; behåll url som beständig medieidentitet för Scheduled Post.

—
rows[].post.media[].preview_urlanyOf 1 / anyOf 1stringValfritt / objekt
  • format: "uri"
rows[].post.media[].preview_urlanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.media[].cover_preview_urlanyOf 1string | nullValfritt / objekt

Tillfällig behörig läs-URL för omslag; behåll cover_url som beständig medieidentitet.

—
rows[].post.media[].cover_preview_urlanyOf 1 / anyOf 1stringValfritt / objekt
  • format: "uri"
rows[].post.media[].cover_preview_urlanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.media[].preview_expires_atanyOf 1string | nullValfritt / objekt—
rows[].post.media[].preview_expires_atanyOf 1 / anyOf 1stringValfritt / objekt
  • 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 2nullValfritt / objekt—
rows[].post.link_urlanyOf 1string | nullValfritt / objekt—
rows[].post.link_urlanyOf 1 / anyOf 1stringValfritt / objekt
  • format: "uri"
rows[].post.link_urlanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.publish_optionsanyOf 1objectObligatoriskt i överordnat objekt—
rows[].post.publish_options.post_typeanyOf 1stringValfritt / objekt
  • enum: ["TEXT","LINK","IMAGE","MULTI_IMAGE","VIDEO","CAROUSEL","REELS","STORY_IMAGE","STORY_VIDEO","REPOST","SHORT"]
rows[].post.publish_options.location_idanyOf 1stringValfritt / objekt
  • minLength: 1
rows[].post.publish_options.share_to_feedanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.collaboratorsanyOf 1arrayValfritt / objekt
  • maxItems: 3
rows[].post.publish_options.collaborators[]anyOf 1stringValfritt / objekt
  • minLength: 1
rows[].post.publish_options.first_commentanyOf 1stringValfritt / objekt
  • minLength: 1
  • maxLength: 2200
rows[].post.publish_options.topic_taganyOf 1stringValfritt / objekt
  • minLength: 1
rows[].post.publish_options.thumb_offset_msanyOf 1integerValfritt / objekt
  • minimum: 0
  • maximum: 9007199254740991
rows[].post.publish_options.titleanyOf 1stringValfritt / objekt
  • maxLength: 255
rows[].post.publish_options.youtube_privacy_statusanyOf 1stringValfritt / objekt
  • enum: ["private","unlisted","public"]
rows[].post.publish_options.youtube_category_idanyOf 1stringValfritt / objekt
  • pattern: "^\\d+$"
rows[].post.publish_options.youtube_contains_synthetic_mediaanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.descriptionanyOf 1stringValfritt / objekt
  • maxLength: 5000
rows[].post.publish_options.category_idanyOf 1stringValfritt / objekt
  • pattern: "^\\d+$"
rows[].post.publish_options.privacy_statusanyOf 1stringValfritt / objekt
  • enum: ["private","unlisted","public"]
rows[].post.publish_options.cancellation_modeanyOf 1stringValfritt / objekt
  • enum: ["DELETE","UNSCHEDULE_KEEP_PRIVATE"]
rows[].post.publish_options.tagsanyOf 1arrayValfritt / objekt—
rows[].post.publish_options.tags[]anyOf 1stringValfritt / objekt—
rows[].post.publish_options.default_languageanyOf 1stringValfritt / objekt—
rows[].post.publish_options.localizationsanyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.localizations.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.licenseanyOf 1stringValfritt / objekt
  • enum: ["youtube","creativeCommon"]
rows[].post.publish_options.embeddableanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.public_stats_viewableanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.self_declared_made_for_kidsanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.contains_synthetic_mediaanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.has_paid_product_placementanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.recording_dateanyOf 1stringValfritt / objekt—
rows[].post.publish_options.notify_subscribersanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.thumbnail_asset_idanyOf 1integerValfritt / objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.publish_options.surface_expectationanyOf 1stringValfritt / objekt
  • const: "SHORT"
rows[].post.publish_options.brand_partneranyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.brand_partner.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.cover_asset_idanyOf 1integerValfritt / objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.publish_options.audio_nameanyOf 1stringValfritt / objekt—
rows[].post.publish_options.trial_paramsanyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.trial_params.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.is_ai_generatedanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.branded_content_sponsor_idsanyOf 1arrayValfritt / objekt—
rows[].post.publish_options.branded_content_sponsor_ids[]anyOf 1stringValfritt / objekt—
rows[].post.publish_options.is_paid_partnershipanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.media_optionsanyOf 1arrayValfritt / objekt—
rows[].post.publish_options.media_options[]anyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.media_options[].*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.reply_to_idanyOf 1stringValfritt / objekt—
rows[].post.publish_options.quote_post_idanyOf 1stringValfritt / objekt—
rows[].post.publish_options.repost_target_idanyOf 1stringValfritt / objekt—
rows[].post.publish_options.reply_controlanyOf 1stringValfritt / objekt—
rows[].post.publish_options.enable_reply_approvalsanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.link_attachmentanyOf 1stringValfritt / objekt
  • format: "uri"
rows[].post.publish_options.poll_attachmentanyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.poll_attachment.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.gif_attachmentanyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.gif_attachment.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.text_attachmentanyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.text_attachment.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.text_entitiesanyOf 1arrayValfritt / objekt—
rows[].post.publish_options.text_entities[]anyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.text_entities[].*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.is_spoiler_mediaanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.is_ghost_postanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.allowlisted_country_codesanyOf 1arrayValfritt / objekt—
rows[].post.publish_options.allowlisted_country_codes[]anyOf 1stringValfritt / objekt—
rows[].post.publish_options.crossreshare_to_iganyOf 1booleanValfritt / objekt—
rows[].post.publish_options.crossreshare_to_ig_dark_modeanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.auto_publish_textanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.publication_modeanyOf 1stringValfritt / objekt
  • enum: ["PUBLISH","DRAFT"]
rows[].post.publish_options.backdated_timeanyOf 1numberValfritt / objekt—
rows[].post.publish_options.backdated_time_granularityanyOf 1stringValfritt / objekt
  • enum: ["year","month","day","hour","minute"]
rows[].post.publish_options.placeanyOf 1stringValfritt / objekt—
rows[].post.publish_options.feed_targetinganyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.feed_targeting.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.targetinganyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.targeting.*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.child_attachmentsanyOf 1arrayValfritt / objekt—
rows[].post.publish_options.child_attachments[]anyOf 1objectValfritt / objekt
  • additionalProperties: {}
rows[].post.publish_options.child_attachments[].*anyOf 1any JSON valueValfritt / objekt—
rows[].post.publish_options.multi_share_end_cardanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.multi_share_optimizedanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.unpublished_content_typeanyOf 1stringValfritt / objekt—
rows[].post.publish_options.no_storyanyOf 1booleanValfritt / objekt—
rows[].post.publish_options.crossposted_video_idanyOf 1stringValfritt / objekt—
rows[].post.publish_options.sphericalanyOf 1booleanValfritt / objekt—
rows[].post.scheduled_atanyOf 1stringObligatoriskt i överordnat objekt—
rows[].post.display_timezoneanyOf 1stringObligatoriskt i överordnat objekt
  • minLength: 1
  • maxLength: 80
rows[].post.local_scheduled_atanyOf 1string | nullValfritt / objekt—
rows[].post.local_scheduled_atanyOf 1 / anyOf 1stringValfritt / objekt
  • pattern: "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,6})?)?$"
rows[].post.local_scheduled_atanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.schedule_timezoneanyOf 1string | nullValfritt / objekt—
rows[].post.schedule_timezoneanyOf 1 / anyOf 1stringValfritt / objekt
  • minLength: 1
  • maxLength: 80
rows[].post.schedule_timezoneanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.schedule_dst_disambiguationanyOf 1string | nullValfritt / objekt—
rows[].post.schedule_dst_disambiguationanyOf 1 / anyOf 1stringValfritt / objekt
  • enum: ["exact","earlier","later"]
rows[].post.schedule_dst_disambiguationanyOf 1 / anyOf 2nullValfritt / objekt—
rows[].post.schedule_intent_stateanyOf 1stringValfritt / objekt
  • enum: ["verified","legacy_unverified"]
rows[].post.expires_atanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.statusanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["scheduled","publishing","published","failed","expired","needs_reschedule","cancelled","deleted"]
rows[].post.versionanyOf 1integerObligatoriskt i överordnat objekt
  • maximum: 9007199254740991
  • exclusiveMinimum: 0
rows[].post.automatic_retry_enabledanyOf 1booleanObligatoriskt i överordnat objekt—
rows[].post.delete_requested_atanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.deletionanyOf 1objectValfritt / objekt—
rows[].post.deletion.stateanyOf 1stringObligatoriskt i överordnat objekt
  • enum: ["pending","retry_scheduled","failed","unconfirmed","confirmed","unpublished_cancelled"]
rows[].post.deletion.retry_atanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.deletion.retry_atanyOf 1 / anyOf 1stringObligatoriskt i överordnat objekt
  • 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 2nullObligatoriskt i överordnat objekt—
rows[].post.published_atanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.deleted_atanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.provider_post_idanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.permalinkanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.permalinkanyOf 1 / anyOf 1stringObligatoriskt i överordnat objekt
  • format: "uri"
rows[].post.permalinkanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
rows[].post.created_atanyOf 1stringObligatoriskt i överordnat objekt—
rows[].post.updated_atanyOf 1stringObligatoriskt i överordnat objekt—
rows[].post.project_idanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.project_idanyOf 1 / anyOf 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)$"
rows[].post.project_idanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
rows[].post.batch_idanyOf 1string | nullObligatoriskt i överordnat objekt—
rows[].post.batch_idanyOf 1 / anyOf 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)$"
rows[].post.batch_idanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
rows[].post.source_refanyOf 1object | nullObligatoriskt i överordnat objekt—
rows[].post.source_refanyOf 1 / anyOf 1objectObligatoriskt i överordnat objekt
  • additionalProperties: {}
rows[].post.source_ref.*anyOf 1 / anyOf 1any JSON valueValfritt / objekt—
rows[].post.source_refanyOf 1 / anyOf 2nullObligatoriskt i överordnat objekt—
rows[].postanyOf 2nullObligatoriskt i överordnat objekt—
import_errorsarrayObligatoriskt i överordnat objekt
  • maxItems: 10
import_errors[]objectValfritt / objekt—
import_errors[].codestringObligatoriskt i överordnat objekt
  • maxLength: 80
import_errors[].messagestringObligatoriskt i överordnat objekt
  • maxLength: 300
countsobjectObligatoriskt i överordnat objekt—
counts.totalintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
counts.readyintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
counts.invalidintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
counts.acceptedintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
counts.not_acceptedintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
counts.uncertainintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
counts.not_attemptedintegerObligatoriskt i överordnat objekt
  • minimum: 0
  • maximum: 50
completebooleanObligatoriskt i överordnat objekt—
Fullständigt 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"
  ]
}

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 AI-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",
  "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
  ]
}

cURL

curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/threads-csv/preview" \
  -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/preview", {
  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
  ]
})
});
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/preview < request.json

Syntetiskt svarsexempel

{
  "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": "ready",
      "errors": [],
      "duplicate_of": null,
      "draft_revision": null,
      "post": null
    }
  ],
  "import_errors": [],
  "counts": {
    "total": 1,
    "ready": 1,
    "invalid": 0,
    "accepted": 0,
    "not_accepted": 0,
    "uncertain": 0,
    "not_attempted": 0
  },
  "complete": false
}

MCP: sosoapi_preview_threads_csv