API Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(7 intermediate revisions by the same user not shown)
Line 4: Line 4:
* [[Amazon API Gateway Concepts]]
* [[Amazon API Gateway Concepts]]
* [[REST and Hypermedia]]
* [[REST and Hypermedia]]
* [[Grpc|gRPC]]


=Overview=
=Overview=
At its core, an AP*I is a contract that specifies sending requests and receiving responses. The API is all about the data.


A REST API is made up of [[REST_and_Hypermedia#Resource|resources]] and [[REST_and_Hypermedia#Method|methods]].
A REST API is made up of [[REST_and_Hypermedia#Resource|resources]] and [[REST_and_Hypermedia#Method|methods]].
Line 18: Line 20:


==Websocket API==
==Websocket API==
=OpenAPI Operation Declaration and Implementation Examples=
{{Internal|OpenAPI_Specification_Path#Operation_Declaration_and_Implementation_Examples|OpenAPI Examples}}


=API Design=
=API Design=
Line 92: Line 97:


=API Handler=
=API Handler=
The handler and the business logic should be separated, even though the primary purpose of the application is to handle API requests.
The API handler does to access the database directly, the access is intermediated by the business logic layer.
=API Types=
==HTTP==
==gRPC==

Latest revision as of 02:08, 11 May 2024

Internal

Overview

At its core, an AP*I is a contract that specifies sending requests and receiving responses. The API is all about the data.

A REST API is made up of resources and methods.

REST and Hypermedia Concepts

Resource, Method, Request, Response

API

REST API

Websocket API

OpenAPI Operation Declaration and Implementation Examples

OpenAPI Examples

API Design

API Design or API Modeling.

API Contract.

TO PROCESS:

Top-Down Approach vs. Bottom-Up Approach

The top-down API design and development approach is also known as "schema-first" or "definition-driven" approach.

TO PROCESS:

API Development

One of the artifacts of API development could be a client SDK. Tools like Swagger Codegen provide the means to generate SDK right from the API definition.

TO PROCESS:

API Documentation

Documentation can be auto-generated from an API definition, or can be generated from an existing API at runtime (see Swagger Inflector, Swagger Inspector).

TO PROCESS:

API Testing

TO PROCESS:

API Mocking and Virtualization

API development can become cumbersome as the number of dependencies on internal and external services grows. A technique to deal with that is to mock API dependencies, and interact with them before the actual service is built.

TO PROCESS:

API Governance

TO PROCESS:

API Monitoring

TO PROCESS:

OpenAPI

OpenAPI

API Handler

The handler and the business logic should be separated, even though the primary purpose of the application is to handle API requests.

The API handler does to access the database directly, the access is intermediated by the business logic layer.

API Types

HTTP

gRPC