Skip to main content
Every post endpoint can publish immediately or at a future time. You pick the timing mode per request.

Publish now

The default. Omit any scheduling field and the post goes out immediately.

Schedule for an exact time

Add scheduled_at (ISO-8601) and an optional timezone (IANA name). MADIAD Hub holds the post and publishes it at that moment.
  • scheduled_at is read as UTC when it ends in Z. Provide timezone to resolve local wall-clock times and daylight saving correctly.
  • Scheduled posts return status: "scheduled". They publish later — track the outcome with webhooks.
  • You can schedule up to one year ahead.

Use a recurring queue

Instead of an exact timestamp, drop the post into the profile’s queue with add_to_queue=true. It publishes in the next open slot of the profile’s posting schedule.
scheduled_at and add_to_queue are mutually exclusive — set one or the other, never both.

Configure the queue

Each profile has its own queue settings (timezone, active days, time slots). Read them:
Update them by posting the profile id plus the fields you want to change:

Manage scheduled posts

List a profile’s pending scheduled posts:
Reschedule or edit one before it publishes — pass any of scheduled_at, timezone, or caption:
Cancel one:
The $JOB_ID is the job_id a publish call returns when status is scheduled.
Canceling a scheduled post does not un-count the upload recorded when you scheduled it. Since publishing is unlimited on paid plans this costs you nothing — the cancelled slot simply stays in your usage figures.