Skip to main content

rustauth_core/
api.rs

1//! Framework-neutral API contracts.
2
3pub mod body;
4pub(crate) mod http_json;
5pub mod output;
6pub mod routes;
7
8pub mod additional_fields;
9mod endpoint;
10mod error;
11mod middleware;
12mod on_api_error;
13mod openapi;
14mod path;
15mod plugin_pipeline;
16mod response_helpers;
17mod router;
18mod schema;
19mod security;
20pub(crate) mod services;
21mod session_request_state;
22
23pub use body::parse_request_body;
24pub use endpoint::{
25    async_auth_handler, async_endpoint_middleware, create_auth_endpoint, create_auth_endpoint_raw,
26    request_base_url, ApiRequest, ApiResponse, AsyncAuthEndpoint, AsyncEndpointHandler,
27    AuthEndpoint, AuthEndpointOptions, Body, EndpointFuture, EndpointHandler, EndpointInfo,
28    EndpointKind, EndpointMiddleware, EndpointMiddlewareFuture, EndpointMiddlewareHandler,
29    RequestBaseUrl,
30};
31pub use error::{api_error, response, ApiErrorCode, ApiErrorResponse};
32pub use middleware::{fresh_session_middleware, require_resource_ownership};
33pub use openapi::{
34    build_openapi_schema, empty_openapi_response, json_openapi_response, path_param, query_param,
35    redirect_openapi_response, OpenApiOperation,
36};
37pub use path::PathParams;
38pub use response_helpers::{
39    append_cookies, json_response, redirect_response, redirect_with_error_response,
40    serialize_cookie, session_cookies,
41};
42pub use router::{core_endpoints, ok_endpoint, AuthRouter};
43pub use routes::core_auth_async_endpoints;
44pub use schema::{BodyField, BodySchema, JsonSchemaType};