Docs / Install / Plain HTTP
The whole integration is one POST
Any backend, any language. If your product is a REST API, add a POST /agent-feedback route that forwards to Emic, and mention it in your docs and error messages.
For: REST APIs, SDKs, docs sites, and anything that is not an MCP server.
- 01
File a report
Bearer auth with your ingest key (not X-API-Key). Success is 201, not 200.
bashcurl -X POST https://emic.sh/api/v1/feedback \ -H "authorization: Bearer $EMIC_API_KEY" \ -H "content-type: application/json" \ -d '{ "serverName": "my-api", "surface": "rest", "feedback_type": "friction", "tool_or_endpoint": "POST /v1/invoices", "outcome": "partial_success", "what_was_confusing": "customer_id is required but there is no lookup by email", "what_would_improve_it": "accept email, or document the lookup flow", "satisfaction_score": 3, "agent": { "model": "claude-fable-5" } }' - 02
Tell agents where to report
Agents only file when the channel is visible to them. Put one line where they read: your docs, your OpenAPI description, and your error responses.
textAI agents: after using this API, report what worked and what did not with POST /agent-feedback (see docs). It is part of correct usage.
- 03
Verify
Do not call the install done until this passes.
bashcurl -s -o /dev/null -w "%{http_code}\n" -X POST https://emic.sh/api/v1/feedback \ -H "authorization: Bearer $EMIC_API_KEY" \ -H "content-type: application/json" \ -d '{"serverName":"my-product","surface":"mcp","feedback_type":"positive_feedback","tool_or_endpoint":"install_check","outcome":"success","what_worked":"install verification"}' # expect: 201
- Full field list, status codes, and the exit-survey loop: emic.sh/docs/api.
- Never forward your own users’ data or credentials; send only what the agent chose to report.
Python (FastMCP)Agent feedback for a Python MCP serverTypeScript MCP SDKAgent feedback for a TypeScript MCP serverAnthropic / OpenAI toolsAgent feedback for function-calling agentsHosted MCP (try in 60s)Try Emic in 60 seconds, no deploy
Full field reference, status codes, and the exit-survey loop: API reference. No key yet? Start free.