diff --git a/crates/meilisearch-types/src/error.rs b/crates/meilisearch-types/src/error.rs index bb486726a..4360d947b 100644 --- a/crates/meilisearch-types/src/error.rs +++ b/crates/meilisearch-types/src/error.rs @@ -421,8 +421,8 @@ InvalidChatCompletionSearchIndexUidParamPrompt , InvalidRequest , BAD_REQU InvalidChatCompletionPreQueryPrompt , InvalidRequest , BAD_REQUEST ; // Webhooks InvalidWebhooks , InvalidRequest , BAD_REQUEST ; -InvalidWebhooksUrl , InvalidRequest , BAD_REQUEST ; -InvalidWebhooksHeaders , InvalidRequest , BAD_REQUEST ; +InvalidWebhookUrl , InvalidRequest , BAD_REQUEST ; +InvalidWebhookHeaders , InvalidRequest , BAD_REQUEST ; ImmutableWebhook , InvalidRequest , BAD_REQUEST ; InvalidWebhookUuid , InvalidRequest , BAD_REQUEST ; WebhookNotFound , InvalidRequest , NOT_FOUND ; diff --git a/crates/meilisearch/src/routes/webhooks.rs b/crates/meilisearch/src/routes/webhooks.rs index 9adad3284..e3547996a 100644 --- a/crates/meilisearch/src/routes/webhooks.rs +++ b/crates/meilisearch/src/routes/webhooks.rs @@ -13,7 +13,7 @@ use deserr::{DeserializeError, Deserr, ValuePointerRef}; use index_scheduler::IndexScheduler; use meilisearch_types::deserr::{immutable_field_error, DeserrJsonError}; use meilisearch_types::error::deserr_codes::{ - BadRequest, InvalidWebhooksHeaders, InvalidWebhooksUrl, + BadRequest, InvalidWebhookHeaders, InvalidWebhookUrl, }; use meilisearch_types::error::{Code, ErrorCode, ResponseError}; use meilisearch_types::keys::actions; @@ -62,11 +62,11 @@ pub fn configure(cfg: &mut web::ServiceConfig) { #[schema(rename_all = "camelCase")] pub(super) struct WebhookSettings { #[schema(value_type = Option, example = "https://your.site/on-tasks-completed")] - #[deserr(default, error = DeserrJsonError)] + #[deserr(default, error = DeserrJsonError)] #[serde(default)] url: Setting, #[schema(value_type = Option>, example = json!({"Authorization":"Bearer a-secret-token"}))] - #[deserr(default, error = DeserrJsonError)] + #[deserr(default, error = DeserrJsonError)] #[serde(default)] headers: Setting>>, } @@ -222,14 +222,14 @@ enum WebhooksError { impl ErrorCode for WebhooksError { fn error_code(&self) -> meilisearch_types::error::Code { match self { - MissingUrl(_) => meilisearch_types::error::Code::InvalidWebhooksUrl, + MissingUrl(_) => meilisearch_types::error::Code::InvalidWebhookUrl, TooManyWebhooks => meilisearch_types::error::Code::InvalidWebhooks, - TooManyHeaders(_) => meilisearch_types::error::Code::InvalidWebhooksHeaders, + TooManyHeaders(_) => meilisearch_types::error::Code::InvalidWebhookHeaders, ImmutableWebhook(_) => meilisearch_types::error::Code::ImmutableWebhook, WebhookNotFound(_) => meilisearch_types::error::Code::WebhookNotFound, - InvalidHeaderName(_, _) => meilisearch_types::error::Code::InvalidWebhooksHeaders, - InvalidHeaderValue(_, _) => meilisearch_types::error::Code::InvalidWebhooksHeaders, - InvalidUrl(_, _) => meilisearch_types::error::Code::InvalidWebhooksUrl, + InvalidHeaderName(_, _) => meilisearch_types::error::Code::InvalidWebhookHeaders, + InvalidHeaderValue(_, _) => meilisearch_types::error::Code::InvalidWebhookHeaders, + InvalidUrl(_, _) => meilisearch_types::error::Code::InvalidWebhookUrl, InvalidUuid(_) => meilisearch_types::error::Code::InvalidWebhookUuid, } } diff --git a/crates/meilisearch/tests/tasks/webhook.rs b/crates/meilisearch/tests/tasks/webhook.rs index 41362566a..a3be37a4e 100644 --- a/crates/meilisearch/tests/tasks/webhook.rs +++ b/crates/meilisearch/tests/tasks/webhook.rs @@ -349,9 +349,9 @@ async fn over_limits() { snapshot!(value, @r#" { "message": "Too many headers for the webhook `[uuid]`. Please limit the number of headers to 200. Hint: To remove an already defined header set its value to `null`", - "code": "invalid_webhooks_headers", + "code": "invalid_webhook_headers", "type": "invalid_request", - "link": "https://docs.meilisearch.com/errors#invalid_webhooks_headers" + "link": "https://docs.meilisearch.com/errors#invalid_webhook_headers" } "#); } @@ -409,9 +409,9 @@ async fn create_and_patch() { snapshot!(value, @r#" { "message": "The URL for the webhook `[uuid]` is missing.", - "code": "invalid_webhooks_url", + "code": "invalid_webhook_url", "type": "invalid_request", - "link": "https://docs.meilisearch.com/errors#invalid_webhooks_url" + "link": "https://docs.meilisearch.com/errors#invalid_webhook_url" } "#); @@ -475,9 +475,9 @@ async fn create_and_patch() { snapshot!(json_string!(value, { ".uuid" => "[uuid]" }), @r#" { "message": "The URL for the webhook `[uuid]` is missing.", - "code": "invalid_webhooks_url", + "code": "invalid_webhook_url", "type": "invalid_request", - "link": "https://docs.meilisearch.com/errors#invalid_webhooks_url" + "link": "https://docs.meilisearch.com/errors#invalid_webhook_url" } "#); } @@ -492,9 +492,9 @@ async fn invalid_url_and_headers() { snapshot!(value, @r#" { "message": "Invalid URL `not-a-valid-url`: relative URL without a base", - "code": "invalid_webhooks_url", + "code": "invalid_webhook_url", "type": "invalid_request", - "link": "https://docs.meilisearch.com/errors#invalid_webhooks_url" + "link": "https://docs.meilisearch.com/errors#invalid_webhook_url" } "#); @@ -509,9 +509,9 @@ async fn invalid_url_and_headers() { snapshot!(value, @r#" { "message": "Invalid header name `invalid header name`: invalid HTTP header name", - "code": "invalid_webhooks_headers", + "code": "invalid_webhook_headers", "type": "invalid_request", - "link": "https://docs.meilisearch.com/errors#invalid_webhooks_headers" + "link": "https://docs.meilisearch.com/errors#invalid_webhook_headers" } "#); @@ -526,9 +526,9 @@ async fn invalid_url_and_headers() { snapshot!(value, @r#" { "message": "Invalid header value `authorization`: failed to parse header value", - "code": "invalid_webhooks_headers", + "code": "invalid_webhook_headers", "type": "invalid_request", - "link": "https://docs.meilisearch.com/errors#invalid_webhooks_headers" + "link": "https://docs.meilisearch.com/errors#invalid_webhook_headers" } "#); }