Module ruma_common::api
source · [−]Expand description
Core types used to define the requests and responses for each endpoint in the various Matrix API specifications.
When implementing a new Matrix API, each endpoint has a request type which implements
IncomingRequest
and OutgoingRequest
, and a response type connected via an associated
type.
An implementation of IncomingRequest
or OutgoingRequest
contains all the information
about the HTTP method, the path and input parameters for requests, and the structure of a
successful response. Such types can then be used by client code to make requests, and by server
code to fulfill those requests.
Modules
This module contains types for all kinds of errors that can occur when converting between http requests / responses and ruma’s representation of matrix API requests / responses.
Macros
Generates IncomingRequest
and OutgoingRequest
from a concise definition.
Structs
Metadata about an API endpoint.
Enums
Authentication scheme used by the endpoint.
The Matrix versions Ruma currently understands to exist.
An enum to control whether an access token should be added to outgoing requests
A versioning “decision” derived from a set of matrix versions.
Traits
Gives users the ability to define their own serializable / deserializable errors.
Marker trait for requests that don’t require authentication, for the server side.
A request type for a Matrix API endpoint, used for receiving requests.
A response type for a Matrix API endpoint, used for receiving responses.
Marker trait for requests that don’t require authentication, for the client side.
A request type for a Matrix API endpoint, used for sending requests.
An extension to OutgoingRequest
which provides Appservice specific methods.
A request type for a Matrix API endpoint, used for sending responses.