diff --git a/api/core/workflow/nodes/trigger_webhook/entities.py b/api/core/workflow/nodes/trigger_webhook/entities.py index 27e8f69664..2c05fe2298 100644 --- a/api/core/workflow/nodes/trigger_webhook/entities.py +++ b/api/core/workflow/nodes/trigger_webhook/entities.py @@ -2,7 +2,7 @@ from collections.abc import Sequence from enum import StrEnum from typing import Literal, Optional -from pydantic import BaseModel, Field +from pydantic import BaseModel, Field, field_validator from core.workflow.nodes.base import BaseNodeData @@ -53,6 +53,14 @@ class WebhookData(BaseNodeData): params: Sequence[WebhookParameter] = Field(default_factory=list) # query parameters body: Sequence[WebhookBodyParameter] = Field(default_factory=list) + @field_validator("method", mode="before") + @classmethod + def normalize_method(cls, v) -> str: + """Normalize HTTP method to lowercase to support both uppercase and lowercase input.""" + if isinstance(v, str): + return v.lower() + return v + status_code: int = 200 # Expected status code for response response_body: str = "" # Template for response body