User:DKinzler (WMF)/API Glossary

From mediawiki.org
Request
a message sent by a client to MediaWiki in order to request or manipulate data associated with the resource at the requested path, per the HTTP standard. A request consists of metadata encoded in headers and optionally a body of data, as well a request URI containing the  path and query parameters.
Response
a message sent by MediaWiki to a client as a consequence of a request previously received from that client, per the HTTP standard. A response consists of metadata encoded in headers and optionally a body of data.
Headers
meta-data associated with a request or response per the HTTP standard.
Client
Software interacting with MediaWiki (the server)  over the HTTP protocol.
REST
An API paradigm centered around representational state transfer.
Endpoint
A resource or set of resources identified by a route and associated with a specific handler.
Handler
Software component responsible for handling requests to a specific endpoint. A given type of handler is often associated with a certain type of resource.
Router
The component of the server that matches the path associated with incoming requests against the defined routes to identify the appropriate endpoint, and passes the request to the associated handler.
Server
[FIXME talk about the server as a location and container of resources] Software that receives requests from a client and sends back responses. A server typically provides access to many resources. A REST server does so by using a router to pass the request to the appropriate endpoint handler. In the context of this document, the server is MediaWiki.
Path
The address of a resource on a server.
Path pattern
A pattern for paths containing placeholders that represent parameters.
Route
A path pattern associated with a REST handler.
Payload
The data structure encoded in the body. In the context of this document, this is typically a structure of nested lists and maps (indexed and associative arrays) representing a present or desired state of a resource.
JSON
A generic serialization format for data structures based on the notation for objects in JavaScript.
API
A set of endpoints that allows client software to access and manipulate the state of the resources managed by a server.
Parameter
Information extracted from a request that tells the handler which resource to access, and what to do what to do with it. Requests can be encoded in the path itself (path parameters) or in the request URI in addition to the path (query parameters). Sometimes, the request’s payload is also interpreted as parameters (body parameters or post parameters).
Resource
The target of a request, per the HTTP standard. A resource has a unique path on the server, and can be accessed using requests. Resources may represent any kind of thing managed accessible through the REST API, such as pages or users. Resources are generally stateful, that is, they may change over time.
Body
Data representing the payload in serialized form (in the context of this document, generally as JSON).
HTTP
The communication standard specified by RFC 9110 on which the "world wide web" is based.
JSON Schema
A formal description of the expected or guaranteed format of JSON structures that can be used for validation.
Validation
The process of determining whether some data (such as a parameter or a JSON document) matches the expectations defined for it by a schema, such as the data type or structure.
Request Method
A verb describing the kind of action to perform on the resources, as specified by the HTTP standard. The most important methods are GET (request a resources), POST (update a resources), PUT (create a resources), and DELETE (destroy a resources).