Reject prompt suggestion
Not available yet. Write endpoints are documented ahead of implementation so the contract can be reviewed. No API key can call them today: every key is minted read-only, and a workspace must hold the write entitlement before one can be issued that is not.
Rejects a suggestion. It stops appearing in the proposed list and the generator learns not to offer the same shape again.
Nothing is created and no quota is consumed. Requires the write:prompts scope.
POST /v1/brands/{brand_id}/prompts/suggestions/{suggestion_id}/rejectAuthorization
| Header | Type | Required |
|---|---|---|
Authorization | Bearer asky_sk_… | required |
Idempotency-Key | string | required |
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
brand_id | uuid | required | From List brands |
suggestion_id | uuid | required | From List prompt suggestions |
Query parameters
None.
Any parameter you pass returns 400 invalid_request naming the offending key, rather than being
ignored silently.
Body
application/json
| Field | Type | Required | Description |
|---|---|---|---|
reason | string | optional | Free text. Stored to inform future generation |
Request
cURL
curl --request POST \
--url 'https://api.askylabs.com/v1/brands/242546de-4cee-4a7d-952e-f6aa60c63ef8/prompts/suggestions/8d31a70c-5f24-4e19-b063-9a1c72f4e850/reject' \
--header 'Authorization: Bearer <api-key>' \
--header 'Idempotency-Key: <unique-per-attempt>' \
--header 'Content-Type: application/json' \
--data '{"reason":"Not relevant to our market"}'Response
200
{
"data": { "id": "8d31a70c-5f24-4e19-b063-9a1c72f4e850" },
"request_id": "req_7f10ab3e6c92450d81ba"
}Response fields
| Field | Type | Description |
|---|---|---|
data.id | uuid | required. The rejected suggestion |
request_id | string | required. Also returned as the x-request-id header. Quote it when contacting support |
Errors
| Status | Code | When |
|---|---|---|
| 400 | invalid_request | A parameter is unknown or malformed. The message names it |
| 401 | invalid_token | The key is missing, malformed, or does not exist |
| 401 | token_expired | The key passed its expiry date |
| 401 | token_revoked | The key was revoked |
| 404 | not_found | The brand does not exist, or this key is not allowed to reach it. The two are deliberately indistinguishable |
| 429 | rate_limited | Over 300 requests per minute. See the Retry-After header |
Notes
Rejection is reversible only by regenerating suggestions — there is no un-reject.
A reason is optional but worth sending. It is the only feedback the generator receives about why
a proposal missed.