Skip to main content
GET
Ranks the weekday and hour slots where your own published posts did best. It reads the analytics of the workspace (for a workspace key) or your personal space (for a personal key) and counts only your own posts: posts from your connected accounts and posts published through Genviral. Accounts you only track for research are left out. It never falls back to generic platform advice.

Behavior

  • Each published post is placed in a slot by the weekday and hour it went out, in the timezone you send.
  • Slots are ranked mainly by average engagement rate, then by average views and by how many posts back them.
  • When none of your own posts in the range has analytics, status is insufficient_data and times is empty. Try a longer range, or drop the platform filter.
  • Read-only: nothing is scheduled and no credits are used.

Query Parameters

string
required
IANA time zone the slots are computed in, for example Europe/Amsterdam.
string
Only rank posts from one platform: tiktok, instagram, youtube, facebook, linkedin, x, threads, pinterest, or bluesky. Omit it to rank all platforms together.
string
default:"90d"
How far back to look: 30d, 90d, or 180d.
number
default:"3"
How many slots to return. Range: 1-5.

Response

string
ok when at least one slot was ranked, otherwise insufficient_data.
string
The range that was analyzed.
string | null
The platform filter, or null when all platforms were ranked together.
string
The time zone the slots are expressed in.
number
Number of published posts the ranking was built from.
array
Best slots, best first. At most count items.

Error Responses

  • 401 - authentication failed (missing, invalid, or revoked token)
  • 422 invalid_payload - a query parameter is missing or invalid; fields names each one
  • 500 best_times_failed - unexpected error while reading analytics
All error responses from analytics endpoints include an error_code field.