All resources communicate error condition with standard HTTP status code. Below is an overview of all the supported codes, along with some suggestions that might help you fix things.

HTTP CodeMessageDescription
400Bad RequestOur server is unable to understand the request. This is likely caused by a programming error on your side.
401UnauthorizedThis means that we were not able to authenticate you based on the information provided in the request. Make sure you're sending a valid access_token.

If you're connecting using OAuth2, don't forget that tokens can expire. These will need to be refreshed. Not doing so can also result in getting a 401 error.
403ForbiddenYou don't have access to the requested resource.
404Not FoundThe resource you requested is not found. Please double check the URL of your request.
415Unsupported Media TypeYou are probably not POSTing content with application/json as content type.
429Too Many RequestsOur API limits the rate at which you can perform certain actions.
500Internal Server ErrorUh-oh. Something went wrong on our side. We're sorry. We keep track of these, and we'll try to fix it!
503Service UnavailableThis means that we're having some trouble, and our servers are too busy to handle your request. You'll want to check for these and give your user a chance to retry the request. We keep track of these and try to make sure they don't happen.
504Gateway TimeoutThis means the request is taking too long. However, it doesn't always mean that we didn't receive your request. We could still be chugging away on the changes you made, and this means that you may want to check before retrying.