Skip to main content
GET
Returns the next free time to post to the accounts you name. Nothing is scheduled: pass the returned scheduled_at to Create Post when you want the post to go out at that time.

Behavior

  • Candidate times are the posting times set for these accounts in the Genviral Social Hub (the same posting_times that Get Accounts returns), combined across all named accounts. When none of them has posting times, the candidate is 12:00 each day.
  • Posting times are wall-clock times. They are read in the timezone you send, so 09:00 means 9 in the morning in that zone.
  • The search starts today in that zone and never suggests a time less than two minutes from now.
  • A time is skipped when one of these accounts already has a post scheduled in that same minute. skipped_conflicts counts the skipped times.
  • Every account must belong to the key scope (workspace accounts for a workspace key, personal accounts for a personal key) and be active. Otherwise the request fails with 400 validation_failed.

Query Parameters

string
required
Comma-separated account IDs from Get Accounts. Between 1 and 10 IDs. Repeated IDs are counted once.
string
required
IANA time zone the suggestion is computed in, for example Europe/Amsterdam or America/New_York.

Response

string
Suggested time as an ISO 8601 timestamp in UTC.
string
Where the time came from: account_posting_times (the accounts’ own posting times) or fallback_noon (no posting times are set, so noon was used).
number
How many earlier candidate times were skipped because one of the accounts already had a post scheduled then.
string
The time zone the suggestion was computed in, echoed from the request.

Error Responses

  • 400 validation_failed - one or more accounts are outside the key scope or are not active
  • 401 - authentication failed (missing, invalid, or revoked token)
  • 422 invalid_payload - account_ids or timezone is missing or invalid; fields names each one
  • 500 - unexpected error while computing the suggestion