v1Ressourcen/Distribution/postContent-Paket in der Vorschau prüfen

Content-Paket in der Vorschau prüfen

Validiert ein Paket für einen Kunden und meldet Element für Element, was ein Import bewirken würde. Es wird nichts geschrieben.

post/api/v1/distribution/packages/preview
distribution:write
Query-Parameter
clientIdstringoptional
Der Kunde, wenn der Body eine rohe text/markdown-Datei ist.
Anfragetext
clientIdstringerforderlich
Der Kunde, zu dem das Paket gehört.
manifestobjectoptional
Ein synup.distribution/v1-Manifest: die Kampagne, ihre Dateien (assets) und eine Variante pro Zielbeitrag.
schemastring (synup.distribution/v1)erforderlich
campaignobjecterforderlich
externalIdstringerforderlich
versionintegererforderlich
titlestringerforderlich
templatestringoptional
subjectstringoptional
canonicalUrlstringoptional
anchorVideoUrlstringoptional
customerReviewRequiredbooleanoptional
allowRawAssetsbooleanoptional
slackobjectoptional
teamIdstringoptional
channelIdstringoptional
threadTsstringoptional
assetsarray of objecterforderlich
idstringerforderlich
rolestring (video | image | cover | captions | document | raw)erforderlich
filenamestringerforderlich
mimestringerforderlich
bytesintegererforderlich
sha256stringerforderlich
widthintegeroptional
heightintegeroptional
durationSecnumberoptional
languagestringoptional
sourceobjectoptional
urlstringoptional
provenanceobjectoptional
attributionRequiredbooleanoptional
customerReviewRequiredbooleanoptional
variantsarray of objecterforderlich
keystringerforderlich
platformstring (facebook | instagram | linkedin | x | pinterest | threads | bluesky | mastodon | reddit | medium | substack | vimeo | dailymotion | youtube | tiktok)erforderlich
connectionIdstringoptional
formatstring (feed | video | reel | short | image | carousel | article | link | text)optional
textstringoptional
titlestringoptional
descriptionstringoptional
mediaarray of stringoptional
coverstringoptional
captionsstringoptional
firstCommentstringoptional
linkobjectoptional
urlstringoptional
utmobjectoptional
articleobjectoptional
titlestringoptional
subtitlestringoptional
htmlstringoptional
redditobjectoptional
subredditstringoptional
flairstringoptional
postTypestring (text | link | image | video)optional
tagsarray of stringoptional
videoobjectoptional
privacystringoptional
categorystringoptional
isForKidsbooleanoptional
playlistIdstringoptional
tiktokobjectoptional
disableCommentbooleanoptional
disableDuetbooleanoptional
disableStitchbooleanoptional
brandContentbooleanoptional
suggestedAtstringoptional
timezonestringoptional
customerReviewRequiredbooleanoptional
markdownstringoptional
Eine Series-Markdown-Datei, die anstelle von manifest gesendet wird.
fileNamestringoptional
Der Name der Markdown-Datei. Ein .md-Name kennzeichnet die Zeichenfolge als Markdown.
filesarray of objectoptional
Größe und sha256 jeder Datei, die das Markdown nennt, zugeordnet über den Dateinamen. Erforderlich, um eine Serie mit Dateien zu importieren; die Vorschau akzeptiert sie auch ohne.
filenamestringerforderlich
bytesintegererforderlich
sha256stringerforderlich
widthintegeroptional
heightintegeroptional
durationSecnumberoptional
urlstringoptional
Ein https-Link, von dem Synup die Datei abruft, statt dass Sie sie hochladen.
intoSeriesIdstringoptional
Importiert die Datei als nächste Version dieser bestehenden Serie.
Antwort
dataobjectoptional
campaignobjectoptional
versionintegeroptional
versionStatestring (new | unchanged | conflict | older)optional
itemsarray of objectoptional
kindstring (asset | variant)optional
refstringoptional
outcomestring (created | revised | unchanged | update_available | published_unchanged | skipped)optional
postIdstringoptional
assetIdstringoptional
messagesarray of stringoptional
countsobjectoptional
markdownobjectoptional
Die eigenen, nach Zeilen nummerierten Fehler und Warnungen der Markdown-Datei sowie die darin genannten Beiträge und Dateien. Fehler müssen behoben werden; Warnungen können so importiert werden.
titlestringoptional
timezonestringoptional
errorsintegeroptional
warningsintegeroptional
issuesarray of objectoptional
lineintegererforderlich
Die Zeile in der Datei, gezählt ab 1.
postIndexintegeroptional
Der Beitrag, zu dem das Problem gehört (sein ##-Abschnitt), gezählt ab 0.
severitystring (error | warning)erforderlich
codestringerforderlich
Ein stabiler Code, zum Beispiel unknown_network, file_not_declared oder past_date.
paramsobjecterforderlich
postsarray of objectoptional
indexintegeroptional
lineintegeroptional
headingstringoptional
keystringoptional
platformstringoptional
includedbooleanoptional
filesarray of objectoptional
filenamestringoptional
assetIdstringoptional
rolestring (video | image | cover | captions | document)optional
mimestringoptional
lineintegeroptional
attachedbooleanoptional
Fehler
400Der Anfrage fehlt ein erforderlicher Parameter, oder sie ist anderweitig fehlerhaft.
401API-Schlüssel fehlt, ist ungültig, abgelaufen oder widerrufen.
403Dem Schlüssel fehlt die erforderliche Berechtigung, oder er ist für diesen Kunden/Standort nicht autorisiert.
404Die Ressource wurde nicht gefunden oder gehört nicht zu Ihrer Agentur.
409Die Anfrage steht im Widerspruch zum aktuellen Zustand der Ressource — zum Beispiel beim Ändern der E-Mail-Adresse oder Telefonnummer eines Empfängers, dem bereits eine Nachricht gesendet wurde, oder bei einer Team-Einladung, die bereits akzeptiert wurde (oder noch nicht akzeptiert wurde).
429Zu viele Anfragen. Versuchen Sie es nach der im Retry-After-Header angegebenen Anzahl Sekunden erneut.
post/api/v1/distribution/packages/preview
Ihr API-Schlüssel
clientId
Anfragetext*
{
  "data": {
    "campaign": {
      "externalId": "topic-local-seo-2026-10",
      "title": "Why local SEO still wins",
      "exists": false,
      "currentVersion": 0,
      "template": "topic",
      "customerReviewRequired": false
    },
    "version": 1,
    "versionState": "new",
    "items": [
      {
        "kind": "asset",
        "ref": "short-1",
        "outcome": "created",
        "messages": []
      },
      {
        "kind": "asset",
        "ref": "short-1-cover",
        "outcome": "created",
        "messages": []
      },
      {
        "kind": "variant",
        "ref": "short-1-linkedin",
        "outcome": "created",
        "messages": []
      },
      {
        "kind": "variant",
        "ref": "short-1-instagram",
        "outcome": "skipped",
        "messages": [
          "account con_999 is not one of this client's instagram accounts"
        ]
      }
    ],
    "counts": {
      "assets": 2,
      "variants": 2,
      "skipped": 0
    }
  }
}

Neu bei der Synup-API?