---
title: "Update social post"
method: PATCH
path: "/social/post/{post_id}"
tags: ["Social"]
---

# Update social post

`PATCH /social/post/{post_id}`

## Request

- Base URL: `https://api.mosaic.so`
- URL: `https://api.mosaic.so/social/post/{post_id}`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Update supported lifecycle, moderation, and platform-specific metadata fields on a social post. Text, media, and destination platforms cannot be edited after creation. schedule_date only changes Mosaic's queued publish time before a scheduled post is published. approved only applies to posts waiting for approval. Platform-specific update options support Instagram and LinkedIn comment settings plus YouTube metadata.

## Path parameters

- `post_id` string, required

## Request body

- object
  - `schedule_date` string, date-time: New queued publish timestamp as an ISO string. Only valid before a scheduled post publishes.
  - `approved` boolean: Set to true to approve a post that is waiting for approval.
  - `disable_comments` boolean: Disable or re-enable comments. Supported only for instagram and linkedin. Prefer platform_options.instagram.disable_comments or platform_options.linkedin.disable_comments for new integrations.
  - `platform_options` object: Platform-specific update options. Supports instagram.disable_comments, linkedin.disable_comments, and youtube metadata.
    - `instagram` object: Supported Instagram existing-post updates.
      - `disable_comments` boolean: Disable or re-enable comments for an Instagram destination.
    - `linkedin` object: Supported LinkedIn existing-post updates.
      - `disable_comments` boolean: Disable or re-enable comments for a LinkedIn destination.
    - `youtube` object: Supported YouTube metadata updates.
      - `visibility` 'unlisted' | 'private' | 'public'
      - `title` string
      - `description` string
      - `category_id` integer
  - `youtube_options` object: Backward-compatible alias for platform_options.youtube.
    - `visibility` 'unlisted' | 'private' | 'public'
    - `title` string
    - `description` string
    - `category_id` integer
  - `social_connection_id` string, uuid: Update using one specific connected account. Required for platform-specific fields when the destination platform cannot be inferred.

## Response `200`

Social post updated

- SocialPostUpdateResponse
  - `post_id` string, required
  - `status` string, nullable, required
  - `scheduled_at` string, nullable, required
  - `updated_destinations` SocialPostUpdateDestinationResult[], required
    - `social_connection_id` string, uuid, nullable, required
    - `platform` 'x' | 'linkedin' | 'instagram' | 'facebook' | 'tiktok' | 'youtube', nullable, required
    - `status` string, nullable, required

## Other responses

- `400`: Invalid request
- `401`: Authentication failed
- `403`: Access denied
- `404`: Resource not found

---

[API](https://skmtc.dev/mosaic/apis/mosaic-ai-api.md) - [All operations](https://skmtc.dev/mosaic/apis/mosaic-ai-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mosaic/apis/mosaic-ai-api/revisions/c20e9fc606a4?raw)
