Feedback
Feedback is a message your project sends to the service's team. This resource submits one and reads back what has been submitted before. Feedback cannot be edited or withdrawn once sent.
Endpoints
| Method | Path | Scope |
|---|---|---|
| GET | /v1/feedback | feedback:read |
| GET | /v1/feedback/<feedback_id> | feedback:read |
| POST | /v1/feedback | feedback:write |
<feedback_id> is a feedback identifier, prefixed fbdk_.
The feedback object
| Field | Type | Description |
|---|---|---|
id | string | The feedback identifier, prefixed fbdk_. |
object | string | Always feedback. |
topic | string | What the message is about. |
message | string | The message itself. |
status | string | How far the message has been taken. |
created_at | integer | When it was sent, in Unix seconds. |
updated_at | integer | Last change, in Unix seconds. |
status is set by the team that reads the message, not by you. It is the only field that changes after a submission, which is why updated_at can be later than created_at.
Send feedback
POST /v1/feedback submits a message. Both fields are required.
| Parameter | Type | Required | Description |
|---|---|---|---|
topic | string | yes | A short subject. Anything past 200 characters is trimmed. |
message | string | yes | The message. Not length-limited. |
curl -X POST https://api.thinkhx.com/v1/feedback \
-H "Authorization: Bearer sk-project-YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"topic": "Run latency on the Starter plan",
"message": "Runs queued at 09:00 UTC take about four times longer than the rest of the day."
}' {
"code": 201,
"title": "Created",
"response": {
"id": "fbdk_9e1750cab38df2461c07",
"object": "feedback",
"topic": "Run latency on the Starter plan",
"message": "Runs queued at 09:00 UTC take about four times longer than the rest of the day.",
"status": "new",
"created_at": 1754209800,
"updated_at": 1754209800
}
} | Code | Message | Cause |
|---|---|---|
| 422 | topic is required. | topic was absent or empty. |
| 422 | message is required. | message was absent or empty. |
Tip — A trimmed
topicis not an error, so the response is the place to check what was actually recorded. Keep the subject short and put the detail inmessage.
Read the feedback
GET /v1/feedback returns what the project has sent, newest first, and GET /v1/feedback/<feedback_id> returns one message. Feedback belonging to another project gives 404 and Feedback not found.
curl https://api.thinkhx.com/v1/feedback \
-H "Authorization: Bearer sk-project-YOUR_KEY" {
"code": 200,
"title": "OK",
"response": {
"object": "list",
"data": [
{
"id": "fbdk_9e1750cab38df2461c07",
"object": "feedback",
"topic": "Run latency on the Starter plan",
"status": "new",
"created_at": 1754209800,
"updated_at": 1754209800
}
],
"total": 1
}
} The list omits message. Read one entry to get it back.