# API Response Codes

## Glossary

| **Response Code**                | **Messages**                                                                                                                             | **Explanation**                                                                                                                                                                                                                                                                                                                                                                                                          |
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `200 OK`                         | The request was successful!                                                                                                              | N/A                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `400 Bad Request`                | Request validation failed on an input.                                                                                                   | Check that your inputs are entered correctly.                                                                                                                                                                                                                                                                                                                                                                            |
| `401 Unauthorized`               | Participant authentication is required.                                                                                                  | N/A                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `402 Usage Limit`                | Participant quota has been exhausted.                                                                                                    | You've reached a plan limit and will need to upgrade to the next tier.                                                                                                                                                                                                                                                                                                                                                   |
| `402 Payment Method Required`    | You must add a payment method to your account to use the REST API for affiliate programs.                                                | N/A                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `403 Not Authorized`             | <p>You are not allowed to perform that action.</p><p><br>Or no valid participant access token provided.</p>                              | <p>Your API key may be revoked or contain a typo, or you may be trying to interact with another user's program or participant data (which is not allowed).<br><br>Verify that your API key has access permission to the campaign (or if you are a team member, make sure you have an Admin role within the team or that you have API access to the campaign).</p>                                                        |
| `403 Paid Plan Required`         | A paid plan is required to use the GrowSurf REST API                                                                                     | N/A                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `404 Resource Not Found`         | The requested resource does not exist.                                                                                                   | You may be trying to request a resource that does not exist or was deleted.                                                                                                                                                                                                                                                                                                                                              |
| `409 Conflict Duplicate Request` | Conflicting duplicate request.                                                                                                           | N/A                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `422 Unprocessable Entity Error` | This endpoint is only available for referral programs. Your program is an affiliate program.                                             | You may be trying to call an endpoint that is only valid to referral programs (or vice versa with affiliate programs).                                                                                                                                                                                                                                                                                                   |
| `422 Participant Blocked`        | Participant was detected as a high-risk fraudster and was blocked from joining.                                                          | <p>The person may be a high-risk fraudster, and has been blocked from entering the program. <a href="https://support.growsurf.com/article/195-what-does-the-growsurf-anti-fraud-system-entail">Learn more about how GrowSurf's anti-fraud system works</a>.<br><br>Please check that your program's anti-fraud settings are not set to <em>Strict</em>, or that you do not have the email or IP address blacklisted.</p> |
| `429 Too Many Requests`          | You have reached a rate limit.                                                                                                           | <p>You have sent too many requests in a given time OR You have reached the usage limit in your current plan.<br><br>See <a href="https://docs.growsurf.com/developer-tools/rest-api/api-guidelines#rate-limits">Rate Limits</a> and <a href="https://docs.growsurf.com/developer-tools/rest-api/api-guidelines#max-connections">Max Connections</a> for more details on rate limits.</p>                                 |
| `5XX Internal Server Error`      | The GrowSurf server is inaccessible or offline -- that's our fault! Check for updates on our [status page](https://growsurf.com/status). | N/A                                                                                                                                                                                                                                                                                                                                                                                                                      |
