Incidents and support
A key or connection may have leaked
Revoke it immediately in Settings → API keys. For OAuth, revoke the connection there and disconnect it in the client. Do not wait for a support reply. Replace the credential in your server's secret manager if you still need the integration. Never put the old or replacement credential in a message, URL, screenshot or public issue.
Report suspected misuse through Send feedback in the app or email Patrick. Include the key's display name, approximate incident time and timezone, affected endpoint and any unexpected charge or story ID. Do not include authorization headers, tokens, passwords or private story text. Revocation cannot recall data already downloaded or undo work already accepted.
Report an API or MCP bug
Use Send feedback in the app or email Patrick. Include the endpoint or MCP method, HTTP status and error code, time and timezone, client name/version and a minimal reproduction with secrets and private text removed. Include the story or book ID only when relevant. Describe what you expected and what happened.
After an uncertain paid creation, check the app for existing work before trying again. Do not repeatedly create stories to reproduce a problem. For billing questions, include the time and affected story or book ID without payment details.
Availability and response coverage
The API is in early access. There is no API SLA, guaranteed response time, 24-hour incident coverage or guaranteed client compatibility. A message is not an acknowledgement that work has been stopped or a refund granted. Rate limits and temporary pauses can apply. The docs remain readable during an API interruption.
Keep the last validated read result where appropriate, respect Retry-After and use bounded backoff for safe reads. Never automatically retry an uncertain paid POST. See limits and retries.