الجدولة والنشر
إعادة محاولة منشور مجدول
إعادة محاولة منشور مجدول فاشل، مع scheduled_at جديد اختيارياً. يلزم expected_version.
POST /studio-api/scheduled-posts/retryمراجعة العقد: · sha256:563d2d581da0ad29
نظرة عامة
إعادة محاولة منشور مجدول فاشل، مع scheduled_at جديد اختيارياً. يلزم expected_version.
قد يعني نجاح HTTP قبول الطلب لا اكتماله. للعمل الخلفي، احفظ المعرّف المُعاد وتابع العملية نفسها حتى تنتهي. لا يُعدّ المنشور المجدول أوالمقبول منشوراً حتى تأكيد المنصة؛ انتهاء مهلة العميل لا يثبت النتيجة.
المصادقة والأذونات
لا يستخدم الرمز إلا حقوق مالكه. يفحص كل طلب عضوية مساحة العمل وملكية المورد والمساحات المحددة والإمكانات الممنوحة. يغيّر core و full الأدوات المعروضة؛ ولا يمنحان وصولاً.
حقول الطلب
تعني «مطلوب» داخل الكائن الأب والفرع المختار. الحقل الابن المطلوب لا يجعل الأب الاختياري مطلوباً. نُسخت القواعد وأسماء الحقول أدناه من العقد.
| الحقل / الفرع | النوع / مطلوب | القيود |
|---|---|---|
$ | objectمطلوب في العنصر الأب |
|
id | stringمطلوب في العنصر الأب |
|
expected_version | integerمطلوب في العنصر الأب |
|
scheduled_at | stringاختياري / عنصر |
|
مخطط JSON Schema الكامل
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"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}$"
},
"expected_version": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"scheduled_at": {
"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)))$"
}
},
"required": [
"id",
"expected_version"
],
"additionalProperties": false
}الاستجابة والاكتمال
رموز نجاح HTTP: 200. عندما تكتمل العملية: terminal publication outcome.
قد يعني نجاح HTTP قبول الطلب لا اكتماله. للعمل الخلفي، احفظ المعرّف المُعاد وتابع العملية نفسها حتى تنتهي. لا يُعدّ المنشور المجدول أوالمقبول منشوراً حتى تأكيد المنصة؛ انتهاء مهلة العميل لا يثبت النتيجة.
تعني «مطلوب» داخل الكائن الأب والفرع المختار. الحقل الابن المطلوب لا يجعل الأب الاختياري مطلوباً. نُسخت القواعد وأسماء الحقول أدناه من العقد.
| الحقل / الفرع | النوع / مطلوب | القيود |
|---|---|---|
$ | objectمطلوب في العنصر الأب | — |
post | objectمطلوب في العنصر الأب | — |
post.id | stringمطلوب في العنصر الأب |
|
post.workspace_id | stringمطلوب في العنصر الأب |
|
post.social_account_id | string | nullمطلوب في العنصر الأب | — |
post.social_account_idanyOf 1 | stringمطلوب في العنصر الأب |
|
post.social_account_idanyOf 2 | nullمطلوب في العنصر الأب | — |
post.platform | stringمطلوب في العنصر الأب |
|
post.destination | objectمطلوب في العنصر الأب | — |
post.destination.social_account_id | string | nullمطلوب في العنصر الأب | — |
post.destination.social_account_idanyOf 1 | stringمطلوب في العنصر الأب |
|
post.destination.social_account_idanyOf 2 | nullمطلوب في العنصر الأب | — |
post.destination.platform | stringمطلوب في العنصر الأب |
|
post.destination.platform_user_id | string | nullمطلوب في العنصر الأب | — |
post.destination.platform_user_idanyOf 1 | stringمطلوب في العنصر الأب | — |
post.destination.platform_user_idanyOf 2 | nullمطلوب في العنصر الأب | — |
post.destination.account_label | string | nullمطلوب في العنصر الأب | — |
post.destination.account_labelanyOf 1 | stringمطلوب في العنصر الأب | — |
post.destination.account_labelanyOf 2 | nullمطلوب في العنصر الأب | — |
post.caption | string | nullمطلوب في العنصر الأب | — |
post.captionanyOf 1 | stringمطلوب في العنصر الأب | — |
post.captionanyOf 2 | nullمطلوب في العنصر الأب | — |
post.hashtags | arrayمطلوب في العنصر الأب | — |
post.hashtags[] | stringاختياري / عنصر | — |
post.media | arrayمطلوب في العنصر الأب | — |
post.media[] | objectاختياري / عنصر | — |
post.media[].kind | stringمطلوب في العنصر الأب |
|
post.media[].url | stringمطلوب في العنصر الأب |
|
post.media[].cover_url | string | nullاختياري / عنصر | — |
post.media[].cover_urlanyOf 1 | stringاختياري / عنصر |
|
post.media[].cover_urlanyOf 2 | nullاختياري / عنصر | — |
post.media[].cover_asset_id | integer | nullاختياري / عنصر | — |
post.media[].cover_asset_idanyOf 1 | integerاختياري / عنصر |
|
post.media[].cover_asset_idanyOf 2 | nullاختياري / عنصر | — |
post.media[].asset_id | integer | nullاختياري / عنصر | — |
post.media[].asset_idanyOf 1 | integerاختياري / عنصر |
|
post.media[].asset_idanyOf 2 | nullاختياري / عنصر | — |
post.media[].mime_type | string | nullاختياري / عنصر | — |
post.media[].mime_typeanyOf 1 | stringاختياري / عنصر |
|
post.media[].mime_typeanyOf 2 | nullاختياري / عنصر | — |
post.media[].preview_url | string | nullاختياري / عنصر | URL قراءة مؤقت ومفوّض؛ احتفظ بـ url بوصفه هوية وسائط Scheduled Post المخزّنة. — |
post.media[].preview_urlanyOf 1 | stringاختياري / عنصر |
|
post.media[].preview_urlanyOf 2 | nullاختياري / عنصر | — |
post.media[].cover_preview_url | string | nullاختياري / عنصر | URL قراءة مؤقت ومفوّض للغلاف؛ احتفظ بـ cover_url بوصفه هوية الوسائط المخزّنة. — |
post.media[].cover_preview_urlanyOf 1 | stringاختياري / عنصر |
|
post.media[].cover_preview_urlanyOf 2 | nullاختياري / عنصر | — |
post.media[].preview_expires_at | string | nullاختياري / عنصر | — |
post.media[].preview_expires_atanyOf 1 | stringاختياري / عنصر |
|
post.media[].preview_expires_atanyOf 2 | nullاختياري / عنصر | — |
post.link_url | string | nullاختياري / عنصر | — |
post.link_urlanyOf 1 | stringاختياري / عنصر |
|
post.link_urlanyOf 2 | nullاختياري / عنصر | — |
post.publish_options | objectمطلوب في العنصر الأب | — |
post.publish_options.post_type | stringاختياري / عنصر |
|
post.publish_options.location_id | stringاختياري / عنصر |
|
post.publish_options.share_to_feed | booleanاختياري / عنصر | — |
post.publish_options.collaborators | arrayاختياري / عنصر |
|
post.publish_options.collaborators[] | stringاختياري / عنصر |
|
post.publish_options.first_comment | stringاختياري / عنصر |
|
post.publish_options.topic_tag | stringاختياري / عنصر |
|
post.publish_options.thumb_offset_ms | integerاختياري / عنصر |
|
post.publish_options.title | stringاختياري / عنصر |
|
post.publish_options.youtube_privacy_status | stringاختياري / عنصر |
|
post.publish_options.youtube_category_id | stringاختياري / عنصر |
|
post.publish_options.youtube_contains_synthetic_media | booleanاختياري / عنصر | — |
post.publish_options.description | stringاختياري / عنصر |
|
post.publish_options.category_id | stringاختياري / عنصر |
|
post.publish_options.privacy_status | stringاختياري / عنصر |
|
post.publish_options.cancellation_mode | stringاختياري / عنصر |
|
post.publish_options.tags | arrayاختياري / عنصر | — |
post.publish_options.tags[] | stringاختياري / عنصر | — |
post.publish_options.default_language | stringاختياري / عنصر | — |
post.publish_options.localizations | objectاختياري / عنصر |
|
post.publish_options.localizations.* | any JSON valueاختياري / عنصر | — |
post.publish_options.license | stringاختياري / عنصر |
|
post.publish_options.embeddable | booleanاختياري / عنصر | — |
post.publish_options.public_stats_viewable | booleanاختياري / عنصر | — |
post.publish_options.self_declared_made_for_kids | booleanاختياري / عنصر | — |
post.publish_options.contains_synthetic_media | booleanاختياري / عنصر | — |
post.publish_options.has_paid_product_placement | booleanاختياري / عنصر | — |
post.publish_options.recording_date | stringاختياري / عنصر | — |
post.publish_options.notify_subscribers | booleanاختياري / عنصر | — |
post.publish_options.thumbnail_asset_id | integerاختياري / عنصر |
|
post.publish_options.surface_expectation | stringاختياري / عنصر |
|
post.publish_options.brand_partner | objectاختياري / عنصر |
|
post.publish_options.brand_partner.* | any JSON valueاختياري / عنصر | — |
post.publish_options.cover_asset_id | integerاختياري / عنصر |
|
post.publish_options.audio_name | stringاختياري / عنصر | — |
post.publish_options.trial_params | objectاختياري / عنصر |
|
post.publish_options.trial_params.* | any JSON valueاختياري / عنصر | — |
post.publish_options.is_ai_generated | booleanاختياري / عنصر | — |
post.publish_options.branded_content_sponsor_ids | arrayاختياري / عنصر | — |
post.publish_options.branded_content_sponsor_ids[] | stringاختياري / عنصر | — |
post.publish_options.is_paid_partnership | booleanاختياري / عنصر | — |
post.publish_options.media_options | arrayاختياري / عنصر | — |
post.publish_options.media_options[] | objectاختياري / عنصر |
|
post.publish_options.media_options[].* | any JSON valueاختياري / عنصر | — |
post.publish_options.reply_to_id | stringاختياري / عنصر | — |
post.publish_options.quote_post_id | stringاختياري / عنصر | — |
post.publish_options.repost_target_id | stringاختياري / عنصر | — |
post.publish_options.reply_control | stringاختياري / عنصر | — |
post.publish_options.enable_reply_approvals | booleanاختياري / عنصر | — |
post.publish_options.link_attachment | stringاختياري / عنصر |
|
post.publish_options.poll_attachment | objectاختياري / عنصر |
|
post.publish_options.poll_attachment.* | any JSON valueاختياري / عنصر | — |
post.publish_options.gif_attachment | objectاختياري / عنصر |
|
post.publish_options.gif_attachment.* | any JSON valueاختياري / عنصر | — |
post.publish_options.text_attachment | objectاختياري / عنصر |
|
post.publish_options.text_attachment.* | any JSON valueاختياري / عنصر | — |
post.publish_options.text_entities | arrayاختياري / عنصر | — |
post.publish_options.text_entities[] | objectاختياري / عنصر |
|
post.publish_options.text_entities[].* | any JSON valueاختياري / عنصر | — |
post.publish_options.is_spoiler_media | booleanاختياري / عنصر | — |
post.publish_options.is_ghost_post | booleanاختياري / عنصر | — |
post.publish_options.allowlisted_country_codes | arrayاختياري / عنصر | — |
post.publish_options.allowlisted_country_codes[] | stringاختياري / عنصر | — |
post.publish_options.crossreshare_to_ig | booleanاختياري / عنصر | — |
post.publish_options.crossreshare_to_ig_dark_mode | booleanاختياري / عنصر | — |
post.publish_options.auto_publish_text | booleanاختياري / عنصر | — |
post.publish_options.publication_mode | stringاختياري / عنصر |
|
post.publish_options.backdated_time | numberاختياري / عنصر | — |
post.publish_options.backdated_time_granularity | stringاختياري / عنصر |
|
post.publish_options.place | stringاختياري / عنصر | — |
post.publish_options.feed_targeting | objectاختياري / عنصر |
|
post.publish_options.feed_targeting.* | any JSON valueاختياري / عنصر | — |
post.publish_options.targeting | objectاختياري / عنصر |
|
post.publish_options.targeting.* | any JSON valueاختياري / عنصر | — |
post.publish_options.child_attachments | arrayاختياري / عنصر | — |
post.publish_options.child_attachments[] | objectاختياري / عنصر |
|
post.publish_options.child_attachments[].* | any JSON valueاختياري / عنصر | — |
post.publish_options.multi_share_end_card | booleanاختياري / عنصر | — |
post.publish_options.multi_share_optimized | booleanاختياري / عنصر | — |
post.publish_options.unpublished_content_type | stringاختياري / عنصر | — |
post.publish_options.no_story | booleanاختياري / عنصر | — |
post.publish_options.crossposted_video_id | stringاختياري / عنصر | — |
post.publish_options.spherical | booleanاختياري / عنصر | — |
post.scheduled_at | stringمطلوب في العنصر الأب | — |
post.display_timezone | stringمطلوب في العنصر الأب |
|
post.local_scheduled_at | string | nullاختياري / عنصر | — |
post.local_scheduled_atanyOf 1 | stringاختياري / عنصر |
|
post.local_scheduled_atanyOf 2 | nullاختياري / عنصر | — |
post.schedule_timezone | string | nullاختياري / عنصر | — |
post.schedule_timezoneanyOf 1 | stringاختياري / عنصر |
|
post.schedule_timezoneanyOf 2 | nullاختياري / عنصر | — |
post.schedule_dst_disambiguation | string | nullاختياري / عنصر | — |
post.schedule_dst_disambiguationanyOf 1 | stringاختياري / عنصر |
|
post.schedule_dst_disambiguationanyOf 2 | nullاختياري / عنصر | — |
post.schedule_intent_state | stringاختياري / عنصر |
|
post.expires_at | string | nullمطلوب في العنصر الأب | — |
post.expires_atanyOf 1 | stringمطلوب في العنصر الأب | — |
post.expires_atanyOf 2 | nullمطلوب في العنصر الأب | — |
post.status | stringمطلوب في العنصر الأب |
|
post.version | integerمطلوب في العنصر الأب |
|
post.automatic_retry_enabled | booleanمطلوب في العنصر الأب | — |
post.delete_requested_at | string | nullمطلوب في العنصر الأب | — |
post.delete_requested_atanyOf 1 | stringمطلوب في العنصر الأب | — |
post.delete_requested_atanyOf 2 | nullمطلوب في العنصر الأب | — |
post.published_at | string | nullمطلوب في العنصر الأب | — |
post.published_atanyOf 1 | stringمطلوب في العنصر الأب | — |
post.published_atanyOf 2 | nullمطلوب في العنصر الأب | — |
post.deleted_at | string | nullمطلوب في العنصر الأب | — |
post.deleted_atanyOf 1 | stringمطلوب في العنصر الأب | — |
post.deleted_atanyOf 2 | nullمطلوب في العنصر الأب | — |
post.provider_post_id | string | nullمطلوب في العنصر الأب | — |
post.provider_post_idanyOf 1 | stringمطلوب في العنصر الأب | — |
post.provider_post_idanyOf 2 | nullمطلوب في العنصر الأب | — |
post.permalink | string | nullمطلوب في العنصر الأب | — |
post.permalinkanyOf 1 | stringمطلوب في العنصر الأب |
|
post.permalinkanyOf 2 | nullمطلوب في العنصر الأب | — |
post.created_at | stringمطلوب في العنصر الأب | — |
post.updated_at | stringمطلوب في العنصر الأب | — |
post.project_id | string | nullمطلوب في العنصر الأب | — |
post.project_idanyOf 1 | stringمطلوب في العنصر الأب |
|
post.project_idanyOf 2 | nullمطلوب في العنصر الأب | — |
post.batch_id | string | nullمطلوب في العنصر الأب | — |
post.batch_idanyOf 1 | stringمطلوب في العنصر الأب |
|
post.batch_idanyOf 2 | nullمطلوب في العنصر الأب | — |
post.source_ref | object | nullمطلوب في العنصر الأب | — |
post.source_refanyOf 1 | objectمطلوب في العنصر الأب |
|
post.source_ref.*anyOf 1 | any JSON valueاختياري / عنصر | — |
post.source_refanyOf 2 | nullمطلوب في العنصر الأب | — |
مخطط JSON Schema الكامل
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"post": {
"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": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"account_label": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"social_account_id",
"platform",
"platform_user_id",
"account_label"
]
},
"caption": {
"anyOf": [
{
"type": "string"
},
{
"type": "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",
"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))$"
},
{
"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": {
"anyOf": [
{
"type": "string"
},
{
"type": "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": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"published_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"deleted_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"provider_post_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "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"
]
}
},
"required": [
"post"
]
}الأخطاء وإعادة المحاولة بأمان
افحص حالة HTTP والجسم. قد يحوي خطأ التحقق 400 ZodError؛ تستخدم أخطاء المعالج error و message و code. احتفظ بـ request_id أو x-request-id للتشخيص دون اعتماد. أصلح أخطاء وصول 401/403 قبل المحاولة واتّبع Retry-After لـ 429. لكتابة غير مؤكدة أو 5xx، اقرأ الموجود أولاً. أعِد مفتاح منع التكرار حيث يُدعم فقط؛ تختلف المحاولة حسب العملية ولا تضمن التسليم مرة واحدة بالضبط.
دليل استكشاف الأخطاء وإصلاحهاأمثلة
تستخدم الأمثلة قيماً خيالية مفحوصة بالمخططات. استبدل المعرّفات بالمفوّض لك، والوسائط بأصول جاهزة، والتواريخ بوقت نشر مؤكد. افحص أهلية الحساب قبل الكتابة. لا تُرسل الصفحة طلبات API.
اضبط SOSOAPI_ACCESS_TOKEN على خادمك ببيانات اعتماد تقبلها العملية، وأبقِه خارج شيفرة المتصفح. للوكيل، استخدم sosoapi auth login للدخول بالمتصفح ودع CLI يحدّث بيانات اعتماده.
request.json
{
"id": "11111111-1111-4111-8111-111111111111",
"expected_version": 1
}cURL
curl --request POST \
"https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/scheduled-posts/retry" \
-H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
--data-binary @request.jsonJavaScript
// 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/scheduled-posts/retry", {
method: "POST",
headers: { "Content-Type": "application/json", Authorization: "Bearer " + token },
body: JSON.stringify({
"id": "11111111-1111-4111-8111-111111111111",
"expected_version": 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/scheduled-posts/retry < request.jsonمثال استجابة اصطناعية
{
"post": {
"id": "11111111-1111-4111-8111-111111111111",
"workspace_id": "11111111-1111-4111-8111-111111111111",
"social_account_id": null,
"platform": "instagram",
"destination": {
"social_account_id": null,
"platform": "instagram",
"platform_user_id": null,
"account_label": null
},
"caption": null,
"hashtags": [],
"media": [],
"publish_options": {},
"scheduled_at": "example",
"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,
"created_at": "example",
"updated_at": "example",
"project_id": null,
"batch_id": null,
"source_ref": null
}
}