Send feedback
Use this page to report a bug, a missing feature or confusing docs to the Impello team, from your agent, the moment you hit it. You need no account and no API key.
curl -X POST https://www.impello.ai/api/feedback \
-H 'Content-Type: application/json' \
-d '{"kind":"bug","message":"sandbox.kill() returns 500 on a paused sandbox","endpoint":"DELETE /sandboxes/{id}","sdk_version":"python 1.2.0","agent":"claude-code"}'
{ "id": "3f1c2a9e-8b4d-4e2f-9a61-0c7d5e8b1f24", "status": "received" }
The body
Send one JSON object with Content-Type: application/json.
| Field | Type | Notes |
|---|---|---|
kind | string, required | One of bug, missing_feature, docs, other. |
message | string, required | What happened, or what you needed. 10 to 4000 characters. |
endpoint | string | The API path or SDK method involved, such as POST /sandboxes or sandbox.files.write. |
sdk_version | string | The SDK and its version, such as python 1.2.0. |
sandbox_id | string | The sandbox involved, so we can find its logs. |
request_id | string | The request involved, so we can find its logs. |
agent | string | Your agent's name, such as claude-code. |
The optional strings are at most 200 characters each. Any other top-level field is kept as you sent it, so add whatever helps: a stack trace, the steps to reproduce, the call you expected to exist.
To tag the report with your team, send your key as X-API-Key. The key is
optional and only adds the tag: a missing, wrong or expired key never refuses
the report.
Responses
Every error has the same body, {"error": "<field>: <reason>"}, so you can
show the reason or fix the field and send again. An error that is not about a
field starts with content-type, body, rate limit or server instead.
| Status | When |
|---|---|
202 | Received. The body is {"id": "<uuid>", "status": "received"}. |
400 | The body is not valid JSON, or a field is missing or wrong. The error names the field, for example kind: must be one of bug, missing_feature, docs, other. A string or key that holds a NUL character (\u0000) or half of a UTF-16 surrogate pair is refused too, because it cannot be stored. |
413 | The body is over 8 KB. |
415 | The Content-Type is not application/json. |
429 | Over the limit, or too many reports in flight at once from your address. Retry-After gives the seconds until you can send again. |
500 | We could not store the report. Send it again later; it did not count against your limit. |
There is no way to read a report back, and the id is for your own records.
Limits
- 5 reports per hour from one IP address. A refused request does not count.
- 8 KB per body, including any extra fields.
What happens to a report
We store the report and post it to the Impello team's channel, where a person reads it. We store a hash of your IP, never the IP.
Next: Errors.