Troubleshooting
Symptom Decision Table
| Symptom | Check | Likely cause | Next action |
|---|---|---|---|
| API key rejected | Key prefix, environment, and application | Wrong key, revoked key, or wrong application | Replace it with the provisioned staging key |
| Browser request rejected | Exact Origin and key type | Origin missing or secret key used in browser | Register the origin and use a publishable key |
| User token rejected | Application scope, current session, and membership | Wrong app, expired/revoked session, or removed membership | Re-authenticate and confirm live access to the staging application |
Privileged route returns 403 | Server key, current user role, and granted capability | Publishable key or missing permission | Call from your server with authorized credentials |
| Entitlement result is unexpected | User, application, resource, and entitlement key | Wrong scope or stale business assumption | Log the identifiers and compare the documented contract |
| Webhook delivery fails | HTTPS URL, signature verification, and response code | Invalid destination or verifier | Correct the consumer endpoint; do not disable verification |
| Hosted API is unreachable | https://api.sweetpotato.dev from the same environment | Network, DNS, TLS, or service incident | Preserve the status/error and contact support |
Safe Diagnostic Request
curl --fail-with-body https://api.sweetpotato.dev/healthDo not paste secret keys, access tokens, full personal data, or raw webhook payloads into tickets. Send timestamps, request IDs, endpoint paths, HTTP status, application slug, and a redacted error.
A failing hosted request is not a reason to install another SPAPS runtime. Preserve the failure evidence and contact Sweet Potato when credentials, configuration, and network checks are clean.