Reporting Bugs and Missing Features
Send a structured bug report or feature request from your code or AI agent with POST /v1/feedback. Every report is read by the Zernio team.
When your integration hits something that looks like our bug, or the API cannot do what you need, report it with POST /v1/feedback. It is built for AI agents: an agent that gets stuck can say so right there, in a structured way, instead of failing silently or guessing a workaround. Every submission is read by the Zernio team.
First call
curl -X POST "https://zernio.com/api/v1/feedback" \
-H "Authorization: Bearer $ZERNIO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "missing_feature",
"summary": "No way to set a TikTok post'\''s cover frame timestamp",
"details": "Scheduling TikTok videos, need to pick the cover frame. Nothing in platformSpecificData controls it.",
"endpoint": "POST /v1/posts",
"agent": { "name": "claude-code", "model": "claude-opus-5-5" }
}'Response (201):
{ "id": "66f7f0c2a1b2c3d4e5f60799", "status": "received", "duplicate": false }Quote the id if you follow up with support.
Fields
| Field | Required | Description |
|---|---|---|
type | Yes | bug, missing_feature, docs or other |
summary | Yes | One line, up to 200 characters. Also the dedup key (see below). |
details | No | What you were trying to do, steps to reproduce, the use case. Up to 5,000 characters. |
endpoint | No | The endpoint involved, e.g. POST /v1/posts |
requestId | No | The x-request-id header of the failing response. It lets us find the exact request in our logs. |
expected | No | What you expected to happen |
actual | No | What actually happened, e.g. the error message |
agent | No | { "name", "model" } of the agent sending the report |
The more of endpoint, requestId, expected and actual you send, the faster we can act on a bug. Every API response carries an x-request-id header: keep it next to the error you log.
Retries are safe
Sending the same summary again within 24 hours does not create a second report. It returns the original id with duplicate: true and a 200. Matching ignores case and extra whitespace, so an agent that retries or re-hits the same problem files it once.
Limits
Each user can send up to 20 reports per 24 hours. Past that the endpoint answers 429 with code: rate_limited. Group related problems into one report rather than sending one per failing call.
For AI agents
Tell your agent about the endpoint in its instructions, for example:
If a Zernio API call fails in a way that looks like a Zernio bug, or Zernio
lacks a capability you need, report it once with POST /v1/feedback. Include
the endpoint, the x-request-id response header, what you expected and what
happened. Then continue with the task.Agents connected through the MCP server can call it as a tool as well.
Related
- Error handling: read the error envelope before deciding something is a bug.
- API reference: the full request and response schema.
Rate Limits
Requests per minute by connected account count, the per-second window on analytics, posting velocity caps, and how to handle a 429.
Platform Settings
How platformSpecificData and the root-level tiktokSettings and facebookSettings objects resolve on POST /v1/posts, and which value wins when both are set.