Error codes
Last updated·1 min read
All error responses from the TheNotificationApp API follow the same structure:
{
"success": false,
"error": "Error message here"
}
HTTP status codes
| Status | Meaning |
|---|---|
| 200 | Success — notification sent |
| 400 | Bad request — invalid or missing fields |
| 401 | Unauthorized — missing or invalid API key |
| 429 | Too many requests — rate limit exceeded |
| 500 | Internal server error |
400 errors — validation
| Error message | Cause | Fix |
|---|---|---|
Title and body are required |
title or body missing from the request body |
Include both fields in your JSON payload |
Title and body must be strings |
title or body is not a string (e.g. a number or null) |
Ensure both values are strings |
Link must be a string |
link field is not a string |
Pass a string URL or omit the field |
Image must be a string |
image field is not a string |
Pass a string URL or omit the field |
No devices registered for this application |
The app key is valid but no device is linked to it | Open the iOS app and ensure you're signed in with the correct account |
401 errors — authentication
| Error message | Cause | Fix |
|---|---|---|
Missing app_key header |
The app_key header was not included |
Add the app_key header to every request |
Invalid app_key |
The API key doesn't match any application | Check for typos, or regenerate the key in the iOS app |
429 errors — rate limits
| Error message | Cause | Fix |
|---|---|---|
Monthly message limit exceeded |
Pro tier monthly limit of 1,000 reached | Wait for the monthly reset on the 1st, or reduce notification volume |
Lifetime message limit exceeded |
Free tier limit of 100 reached | Upgrade to Pro |
See rate limits for full details on quotas and resets.
500 errors
Internal server errors are rare. If you receive a 500 response consistently, contact contact@thenotification.app.