diff --git a/api/chalicelib/core/webhook.py b/api/chalicelib/core/webhook.py index afec28054..a3fe7b4be 100644 --- a/api/chalicelib/core/webhook.py +++ b/api/chalicelib/core/webhook.py @@ -129,13 +129,13 @@ def add_edit(tenant_id, data: schemas.WebhookSchema, replace_none=None): raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=f"name already exists.") if data.webhook_id is not None: return update(tenant_id=tenant_id, webhook_id=data.webhook_id, - changes={"endpoint": data.endpoint.unicode_string(), + changes={"endpoint": data.endpoint, "authHeader": data.auth_header, "name": data.name}, replace_none=replace_none) else: return add(tenant_id=tenant_id, - endpoint=data.endpoint.unicode_string(), + endpoint=data.endpoint, auth_header=data.auth_header, name=data.name, replace_none=replace_none) diff --git a/api/schemas/schemas.py b/api/schemas/schemas.py index 8b4e2e317..ac636ec95 100644 --- a/api/schemas/schemas.py +++ b/api/schemas/schemas.py @@ -211,7 +211,8 @@ class IssueTrackingJiraSchema(IssueTrackingIntegration): class WebhookSchema(BaseModel): webhook_id: Optional[int] = Field(default=None) - endpoint: AnyHttpUrl = Field(...) + processed_endpoint: AnyHttpUrl = Field(..., alias="endpoint") + endpoint: Optional[str] = Field(default=None, doc_hidden=True) auth_header: Optional[str] = Field(default=None) name: str = Field(default="", max_length=100, pattern=NAME_PATTERN) diff --git a/ee/api/chalicelib/core/webhook.py b/ee/api/chalicelib/core/webhook.py index 548c5769b..b7f8b644a 100644 --- a/ee/api/chalicelib/core/webhook.py +++ b/ee/api/chalicelib/core/webhook.py @@ -136,13 +136,13 @@ def add_edit(tenant_id, data: schemas.WebhookSchema, replace_none=None): raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail=f"name already exists.") if data.webhook_id is not None: return update(tenant_id=tenant_id, webhook_id=data.webhook_id, - changes={"endpoint": data.endpoint.unicode_string(), + changes={"endpoint": data.endpoint, "authHeader": data.auth_header, "name": data.name}, replace_none=replace_none) else: return add(tenant_id=tenant_id, - endpoint=data.endpoint.unicode_string(), + endpoint=data.endpoint, auth_header=data.auth_header, name=data.name, replace_none=replace_none)