Reference
Scopes
A scope is one named permission your API key holds. Pick the minimum your integration needs. Scopes are set at key creation and can't be changed afterwards — to change scopes, generate a new key and revoke the old one.
Catalog
Post Jes
write:jesCreate and edit the bound account's Jes (text + media). Includes bounces and quote-bounces.
POST /api/posts, PATCH /api/posts/:id (own only), POST /api/posts/:id/bounce
Post JesClips
write:jesclipCreate and edit the bound account's JesClips (short videos). Media upload is included — no separate media scope.
POST /api/jesclips, PATCH /api/jesclips/:id (own only)
Comment
write:commentPost comments and replies on any Jes the bound account can see, including its own.
POST /api/posts/:id/comments, POST /api/jesclips/:id/comments
Read comments
read:commentRead the comment thread on a single Jes by ID. There is no scope that lets you list comments across Jes — you must know the Jes id (e.g. from a webhook).
GET /api/posts/:id/comments
Read engagement counts
read:engagementRead like / comment / bounce / save counts on a single Jes by ID. Useful for analytics dashboards over the bound account's own content.
(counts embedded in single-Jes GETs)
Manage webhooks
webhooks:manageAdd, remove, and test the webhook endpoints attached to this key. Not required for receiving webhook deliveries — only for managing them via API instead of from the web UI.
POST /api/auth/api-keys/:id/webhooks, DELETE /api/auth/api-keys/:id/webhooks/:webhookId
Not available, regardless of scope
Some endpoints are blocked for API key callers no matter which scopes the key holds. These are session-only operations, by design:
- ✕The home feed, JeHub feeds, JesClip feed, trending, discover — anything that lists content
- ✕Searching users, Jes, or hashtags
- ✕Reading other users' profiles beyond the public snippet attached to a single Jes
- ✕Liking content (writing likes is intentionally not exposed in v1)
- ✕Account management — email, password, 2FA, account deletion
- ✕Creating, revoking, or listing API keys
- ✕Admin operations
Discovery — feeds, search, trending — stays in the Jestha app. We don't expose it to API keys at any level. Apps publish to and react on Jestha; they can't replace it.
Picking the right scopes
Smallest set that gets the job done. Examples:
- A scheduling tool that posts on a cron:
write:jes,write:jesclipif videos are in scope. - A moderation dashboard that watches comments:
read:comment,read:engagement, pluswebhooks:manageif it sets up its own endpoints. - A cross-poster that publishes elsewhere first:
write:jes,write:comment.
The settings UI shows each scope's description as you check it — see Settings → API access.