Posted in Information Technology, Software Architecture, Software Engineering

RESTful API cheatsheet

Status codes

200 OK Successful get, patch (return a JSON object)
201 Created Successful post (return a JSON object)
202 Accepted Successful post, delete, path – async
204 No content Successful delete
206 Partial content Successful get – async

Error status

401 Unauthorized Not authenticated
403 Forbidden Authenticated, but no permissions
422 Unprocessable entity Validation

Errors

HTTP/1.1 401 Unauthorized
Content-Type: application/json
{
  'id': 'auth_failed',
  'message': "You're not logged in."
}

Here’s an example of a possible error reply.

Versioning

GET /api/foo
Accept: application/json; version=1

You can pass a version=x to the Accept request header. Info here

Authentication

curl -is https://$TOKEN@api.service.com/

Methods

GET /articles/1 read, returns 200
PUT /articles/1 edit (or path), returns 200
DELETE /articles/1 delete, returns 200
POST /articles create, returns 201
GET /articles list, returns 200

References

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s