Help us shape the future of Go! Take the 2026 Go Developer Survey

webhook

package
v0.33.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 4, 2026 License: Apache-2.0 Imports: 15 Imported by: 52

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Message

type Message struct {
	*template.Data

	// The protocol version.
	Version         string `json:"version"`
	GroupKey        string `json:"groupKey"`
	TruncatedAlerts uint64 `json:"truncatedAlerts"`
}

Message defines the JSON object send to webhook endpoints.

type Notifier

type Notifier struct {
	// contains filtered or unexported fields
}

Notifier implements a Notifier for generic webhooks.

func New

New returns a new Webhook.

func (*Notifier) Notify

func (n *Notifier) Notify(ctx context.Context, alerts ...*types.Alert) (bool, error)

Notify implements the Notifier interface.

type WebhookConfig added in v0.33.0

type WebhookConfig struct {
	amcommoncfg.NotifierConfig `yaml:",inline" json:",inline"`

	HTTPConfig *commoncfg.HTTPClientConfig `yaml:"http_config,omitempty" json:"http_config,omitempty"`

	// URL to send POST request to.
	URL     amcommoncfg.SecretTemplateURL `yaml:"url,omitempty" json:"url,omitempty"`
	URLFile string                        `yaml:"url_file" json:"url_file"`

	// MaxAlerts is the maximum number of alerts to be sent per webhook message.
	// Alerts exceeding this threshold will be truncated. Setting this to 0
	// allows an unlimited number of alerts.
	MaxAlerts uint64 `yaml:"max_alerts" json:"max_alerts"`

	// Timeout is the maximum time allowed to invoke the webhook. Setting this to 0
	// does not impose a timeout.
	Timeout time.Duration `yaml:"timeout" json:"timeout"`
	Payload any           `yaml:"payload,omitempty" json:"payload,omitempty"`
}

WebhookConfig configures notifications via a generic webhook.

func (*WebhookConfig) UnmarshalYAML added in v0.33.0

func (c *WebhookConfig) UnmarshalYAML(unmarshal func(any) error) error

UnmarshalYAML implements the yaml.Unmarshaler interface.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL