# Avbryt planlagt innlegg

Kanonisk URL: https://sosoapi.ai/nb/docs/api/studio-api-scheduled-posts-cancel

Kontrakt: sha256:563d2d581da0ad29

Avbryt et planlagt innlegg som ennå ikke er publisert, slik at det aldri sendes ut. Et publisert innlegg avvises, og en agent kan heller ikke slette publisert innhold: brukeren gjør det i nettappen. Krever expected_version.

POST /studio-api/scheduled-posts/cancel

## Autentisering og tillatelser

- **Godtatte legitimasjonsklasser:** user_session, delegated_oauth, personal_access_token

- **Delegert funksjon:** agent:publish

- **Minste arbeidsområderolle:** editor

- **Tilgangsomfang:** Ressurser denne brukeren er autorisert til å bruke

- **Samtykke for alle arbeidsområder kreves:** Nei

- **Endrer tilstand:** Ja

- **Når operasjonen er fullført:** endelig publiseringsresultat

Et token kan bare bruke rettighetene eieren har. Hver forespørsel kontrollerer arbeidsområdemedlemskap, ressurseierskap, valgte arbeidsområder og gitte funksjoner. Profilene core og full endrer hvilke verktøy som vises; de gir ikke tilgang.

## Forespørselsfelter

```json
{
  "$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
    }
  },
  "required": [
    "id",
    "expected_version"
  ],
  "additionalProperties": false
}
```

## Svar og fullføring

HTTP-statuser ved suksess: 200

Et vellykket HTTP-svar kan bety at en forespørsel er akseptert fremfor fullført. For bakgrunnsarbeid, lagre returnert ID og kontroller samme operasjon til den er ferdig. Et planlagt eller akseptert innlegg er først publisert når plattformen bekrefter det; et klienttidsavbrudd fastslår ikke resultatet.

```json
{
  "$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"
  ]
}
```

## Feil og trygge nye forsøk

Kontroller HTTP-status og svarinnhold. En 400-valideringsfeil kan inneholde en ZodError; håndteringsfeil bruker feltene error, message og code. Behold request_id eller x-request-id for feilsøking, uten påloggingsopplysninger. Rett 401/403-tilgangsfeil før nye forsøk, og følg Retry-After ved 429. Hvis en skriveoperasjon er usikker eller returnerer 5xx, les det eksisterende resultatet først. Gjenbruk bare en idempotensnøkkel der det støttes; virkemåten ved nye forsøk varierer mellom operasjoner og garanterer ikke levering nøyaktig én gang.

## Eksempler

Disse eksemplene bruker fiktive verdier kontrollert mot skjemaene. Erstatt ID-ene med noen du har lov til å bruke, mediene med klare ressurser og datoene med bekreftet publiseringstidspunkt. Kontroller kontoens kvalifikasjon før en skriveoperasjon sendes inn. Siden sender ingen API-forespørsler.

Angi SOSOAPI_ACCESS_TOKEN på serveren din til legitimasjon som operasjonen godtar, og hold den unna nettleserkode. For en agent, bruk sosoapi auth login for innlogging gjennom nettleseren, og la CLI-et fornye legitimasjonen.

request.json

```json
{
  "id": "11111111-1111-4111-8111-111111111111",
  "expected_version": 1
}
```

cURL

```bash
curl --request POST \
  "https://gqeshlawtcexsapabaui.supabase.co/functions/v1/studio-api/scheduled-posts/cancel" \
  -H "Authorization: Bearer $SOSOAPI_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  --data-binary @request.json
```

JavaScript

```js
// 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/cancel", {
  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

```bash
npx sosoapi api post /studio-api/scheduled-posts/cancel < request.json
```

Syntetisk svareksempel

```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
  }
}
```

## Relaterte verktøy og veiledninger

MCP: sosoapi_cancel_scheduled_post

[API-referanse](https://sosoapi.ai/nb/docs/api)
