Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developer.dashsocial.com/llms.txt

Use this file to discover all available pages before exploring further.

Overview

This guide shows you how to create and manage scheduled social media posts across supported platforms using the Dash API. You can publish posts immediately, schedule them for a future time, or save them as drafts. This allows you to automate content publishing directly from your own tools or workflows.

Supported Platforms

The Scheduler API supports the following platforms:
  • Instagram
  • Facebook
  • TikTok
  • YouTube
  • X
  • Threads
  • LinkedIn
  • Snapchat
  • Pinterest
  • Bluesky

Use Case

You can use the scheduling API to automate and manage social publishing directly from your own tools.

Content Calendar Automation

Schedule posts across multiple platforms from your internal CMS or content calendar. This allows marketing teams to plan campaigns without using the Dash UI.

Product Launch Scheduling

Queue posts to publish at exact times during launches, events, or announcements. Posts can be scheduled days or weeks in advance.

Draft Review Workflows

Save posts as drafts so teams can review content before publishing.

Bulk Post Scheduling

Programmatically schedule large batches of posts across platforms, useful for agencies or large content pipelines.

Before You Start

You’ll need:
  • API Key: Get this from the Dash Social Developer section
  • Brand ID: Available in your developer settings or next to your brand name in the platform
See more details here:

API Quickstart

Make your first API call in less than a minute and confirm your API key is working.

Scheduling Workflow

Scheduling a post with the Dash API follows three steps:
  1. Upload media to the Dash Library
  2. Create a scheduled post for the platform
  3. Manage the post using the returned id from the scheduler response

Key Concepts

Scheduler id

  • Returned when a scheduled post is created
  • Used to retrieve, update, or delete the post

status

Defines how the post should behave.
StatusBehavior
AUTOPUBLISHINGPost is set to publish immediately
SCHEDULEDPost publishes at the specified timestamp
DRAFTPost is saved as a draft

auto_publish

Controls whether the post will publish automatically or require manual publishing.
ValueBehavior
trueThe post will automatically publish at the scheduled time.
falseThe post will not publish automatically. Users associated with the brand will receive a push notification in the Dash mobile app reminding them to publish the post.
Some fields are not available when auto_publish is disabled because they only work with automatic publishing:
  • first_comment is not supported for Instagram and Facebook when auto_publish is disabled.

media_id

  • Returned when media is uploaded to Dash
  • Used when attaching image or video media to a post
  • When scheduling a post, include this value inside the media_ids array
  • Required for some platforms, post types, and auto-publish posts
  • Not required for supported caption-only posts or some draft posts without media

Media Requirements by Platform

Media requirements vary by platform and post type.
PlatformCaption-only PostDraft Without MediaMedia Requirements
InstagramPOST, REEL, and STORY drafts can be created without media. Auto-publish posts require media_ids.
TikTokDrafts can be created without media. Auto-publish posts require video media.
FacebookStandard POST can be caption-only. REEL requires video media.
XCaption-only posts are supported.
ThreadsCaption-only posts are supported.
LinkedInCaption-only posts are supported.
YouTubeRequires video media.
SnapchatSTORY requires image or video. SPOTLIGHT requires video media.
PinterestDrafts can be created without media. Auto-publish posts require media. title and a Pinterest board are required.
BlueskyCaption-only posts are supported. Image posts support up to 4 images. Mixed media and video are not supported.

Media Support by Platform

Some platforms support multiple media items or mixed media types, while others require a single media asset.
PlatformMedia TypesMedia CountMixed MediaNotes
Instagram PostImage, VideoUp to 10Supports mixed media (images and videos in the same post).
Instagram ReelVideo1Reels only support a single video.
Instagram StoryImage, Video1 auto-publish, multiple for draftsMultiple media can only be saved as drafts. Auto-publish posts support a single media item.
TikTokVideo1TikTok posts must contain a single video.
Facebook PostImage, VideoUp to 10 images or 1 videoImages and videos cannot be mixed.
Facebook ReelVideo1Reels must contain a single video.
LinkedInImage, Video20 images or 1 videoImage posts support 20 images. Video posts support only one video.
YouTubeVideo1YouTube posts must contain a single video.
ThreadsImage20Threads currently supports multiple images only.
XImage, VideoUp to 4 images or 1 videoImages and videos cannot be mixed.
Snapchat StoryImage, Video1Stories support either image or video.
Snapchat SpotlightVideo1Spotlight posts must contain a single video.
PinterestImage, Video1Pins support a single image or a single video. Mixed media is not supported.
BlueskyImageUp to 4Bluesky supports image posts only. Mixed media and video are not supported.

Publishing Modes

Most platforms support three publishing behaviors.
Modestatusauto_publishtimestamp
Publish ImmediatelyAUTOPUBLISHINGtrueNot required
Schedule for LaterSCHEDULEDtrueRequired
Save as DraftDRAFTtrue or falseOptional
Note
  • Some platforms do not support auto_publish: false.
  • LinkedIn, Snapchat and YouTube require auto_publish: true.
  • Threads and Bluesky always publish with auto_publish: true, even if false is provided (the value is ignored).
  • status controls the state of the post (draft, scheduled, or publishing immediately).
  • auto_publish controls the publishing method (auto-publish vs. send notification / publish via mobile).
  • A post with status: "DRAFT" can be created with either auto_publish: true or false, depending on platform support.

Platform Comparison

PlatformEndpointCaption FieldMedia TypesSpecial Fields
Instagram/instagram/scheduled_postscaptionImage, Videopost_type, first_comment
X/twitter/scheduled_poststweet_statusImage, Video
Facebook/facebook/scheduled_postsmessageImage, Videopost_type,first_comment, link
TikTok/tiktok/scheduled_poststextVideo onlydisable_comment, disable_duet, disable_stitch
Threads/threads/scheduled_poststextImage, Video
LinkedIn/linkedin/scheduled_poststextImage, Video
YouTube/youtube/scheduled_poststitle, descriptionVideo onlydeclared_made_for_kids
Snapchat/snapchat/scheduled_postsdescriptionImage, Videopost_type, save_to_profile, locale
Pinterest/pinterest/scheduled_postsnoteImage, Videometa.title, meta.pinterestBoard, link
Bluesky/bluesky/scheduled_posts*textImage only

Implementation

Step 1: Upload Media (optional)

If your post includes images or videos, upload the media to the Dash Library first. This returns a media_id that you can include when creating the scheduled post.
If your post does not include media (for example, a text-only or link-based post), you can skip this step. Jump to Step 2
POST https://library-backend.dashsocial.com/brands/{brand_id}/media
body:
{
  "source": "UPLOAD",
  "source_id": "your-internal-id",
  "type": "UPLOADED",
  "url": "https://example.com/media.jpg",
  "meta": "{ \"filename\": \"filename.jpg\" }",
  "source_created_at": "2026-03-06T12:00:00Z"
}
See more about this step here:

Upload Media To Dash Social Library

Upload media directly from your CMS to your Dash Social Library

Response

{
    "ai_alternatives": [],
    "brand_id": 144,
    "campaigns": [],
    "caption_question": null,
    "caption_sentiment": null,
    "content_tags": [],
    "created_at": "2026-03-06T22:21:57+00:00",
    "duration": null,
    "elastic_search_index_status": null,
    "frame_rate": null,
    "galleries": [],
    "hide_in_widget": false,
    "id": 950680003,
    "image_sizes": {
        "medium_square": {
            "height": 640,
            "url": "https://images.dashsocial.com/aHR0cHM6Ly9jZG4uZGFzaHNvY2lhbC5jb20vbWVkaWEvZnVsbC8xNzcyODM1NzE2LjQzMTc0NDY3NDIzMi5qcGVn.jpg?w=640&h=640&fit=cover",
            "width": 640
        },
        "original": {
            "height": 534,
            "size": 72890,
            "url": "https://cdn.dashsocial.com/media/original/1772835716.24373761829.jpg",
            "width": 800
        },
        "original_converted": {
            "height": 534,
            "size": 72992,
            "url": "https://cdn.dashsocial.com/media/full/1772835716.431744674232.jpeg",
            "width": 800
        },
        "small": {
            "height": 400,
            "url": "https://images.dashsocial.com/aHR0cHM6Ly9jZG4uZGFzaHNvY2lhbC5jb20vbWVkaWEvZnVsbC8xNzcyODM1NzE2LjQzMTc0NDY3NDIzMi5qcGVn.jpg?w=599&h=400",
            "width": 599
        },
        "small_square": {
            "height": 400,
            "url": "https://images.dashsocial.com/aHR0cHM6Ly9jZG4uZGFzaHNvY2lhbC5jb20vbWVkaWEvZnVsbC8xNzcyODM1NzE2LjQzMTc0NDY3NDIzMi5qcGVn.jpg?w=400&h=400&fit=cover",
            "width": 400
        }
    },
    "likeshop_clicks": null,
    "media_group": null,
    "media_id": 647749496,
    "media_type": "IMAGE",
    "meta": {},
    "original_height": "534",
    "original_width": "800",
    "predictions": {},
    "source": "UPLOAD",
    "source_created_at": "2026-03-06T12:00:00+00:00",
    "source_data": {
        "avatar_url": null,
        "first_name": "sept 9 test",
        "last_name": "API"
    },
    "source_id": "NATGEO",
    "status": 2,
    "system_tags": [],
    "tags": [],
    "tiktok_likeshop_clicks": null,
    "triggered_content_automations": [],
    "type": "UPLOADED",
    "updated_at": "2026-03-06T22:21:57+00:00",
    "urls": {
        "640": "https://images.dashsocial.com/aHR0cHM6Ly9jZG4uZGFzaHNvY2lhbC5jb20vbWVkaWEvZnVsbC8xNzcyODM1NzE2LjQzMTc0NDY3NDIzMi5qcGVn.jpg?w=640&h=640&fit=cover",
        "full": "https://cdn.dashsocial.com/media/full/1772835716.431744674232.jpeg",
        "original": "https://cdn.dashsocial.com/media/original/1772835716.24373761829.jpg",
        "ratio": "https://images.dashsocial.com/aHR0cHM6Ly9jZG4uZGFzaHNvY2lhbC5jb20vbWVkaWEvZnVsbC8xNzcyODM1NzE2LjQzMTc0NDY3NDIzMi5qcGVn.jpg?w=599&h=400",
        "thumbs": "https://images.dashsocial.com/aHR0cHM6Ly9jZG4uZGFzaHNvY2lhbC5jb20vbWVkaWEvZnVsbC8xNzcyODM1NzE2LjQzMTc0NDY3NDIzMi5qcGVn.jpg?w=400&h=400&fit=cover"
    },
    "video_conversion_warnings": null,
    "video_sizes": {}
}
Save the returned media_id. You’ll include this value in media_ids when creating the scheduled post.

Step 2: Create a Scheduled Post

This API can publish posts directly to your social media accounts.Posts with auto_publish: true will automatically publish at the scheduled time. Test with drafts or a test account before publishing to live channels.
When creating a scheduled post, include media_ids only when required by the platform or post type. Some platforms support caption-only or link-based posts without media, while others require media for all posts or for auto-publish posts.

Instagram

Use this endpoint to schedule feed posts, stories, or reels.

Endpoint

POST https://scheduler.dashsocial.com/instagram/scheduled_posts?media_v2=true

Request

{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "caption": "Launching our new product today!",
  "first_comment": "Let us know what you think 👇",
  "media_ids": [621242772],
  "post_type": "FEED",
  "timestamp": "2026-03-10T15:00:00Z"
}

Instagram Fields

ParameterDescription
post_typeRequired. Available value:FEED, STORY, or REEL
captionPost caption
first_commentOptional first comment (not supported when auto_publish: false)
Notes
  • post_type determines whether the post is a FEED, STORY, or REEL.
  • first_comment is not supported when auto_publish is false.
  • Auto-publish posts must include media.

X (Twitter)

Endpoint

POST https://scheduler.dashsocial.com/twitter/scheduled_posts?media_v2=true

Request

{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "timestamp": "2026-03-10T15:00:00Z",
  "tweet_status": "Launching something new today 🚀"
}

X Fields

ParameterDescription
tweet_statusTweet text
Note
  • Standard X posts support up to 280 characters.
  • Accounts with X Premium can publish posts up to 25,000 characters.

Facebook

Endpoint

POST https://scheduler.dashsocial.com/facebook/scheduled_posts?media_v2=true

Request

{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "message": "Check out our newest launch!",
  "media_ids": [621242772],
  "timestamp": "2026-03-10T15:00:00Z",
  "first_comment": "Drop your thoughts below!",
  "post_type":"POST"
}

Facebook Fields

ParameterDescription
post_typeRequired. Available value:POST or REEL
messagePost caption
first_commentOptional first comment (not supported when auto_publish: false)
linkOptional link preview
Notes
  • Standard POST can be created without media.
  • REEL posts require video media.
  • first_comment is not supported when auto_publish is false.

TikTok

TikTok only supports video uploads.

Endpoint

POST https://scheduler.dashsocial.com/tiktok/scheduled_posts?media_v2=true

Request

{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "text": "Behind the scenes of our launch",
  "media_ids": [621242772],
  "timestamp": "2026-03-10T15:00:00Z",
  "disable_comment": false,
  "disable_duet": false,
  "disable_stitch": false
}

TikTok Fields

ParameterDescription
textCaption for the TikTok post.
disable_commentOptional. Set to true to disable comments on the post.
disable_duetOptional. Set to true to prevent users from creating duets with the video.
disable_stitchOptional. Set to true to prevent users from stitching the video.
Notes
  • TikTok posts require video media for auto-publish.
  • Only one video can be attached to a TikTok post.

Threads

Endpoint

POST https://scheduler.dashsocial.com/threads/scheduled_posts?media_v2=true

Request

{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "text": "Something exciting is coming.",
  "media_ids": [621242772],
  "timestamp": "2026-03-10T15:00:00Z"
}
Notes
  • auto_publish is always treated as true.
  • Threads supports caption-only posts.
  • Multiple images can be attached to a post.

LinkedIn

Endpoint

POST https://scheduler.dashsocial.com/linkedin/scheduled_posts?media_v2=true

Request

{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "text": "We're excited to share our newest launch.",
  "media_ids": [621242772],
  "timestamp": "2026-03-10T15:00:00Z"
}
Notes
  • auto_publish: false is not supported.
  • LinkedIn supports caption-only posts.
  • Image posts can include multiple images, but video posts support one video only.

YouTube

YouTube supports video uploads only.

Endpoint

POST https://scheduler.dashsocial.com/youtube/scheduled_posts?media_v2=true

Request

{
 "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "title": "Product Launch",
  "description": "Watch our newest launch announcement.",
  "media_ids": [621242772],
  "timestamp": "2026-03-10T15:00:00Z",
  "declared_made_for_kids": "false"
}

YouTube Fields

ParameterDescription
titleRequired. Title of the YouTube video.
descriptionOptional description for the video.
declared_made_for_kidsRequired. Indicates whether the content is made for kids (true or false) for COPPA compliance.
Notes
  • auto_publish: false is not supported.
  • media_ids is required for YouTube posts.
  • Only one video can be attached to a post.
  • The video must be uploaded to the Dash Library before scheduling.

Snapchat

Snapchat supports two post types:
  • Story posts can use image or video media
  • Spotlight posts require a video

Endpoint

POST https://scheduler.dashsocial.com/snapchat/scheduled_posts?media_v2=true
Story Request Use post_type: "STORY" to create a Snapchat Story post. Note that post caption (description) is not available for Snapchat Story post.
{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "media_ids": [650029769],
  "timestamp": "2026-03-12T16:05:00.000Z",
  "post_type": "STORY"
}
Spotlight Request Use post_type: "SPOTLIGHT" to create a Snapchat Spotlight post. Spotlight posts must use video media.
{
  "brand_id": 144,
  "status": "SCHEDULED",
  "media_ids": [648771867],
  "timestamp": "2026-03-12T18:00:00.000Z",
  "description": "3 quick ways to style oversized sweaters this fall 🍂",
  "post_type": "SPOTLIGHT",
  "save_to_profile": true,
  "locale": "en_US"
}

Snapchat Fields

ParameterDescription
post_typeRequired. Available values: STORY or SPOTLIGHT.
descriptionOptional caption text for SPOTLIGHT posts. Not supported for STORY posts.
save_to_profileBoolean. Required for SPOTLIGHT posts. Saves the post to the public Snapchat profile.
localeRequired for SPOTLIGHT posts. Locale for the post, for example en_US.
Notes
  • auto_publish: false is not supported.
  • media_ids is required for Snapchat posts.
  • STORY posts support image or video and do not support description.
  • SPOTLIGHT posts support video only.
  • save_to_profile and locale are required for SPOTLIGHT posts.

Pinterest

Pinterest scheduled posts require:
  • a valid board ID
  • a title
  • media for auto-publish posts
Pinterest supports image and video Pins. A Pin can include only 1 media item.

Step 1: Get a Pinterest Board

Before creating a Pinterest scheduled post, retrieve the available boards for the brand.
GET https://pinterest.dashsocial.com/v5/brands/{brand_id}/boards
Response
[
  {
      "description": "",
      "id": "123456789012345678",
      "name": "Spring Style Inspiration",
      "preview_url": "https://example.com/board-preview.jpg",
      "protected": false
  }
]
Use the entire board object returned from this endpoint when creating the scheduler.

Step 2: Create the Scheduled Post

POST https://scheduler.dashsocial.com/pinterest/scheduled_posts?media_v2=true
Request
{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "media_ids": [650431494],
  "link": "https://example.com/products/linen-oversized-blazer",
  "meta": {
    "pinterestBoard": {
      "description": "",
      "id": "123456789012345678",
      "name": "Spring Style Inspiration",
      "preview_url": "https://example.com/board-preview.jpg",
      "protected": false
    },
    "title": "Oversized Linen Blazer Outfit Ideas"
  },
  "note": "Lightweight linen blazer styled three ways for spring. Perfect layering piece for everyday outfits.",
  "timestamp": "2026-03-12T20:45:00.000Z"
}

Pinterest Fields

ParameterDescription
meta.pinterestBoardRequired. The Pinterest board where the Pin will be published. Include the entire board object returned from the boards endpoint.
meta.titleRequired. Title of the Pin.
noteOptional description for the Pin.
linkOptional destination URL for the Pin.
Notes
  • A valid Pinterest board is required to create a scheduled post.
  • title is required for all Pinterest posts.
  • Draft posts can be created without media.
  • Auto-publish posts require media.
  • Pinterest supports image or video Pins.
  • Pins support 1 media item only.
  • When possible, link directly to the destination page. Pinterest may reject certain redirects or URL shorteners.

Bluesky

Bluesky supports caption-only posts and image posts.
  • Caption-only posts are supported
  • Image posts can include up to 4 images
  • Video is not supported
  • Mixed media is not supported

Endpoint

POST https://scheduler.dashsocial.com/bluesky/scheduled_posts?media_v2=true
Request
{
  "auto_publish": true,
  "brand_id": 144,
  "status": "SCHEDULED",
  "media_ids": [650431494, 650482495, 650419615, 650418969],
  "timestamp": "2026-03-12T22:30:00.000Z",
  "text": "A few recent favorites from our spring inspiration board."
}
Notes
  • auto_publish is always treated as true.
  • Bluesky supports caption-only posts.
  • Image posts support up to 4 images.
  • Bluesky supports image media only.
  • Mixed media and video are not supported.

Scheduler Response Format

Creating a scheduled post returns the scheduled post object. All platforms return the same core response structure, with some additional platform-specific fields depending on the channel.

Common Response Fields

FieldDescription
idUnique ID of the scheduled post. Use this value to retrieve, update, or delete the post.
brand_idID of the brand associated with the scheduled post.
statusCurrent post status, such as DRAFT, SCHEDULED, or AUTOPUBLISHING.
auto_publishIndicates whether the post will publish automatically.
timestampScheduled publish time, if set.
media_idsArray of media IDs attached to the post.
mediaExpanded media objects attached to the post.
created_atTime the scheduled post was created.
updated_atTime the scheduled post was last updated.
approval_policyApproval policy applied to the post.
approval_statusCurrent approval state of the post.
approval_requestsApproval requests associated with the post.

Platform-Specific Fields

Some platforms return additional fields in the response. For example:
  • Instagram may return fields such as caption, first_comment, and post_type
  • X may return tweet_status
  • Facebook may return message, link, and post_type
  • Pinterest may return note, link, and meta
  • Snapchat may return description, post_type, save_to_profile, and locale

Example Response

{
  "approval_policy": "APPROVAL_REQUIRED",
  "approval_requests": [],
  "approval_status": "UNASSIGNED",
  "auto_publish": true,
  "auto_publish_error": null,
  "brand_id": 144,
  "created_at": "2026-03-12T20:34:11.048341+00:00",
  "has_scheduled_time": true,
  "id": 806262,
  "live_post_url": null,
  "media": [
    {
      "brand_id": 144,
      "created_at": "2026-03-12T18:00:12+00:00",
      "id": 650431494,
      "meta": {
        "filename": "example-image.png",
        "uploaded_by": 77315
      },
      "predictions": {
        "engagement": 0.278311
      },
      "source": "UPLOAD",
      "source_created_at": "2026-03-12T18:00:11+00:00",
      "source_id": "95987d98-7510-41f8-bacb-8683c7f7b0d5",
      "source_type": "OWNED",
      "type": "IMAGE",
      "updated_at": "2026-03-12T18:00:12+00:00",
      "variants": []
    }
  ],
  "media_ids": [650431494],
  "status": "SCHEDULED",
  "timestamp": "2026-03-12T22:45:00+00:00",
  "updated_at": "2026-03-12T20:34:11.048344+00:00"
}

Manage Scheduled Posts

Once a post is scheduled, you can retrieve, update, or delete it using the id returned from the response.

Get All Scheduled Posts

Retrieve all scheduled posts for a brand within a specified time range.
GET https://scheduler.dashsocial.com/{platform}/scheduled_posts?brand_ids={brand_id}&start={start}&end={end}&sort=TIMESTAMP&media_v2=true
Example:
GET https://scheduler.dashsocial.com/instagram/scheduled_posts?brand_ids=2000&start=2026-03-22T00:00:00&end=2026-03-28T23:59:59&sort=TIMESTAMP&media_v2=true

Query Parameters

ParameterDescription
brand_idsRequired. The ID of the brand whose scheduled posts you want to retrieve.
startRecommended. Start of the date range (ISO 8601 format with timezone offset, for example 2026-03-22T00:00:00). Omitting this may result in slow response times.
endRecommended. End of the date range (ISO 8601 format with timezone offset, for example 2026-03-28T23:59:59). Omitting this may result in slow response times.
sortSort order for results. Available values: TIMESTAMP, UPDATED_AT. Prefix with - for descending order (for example, -TIMESTAMP).
media_v2Set to true to returns media data in the current format.
Notes
  • Replace {platform} in the URL with the platform path for the channel you want to query. See the Platform Comparison table for the full list of endpoint paths.
  • start and end are optional but strongly recommended. Without them, the API will query all posts for the brand, which can result in slow response times.
  • Timezone offsets are supported in the start and end parameters.

Query Parameters

ParameterDescription
brand_idsRequired. The ID of the brand whose scheduled posts you want to retrieve.
startRequired. Start of the date range (ISO 8601 format with timezone offset, for example 2026-03-22T00:00:00-04:00).
endRequired. End of the date range (ISO 8601 format with timezone offset, for example 2026-03-28T23:59:59-04:00).
sortSort order for results. Available values: TIMESTAMP, UPDATED_AT. Prefix with - for descending order (for example, -TIMESTAMP).
media_v2Required. Must be set to true. Returns media data in the current format.
Notes
  • Replace {platform} in the URL with the platform name (for example, instagram, facebook, tiktok).
  • start and end define the window of scheduled post timestamps to return.
  • Timezone offsets are supported in the start and end parameters.

Get a Scheduled Post

Retrieve the full details of a scheduled post.
GET https://scheduler.dashsocial.com/{platform}/scheduled_posts/{id}
Example:
GET https://scheduler.dashsocial.com/instagram/scheduled_posts/12345

Update a Scheduled Post

Use PATCH to update specific fields without replacing the entire post.
PATCH https://scheduler.dashsocial.com/{platform}/scheduled_posts/{id}?media_v2=true
body:
{
  "caption": "Updated caption",
  "timestamp": "2026-03-12T15:00:00Z"
}
Only the fields included in the request will be updated.

Delete a Scheduled Post

Remove a scheduled post so it will not be published.
DELETE https://scheduler.dashsocial.com/{platform}/scheduled_posts/{id}
Example:
DELETE https://scheduler.dashsocial.com/instagram/scheduled_posts/12345

Common Errors

ErrorCause
Invalid media_idMedia was not uploaded or belongs to another brand
Missing timestampRequired when status = SCHEDULED
Unsupported media typeFor example, using an image for TikTok
Invalid platform fieldUsing the wrong caption parameter

Final Outcome

After completing this guide:
  • Your media is uploaded to Dash
  • Your post is scheduled for publishing
  • You receive an id in the scheduler response that you can use to manage the post later

Next Steps

You can extend this workflow by:
  • Scheduling posts across multiple platforms
  • Automating content calendars
  • Retrieving scheduled posts for reporting
  • Building internal publishing tools using the Scheduler API