HTTP Status Codes

The thethings.iO API attempts to return appropriate HTTP status codes for every request.

Code Text Description
200 OK Success!
201 Created Created / Pushed!
304 Not Modified There was no new data to return.
400 Bad Request The request was invalid or cannot be otherwise served. An accompanying error message will explain further.
401 Unauthorized Authentication credentials were missing or incorrect.
403 Forbidden The request is understood, but it has been refused or access is not allowed. An accompanying error message will explain why. This code is used when requests are being denied due to rate limits.
404 Not Found The URI requested is invalid or the resource requested, such as a user, does not exists. Also returned when the requested format is not supported by the requested method.
410 Gone This resource is gone. Used to indicate that an API endpoint has been turned off. For example: “thethings.iO REST API v1 will soon stop functioning. Please migrate to API v2.”
429 Too Many Requests Returned in API v2 when a request cannot be served due to the application’s rate limit having been exhausted for the resource.
500 Internal Server Error Something is broken. Please contact with support.
502 Bad Gateway thethings.iO is down or being upgraded.
503 Service Unavailable thethings.iO servers are up, but overloaded with requests. Try again later.
504 Gateway timeout thethings.iO servers are up, but the request couldn’t be serviced due to some failure within our stack. Try again later.

COAP Status Codes

In a similar way, the thethings.iO COAP API return appropriate COAP status codes for every request.

Code Description
2.01 Created
2.02 Deleted
2.03 Valid
2.04 Changed
2.05 Content
4.00 Bad Request
4.01 Unauthorized
4.03 Forbidden
4.04 Not Found
4.08 Request Entity Incomplete
4.12 Precondition Failed
4.13 Request Entity Too Large
5.00 Internal Server Error
5.02 Bad Gateway
5.03 Service Unavailable
5.04 Gateway Timeout