Check accounts health
Returns health status of all connected accounts including token validity, permissions, and issues needing attention.
Authorization
bearerAuth API key authentication: send your Zernio API key in the Authorization header, prefixed with Bearer.
In: header
Query Parameters
Filter by profile ID
Filter by platform
Value in
- "facebook"
- "instagram"
- "linkedin"
- "twitter"
- "tiktok"
- "youtube"
- "threads"
- "pinterest"
- "reddit"
- "bluesky"
- "googlebusiness"
- "telegram"
- "snapchat"
- "discord"
- "slack"
- "whatsapp"
Filter by health status
Value in
- "healthy"
- "warning"
- "error"
Response Body
application/json
application/json
application/json
{ "summary": { "total": 5, "healthy": 3, "warning": 1, "error": 1, "needsReconnect": 1 }, "accounts": [ { "accountId": "abc123", "platform": "instagram", "username": "myaccount", "status": "healthy", "canPost": true, "canFetchAnalytics": true, "tokenValid": true, "tokenExpiresAt": "2025-06-15T00:00:00Z", "needsReconnect": false, "issues": [] }, { "accountId": "def456", "platform": "twitter", "username": "mytwitter", "status": "error", "canPost": false, "canFetchAnalytics": false, "tokenValid": false, "needsReconnect": true, "issues": [ "Token expired" ] } ]}List posts published on the platform
Returns the 25 most recent posts that exist on the platform for a connected account, read live from the platform API. This covers everything on the account, including posts that were never created through Zernio. Use it to obtain the platform's own post id, which the analytics endpoints take as input. On YouTube the returned `id` is the video ID that `GET /v1/analytics/youtube/daily-views`, `/video-retention` and `/demographics` expect as `videoId`, so this endpoint is what backs a video picker in your own UI. Not every field applies to every platform: `reactionCount` is Facebook and LinkedIn, `shareCount` is platform dependent, `cid` is the Bluesky content id needed to reply, and `subreddit` is Reddit only. Absent fields are omitted from the response. The account's token is refreshed before the call when it has expired. When the refresh cannot recover it, the response is a 401 with code `TOKEN_EXPIRED` and the account has to be reconnected.
Get Bluesky account settings
Returns the account's default post languages (defaultLangs), applied at publish time whenever a post's platformSpecificData.langs is absent. Null when no default is set.