mirror of
https://github.com/meilisearch/MeiliSearch
synced 2025-05-25 09:03:59 +02:00
25 lines
935 B
Rust
25 lines
935 B
Rust
use serde::Serialize;
|
|
use utoipa::openapi::security::{HttpAuthScheme, HttpBuilder, SecurityScheme};
|
|
|
|
#[derive(Debug, Serialize)]
|
|
pub struct OpenApiAuth;
|
|
|
|
impl utoipa::Modify for OpenApiAuth {
|
|
fn modify(&self, openapi: &mut utoipa::openapi::OpenApi) {
|
|
if let Some(schema) = openapi.components.as_mut() {
|
|
schema.add_security_scheme(
|
|
"Bearer",
|
|
SecurityScheme::Http(
|
|
HttpBuilder::new()
|
|
.scheme(HttpAuthScheme::Bearer)
|
|
.bearer_format("Uuidv4, string or JWT")
|
|
.description(Some(
|
|
"An API key is a token that you provide when making API calls. Include the token in a header parameter called `Authorization`.
|
|
Example: `Authorization: Bearer 8fece4405662dd830e4cb265e7e047aab2e79672a760a12712d2a263c9003509`"))
|
|
.build(),
|
|
),
|
|
);
|
|
}
|
|
}
|
|
}
|