Docs

Start here

Confirm a support request

GET/v1/support/confirm/{token}on https://api.auray.ai/v1

The click that turns a waiting request into a conversation.

The click that turns a waiting request into a conversation. A request from an address that has not proved it controls its mailbox is held rather than ticketed — that is what makes an attacker need one controlled mailbox per ticket — and this is the other half. A GET because it is clicked from an email; idempotent, so a second click answers with the same reference rather than making another ticket.

#Authentication

No key needed — this document is public.

#Request

#Path parameters

NameTypeRequiredDescription
tokenstringyesThe whole path segment, never a query parameter — a token in a query string lands in referrer headers and in analytics. 32 random bytes, base64url.

#Example request

curl https://api.auray.ai/v1/support/confirm/…

#Responses

#200 OK

Confirmed. held: true means the address proved itself and the message is still held for our support team — two different questions, and clicking a link answers only the first.

FieldTypeRequiredDefaultDescription
statusstringno—One of "confirmed".
referencestringno—
replayedbooleanno—True on a second click of the same link.
acknowledgedbooleanno—Whether the acknowledgement email was accepted for delivery. A false here does not mean the ticket failed.
heldbooleanno—

Headers:

HeaderDescription
RateLimit-Limit
RateLimit-Remaining
RateLimit-ResetSeconds until refill.
X-Request-Id

#404 Not Found

support_link_invalid — not one of ours, or revoked. The two answer identically on purpose.

The error body: error, message, docs (the entry that explains it) and request_id.

#410 Gone

support_link_expired — ours, and older than 72 hours.

The error body: error, message, docs (the entry that explains it) and request_id.

#429 Too Many Requests

support_rate_limited — too many attempts from this address.

The error body: error, message, docs (the entry that explains it) and request_id.

#503 Service Unavailable

support_disabled, support_not_configured or support_unavailable.

The error body: error, message, docs (the entry that explains it) and request_id.

#Status codes

StatusMeaning
200Confirmed. held: true means the address proved itself and the message is still held for our support team — two different questions, and clicking a link answers only the first.
404support_link_invalid — not one of ours, or revoked.
410support_link_expired — ours, and older than 72 hours.
429support_rate_limited — too many attempts from this address.
503support_disabled, support_not_configured or support_unavailable.

Every refusal names its code, and every code is explained at Errors.

Start typing to search every page of the documentation.

Up arrow Down arrow to moveEnter to openEscape to close