diff --git a/app/http/endpoints/api/integrations/createintegration.go b/app/http/endpoints/api/integrations/createintegration.go index 21b6254..2a9819e 100644 --- a/app/http/endpoints/api/integrations/createintegration.go +++ b/app/http/endpoints/api/integrations/createintegration.go @@ -20,7 +20,8 @@ type integrationCreateBody struct { WebhookUrl string `json:"webhook_url" validate:"required,webhook,max=255"` Secrets []struct { - Name string `json:"name" validate:"required,min=1,max=32,excludesall=% "` + Name string `json:"name" validate:"required,min=1,max=32,excludesall=% "` + Description *string `json:"description" validate:"omitempty,max=255"` } `json:"secrets" validate:"dive,omitempty,min=0,max=5"` Headers []struct { @@ -84,7 +85,8 @@ func CreateIntegrationHandler(ctx *gin.Context) { secrets := make([]database.CustomIntegrationSecret, len(data.Secrets)) for i, secret := range data.Secrets { secrets[i] = database.CustomIntegrationSecret{ - Name: secret.Name, + Name: secret.Name, + Description: secret.Description, } } diff --git a/app/http/endpoints/api/integrations/getintegration.go b/app/http/endpoints/api/integrations/getintegration.go index 837dce4..84b3dd4 100644 --- a/app/http/endpoints/api/integrations/getintegration.go +++ b/app/http/endpoints/api/integrations/getintegration.go @@ -88,7 +88,7 @@ func GetIntegrationHandler(ctx *gin.Context) { ctx.JSON(200, integrationResponse{ Id: integration.Id, OwnerId: integration.OwnerId, - WebhookHost: utils.GetUrlHost(strings.ReplaceAll(integration.WebhookUrl, "%", "")), + WebhookHost: utils.SecondLevelDomain(utils.GetUrlHost(strings.ReplaceAll(integration.WebhookUrl, "%", ""))), Name: integration.Name, Description: integration.Description, ImageUrl: integration.ImageUrl, diff --git a/app/http/endpoints/api/integrations/listintegrations.go b/app/http/endpoints/api/integrations/listintegrations.go index 360f135..f362ff7 100644 --- a/app/http/endpoints/api/integrations/listintegrations.go +++ b/app/http/endpoints/api/integrations/listintegrations.go @@ -56,7 +56,7 @@ func ListIntegrationsHandler(ctx *gin.Context) { integrationResponse: integrationResponse{ Id: integration.Id, OwnerId: integration.OwnerId, - WebhookHost: utils.GetUrlHost(strings.ReplaceAll(integration.WebhookUrl, "%", "")), + WebhookHost: utils.SecondLevelDomain(utils.GetUrlHost(strings.ReplaceAll(integration.WebhookUrl, "%", ""))), Name: integration.Name, Description: integration.Description, ImageUrl: integration.ImageUrl, diff --git a/app/http/endpoints/api/integrations/ownedintegrations.go b/app/http/endpoints/api/integrations/ownedintegrations.go index 9216558..3eec3db 100644 --- a/app/http/endpoints/api/integrations/ownedintegrations.go +++ b/app/http/endpoints/api/integrations/ownedintegrations.go @@ -57,7 +57,7 @@ func GetOwnedIntegrationsHandler(ctx *gin.Context) { integrationResponse: integrationResponse{ Id: integration.Id, OwnerId: integration.OwnerId, - WebhookHost: utils.GetUrlHost(strings.ReplaceAll(integration.WebhookUrl, "%", "")), + WebhookHost: utils.SecondLevelDomain(utils.GetUrlHost(strings.ReplaceAll(integration.WebhookUrl, "%", ""))), Name: integration.Name, Description: integration.Description, ImageUrl: integration.ImageUrl, diff --git a/app/http/endpoints/api/integrations/updateintegration.go b/app/http/endpoints/api/integrations/updateintegration.go index aacbae5..3a40963 100644 --- a/app/http/endpoints/api/integrations/updateintegration.go +++ b/app/http/endpoints/api/integrations/updateintegration.go @@ -21,8 +21,9 @@ type integrationUpdateBody struct { WebhookUrl string `json:"webhook_url" validate:"required,webhook,max=255"` Secrets []struct { - Id int `json:"id" validate:"omitempty,min=1"` - Name string `json:"name" validate:"required,min=1,max=32,excludesall=% "` + Id int `json:"id" validate:"omitempty,min=1"` + Name string `json:"name" validate:"required,min=1,max=32,excludesall=% "` + Description *string `json:"description" validate:"omitempty,max=255"` } `json:"secrets" validate:"dive,omitempty,min=0,max=5"` Headers []struct { @@ -254,8 +255,9 @@ func (b *integrationUpdateBody) updateSecrets(ctx *gin.Context, integrationId in secrets := make([]database.CustomIntegrationSecret, len(b.Secrets)) for i, secret := range b.Secrets { secrets[i] = database.CustomIntegrationSecret{ - Id: secret.Id, - Name: secret.Name, + Id: secret.Id, + Name: secret.Name, + Description: secret.Description, } } diff --git a/frontend/src/components/IntegrationEditor.svelte b/frontend/src/components/IntegrationEditor.svelte index 3b887aa..80738ce 100644 --- a/frontend/src/components/IntegrationEditor.svelte +++ b/frontend/src/components/IntegrationEditor.svelte @@ -105,17 +105,26 @@
{secret.description}
{secret.description}