Schedule message (#15)
textsender_api PR / Rustfmt (pull_request) Successful in 52s
textsender_api PR / Clippy (pull_request) Successful in 1m32s
textsender_api PR / Check (pull_request) Successful in 2m12s

Reviewed-on: phoenix/textsender_api#15
This commit was merged in pull request #15.
This commit is contained in:
2026-06-17 17:51:33 -04:00
parent 5740bce97c
commit d1bc5eb830
10 changed files with 256 additions and 92 deletions
+15 -2
View File
@@ -16,10 +16,14 @@ pub mod init {
use crate::caller::contact as contact_caller;
use crate::caller::message as message_caller;
use crate::caller::message::scheduling as scheduling_caller;
use contact_caller::endpoint as contact_endpoints;
use contact_caller::response as contact_responses;
use message_caller::endpoint as message_endpoints;
use message_caller::response as message_responses;
use scheduling_caller::endpoint as scheduling_endpoints;
use scheduling_caller::response as scheduling_responses;
mod cors {
pub async fn configure_cors() -> tower_http::cors::CorsLayer {
@@ -77,8 +81,11 @@ pub mod init {
#[derive(utoipa::OpenApi)]
#[openapi(
paths(contact_endpoints::create_contact,
message_endpoints::create_message),
components(schemas(contact_responses::AddContactResponse, message_responses::AddMessageResponse)),
message_endpoints::create_message,
scheduling_endpoints::schedule_message,
),
components(schemas(contact_responses::AddContactResponse, message_responses::AddMessageResponse,
scheduling_responses::ScheduleMessageResponse)),
tags(
(name = "textsender API", description = "Web API to manage texting")
)
@@ -117,6 +124,12 @@ pub mod init {
crate::auth::auth::<axum::body::Body>,
)),
)
.route(
crate::caller::endpoints::SCHEDULE_MESSAGE,
post(scheduling_endpoints::schedule_message).route_layer(
axum::middleware::from_fn(crate::auth::auth::<axum::body::Body>),
),
)
.layer(cors::configure_cors().await)
}