Skip to main content
PUT
Bulk schedule posts with CSV (Comma Separated Values) file of posts data. Content-Type must be multipart/form-data.
We recommend using the direct Post endpoint instead of this bulk method for scheduling posts. The direct endpoint provides a more comprehensive feature set and easier debugging capabilities.

Header Parameters

string
required
Format: Authorization: Bearer API_KEY. See API overview for more information.
string
Profile Key of a user profile.
string
required
Content-Type: multipart/form-data

Body Parameters

object
Multipart form-data CSV file of scheduled posts. See below for CSV template.

Request Examples

A multipart form-data containing a CSV file of posts will schedule them for a future date. The CSV file contains the following fields (template below) and are required:
  • post: The post text.
  • platforms: Comma separated list of platforms, e.g. “twitter, facebook, instagram”.
  • mediaUrls: URL of media, such as an image or video to include in the post.
  • scheduleDate: Datetime to schedule the post in UTC format. For example, use format YYYY-MM-DDThh:mm:ssZ and send as 2026-07-08T12:30:00Z. Please see utctime for more examples.
Don’t schedule duplicate posts within 24 hours of each other.Each post is checked against a 48-hour window centered on its own scheduleDate — 24 hours before through 24 hours after. If another post with identical or near-identical text falls inside that window, the post is rejected with error 137. The window looks forward as well as back, so a row can be rejected because of a row scheduled after it. The check runs when a post is submitted or scheduled, not only when it is about to publish. This is to protect your account at the networks; they can suspend or shadow-ban accounts with frequent duplicate posts.

CSV Template

Download the template and save as a .csv file. Ayrshare CSV Template