## Errors
If there is an error while processing your request, the response will include an HTTP status code indicating the error.  Errors are currently returned as a top-level `errors` key with an array of error objects.  For example, on OAuth failure you will receive a HTTP 401 with the following JSON body:

```json
{
  errors: [
    {
      type: "oauth"
      message: "Invalid OAuth 2 Request"
    }
  ]
}
```
System errors will look like:

```json
{
  errors: [
    {
      type: "system"
      message: "Your account has been canceled"
    }
  ]
}
```
And model validation errors look like:

```json
{
  errors: [
    {
      type: "validation",
      message: "Please give your project a title",
      field: "title"
    },
    {
      type: "validation",
      message: "Please select a role for this project",
      field: "creator_role"
    }
  ]
}
```
