Skip to content

🌿 API Quick Reference


✨ HTTP Verbs

GET

🟠 GET: Retrieve data from the server.

POST

🟢 POST: Send data to the server to create a resource.

PUT

🔵 PUT: Send data to the server to update a resource.

DELETE

🔴 DELETE: Delete a resource from the server.

PATCH

🟠 PATCH: Send data to the server to update a resource partially.

TRACE

🟠 TRACE: Returns the full HTTP Request received by the server for debugging.

OPTIONS

🟠 OPTIONS: Returns the HTTP methods supported by the server for the request URL.

CONNECT

🟠 CONNECT: Converts the request connection to a transparent TCP/IP tunnel for secure communication.

PURGE

🟡 PURGE: Invalidates a cached resource.

LOCK

🟡 LOCK: Locks the resource for exclusive use by the client.

UNLOCK

🟡 UNLOCK: Unlocks the resource previously locked by the client.

MKCOL

🟠 MKCOL: Creates a new collection resource.

COPY

🟠 COPY: Copies the resource identified by the request-URI to the destination URI.


✨ HTTP Status Codes

Informational

  • 100: Informational.

Success

  • 200: Success.

Redirection

  • 300: Redirection.

Client Errors

  • 400: Client errors.

Server Errors

  • 500: Server errors.

✨ Response Headers

Content-type

🟠 Content-type: Specifies the MIME type of the data in the response body.

Content-length

🟠 Content-length: Specifies the length of the response body in bytes.

Cache-control

🟠 Cache-control: Specifies the caching behavior of the response.

Location

🟠 Location: Specifies the URI of a resource to retrieve the request resource.

Server

🟠 Server: Name and version of the server software generating the response.

Access-control-allow-origin

🟠 Access-control-allow-origin: Which origins are allowed to access the resource.

Set-cookie

🟠 Set-cookie: Specifies a cookie to be stored by the client and sent back with future requests.

Expires

🟠 Expires: Date/time after which the response is considered stale.

Last-modified

🟠 Last-modified: Date/time that the resource was last modified.


✨ API Design

REST

🟠 REST: Representational State Transfer, a design pattern for building web services.

SOAP

🟠 SOAP: Simple Object Access Protocol, a messaging protocol for exchanging structured data.

GraphQL

🟠 GraphQL: A query language and runtime for building APIs.

API Gateway

🟠 API Gateway: A service that manages, protects, and scales APIs.


✨ API Architectures

SOA

🟠 SOA: Service-Oriented Architecture, a style for building distributed systems.

Microservices

🟠 Microservices: An architectural style for building applications as a suite of small independent services.

Serverless

🟠 Serverless: Cloud execution model where the provider manages infrastructure and resources automatically.

Event-Driven

🟠 Event-Driven: Flow of data between components is triggered by events.

RESTful API

🟠 RESTful API: Uses HTTP requests to GET, POST, PUT, and DELETE data.


✨ API Design Patterns

Adapter Pattern

🟠 Adapter Pattern: Converts the interface of a class into another interface that clients expect.

Decorator Pattern

🟠 Decorator Pattern: Adds behaviors to an individual object dynamically.

Proxy Pattern

🟠 Proxy Pattern: Provides a surrogate or placeholder to control access to another object.

Chain of Responsibility

🟠 Chain of Responsibility Pattern: Delegates commands to a chain of processing objects.

Observer Pattern

🟠 Observer Pattern: Defines a one-to-many dependency between objects; dependents update automatically when the object changes.


✨ API Security

OAuth

🟠 OAuth: Open standard for authorization used for protecting APIs.

JWT

🟠 JWT: JSON Web Tokens, a standard for securely transmitting information between parties.

SSL/TLS

🟠 SSL/TLS: Protocol for establishing a secure connection between client and server.

API Key

🟠 API Key: Secret token limiting requests to an API over a period.

OpenID Connect

🟠 OpenID Connect: Authentication layer on top of OAuth for multi-domain user auth.

CORS

🟠 Cross-Origin Resource Sharing (CORS): Allows resources on a webpage to be requested from another domain.


✨ API Testing

Postman

🟠 Postman: Popular tool for testing and debugging APIs.

SoapUI

🟠 SoapUI: Tool for testing SOAP and REST web services.

Swagger

🟠 Swagger: Tool for designing, building, and testing APIs.

JMeter

🟠 JMeter: Tool for testing API performance.

TestRail

🟠 TestRail: Test management tool for planning, executing, and tracking API tests.

Dredd

🟠 Dredd: Command-line tool for testing API documentation against backend implementation.

REST Assured

🟠 REST Assured: Java-based library for testing RESTful APIs.

Karate DSL

🟠 Karate DSL: Testing framework for APIs using Gherkin syntax.

HttpMaster

🟠 HttpMaster: Tool for testing and debugging APIs.

Assertible

🟠 Assertible: Tool for testing and monitoring APIs with automated tests.