ai

POST /v1/ai/recipes

Create an AI posting recipe.

כל נקודות הקצה מסוג ai

אימות

שלחו מפתח API כאסימון נושא (bearer token). על המפתח לכלול את הרשאה links.edit; מפתח שאינו כולל אותה יידחה בסטטוס 403, ולא 404.

המקום שבו מזהה הארגון שלך נכנס

נקודת קצה זו מקבלת את org_id כשדה בגוף ה-JSON.

מזהה הארגון שלך נמצא במסוף מפתחות ה-API בלוח הבקרה שלך, לצד המפתח עצמו. זהו אותו מזהה בכל קריאה שאתה מבצע.

נסה זאת

החלף כל דבר בסוגריים זוויתיים בערכים משלך, ואת מציין מיקום המפתח במפתח מלוח הבקרה שלך.

curl -X POST https://api.zinndigital.com/v1/ai/recipes \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "name": <string> }'

מחובר? קונסולת ה-API בלוח הבקרה שלך מזינה את מזהה הארגון האמיתי שלך ואת המפתח שלך, ומריצה את הבקשה מול ה-API הפיזי כך שתוכל לראות את התגובה בפועל. פתח נקודת קצה זו במסוף ה-API

פרטים

⛔ Bounds are enforced at **authoring** time, not at run time: more than five anchors or more than ten posts per run would be refused on every run, so a recipe saved with them would look fine, sit on a schedule, and fail silently every night. Requires `links.edit` — the same key as writing a post by hand, because that is what this is.

גוף הבקשה

שםסוגנדרשמה זה
namestringכן
is_enabledbooleanלא
briefstringלא
tonestringלא
word_countintegerלא
languagestringלא
posts_per_runintegerלא
providerstringלא
model_idstringלא
model_familystringלא
anchorsAiAnchor[]לא
anchor_policystring<none, every_post, rotate>לא
link_set_idstringלאThe reusable link set this recipe draws its links from, or `null` to use the recipe's own `anchors`. When set it **replaces** `anchors` rather than adding to them — two sources…
cadencestring<manual, daily, weekly, monthly>לא
cadence_hour_utcintegerלא
cadence_dowintegerלא
cadence_domintegerלא
target_kindstring<none, sites, site_group, cms_targets>לא
target_sitesstring[]לא
target_site_group_idobjectלא
target_cms_target_idsstring[]לא
target_categorystringלא
requires_capabilitiesstring[]לא
capability_policystring<refuse, degrade, ask>לא
image_providerstringלא
image_modelstringלא
featured_imagebooleanלא
inline_image_countintegerלא
inline_placementstring<after_intro, between_sections, end>לא
image_stylestringלא
publish_modestring<draft, schedule, publish>לא
schedule_offset_hoursintegerלא
schedule_stagger_minutesintegerלא
org_idUuidלאUUIDv7 identifier — sortable by creation time (docs/02 §8).

תשובה

שםסוגנדרשמה זה
idUuidכןUUIDv7 identifier — sortable by creation time (docs/02 §8).
namestringכן
is_enabledbooleanכן
briefstringלא
tonestringלא
word_countintegerלא
languagestringלאBCP-47, or empty for "the language the brief is written in".
posts_per_runintegerלא⛔ Capped at 10. Two hundred articles from one brief are two hundred near-identical articles, which is a **footprint** — the exact thing the Footprint-Free line is sold to avoid.
providerstringלאBlank = whatever the funding route resolves to.
model_idstringלאBlank = the newest verified model in the family.
model_familystringלא
anchorsAiAnchor[]לא
anchor_policystring<none, every_post, rotate>לא
link_set_idstringלאThe reusable link set this recipe draws its links from, or `null` to use the recipe's own `anchors`. When set it **replaces** `anchors` rather than adding to them — two sources…
cadencestring<manual, daily, weekly, monthly>כן
cadence_hour_utcintegerלא
cadence_dowintegerלא0 = Monday.
cadence_domintegerלא⛔ Never 29-31: a monthly recipe set to the 31st would skip February silently, and a schedule that stops without an error is the failure this feature prevents.
next_run_atobjectלא
last_run_atobjectלא
target_kindstring<none, sites, site_group, cms_targets>לא
target_sitesstring[]לא
target_site_group_idobjectלא
target_cms_target_idsstring[]לא
target_categorystringלא
requires_capabilitiesstring[]לאCapability ids the target must support, e.g. `cms_target:featured_image`. Enforced on every run: each site's capabilities are read from its CMS target and any shortfall is handl…
capability_policystring<refuse, degrade, ask>לאWhat to do when a target cannot do something the recipe requires. Default `refuse` — silently dropping a requested field is the failure this exists to stop. `refuse` skips that…
image_providerstringלא
image_modelstringלא
featured_imagebooleanלא
inline_image_countintegerלא
inline_placementstring<after_intro, between_sections, end>לא
image_stylestringלא
publish_modestring<draft, schedule, publish>כן⚖️ Owner ruling 2026-08-20: a **per-recipe** switch defaulting to `draft`. `draft` writes into the library and schedules nothing; `schedule` queues placements the customer can s…
schedule_offset_hoursintegerלא
schedule_stagger_minutesintegerלאMinutes between consecutive posts in one run. ⛔ Not cosmetic: a network whose articles all appear in the same minute is a footprint.
blocking_providersstring[]לאProviders this recipe needs a working key for and does not have. Empty means it can run now. ⚖️ A recipe naming no provider is never blocked — credits are the default route and…
created_atstringכן
updated_atstringלא

שגיאות שנקודה קצה זו עשויה להחזיר

401 · 403 · 422 · 429