Versions in this module Expand all Collapse all v0 v0.8.3-wip Apr 21, 2026 v0.8.2 Apr 19, 2026 v0.8.1 Apr 4, 2026 v0.8.0 Mar 28, 2026 v0.7.0 Mar 26, 2026 v0.6.5 Feb 9, 2026 Changes in this version + type ArticleWebhookData struct + Body string + CreatedAt time.Time + From string + ID int + Subject string + TicketID int + To string + Type string + Visible bool + type DeliveryRepository interface + CleanupOldDeliveries func(olderThan time.Time) error + Create func(delivery *WebhookDelivery) error + GetByID func(id uint) (*WebhookDelivery, error) + GetPendingRetries func() ([]*WebhookDelivery, error) + ListByWebhookID func(webhookID uint, limit int) ([]*WebhookDelivery, error) + Update func(delivery *WebhookDelivery) error + type Manager struct + func NewManager(webhookRepo WebhookRepository, deliveryRepo DeliveryRepository) *Manager + func (m *Manager) CreateWebhook(req WebhookRequest) (*Webhook, error) + func (m *Manager) DeleteWebhook(id uint) error + func (m *Manager) GetDeliveries(webhookID uint, limit int) ([]*WebhookDelivery, error) + func (m *Manager) GetWebhook(id uint) (*Webhook, error) + func (m *Manager) GetWebhookStatistics(webhookID uint) (*WebhookStatistics, error) + func (m *Manager) ListWebhooks() ([]*Webhook, error) + func (m *Manager) Stop() + func (m *Manager) TestWebhook(webhookID uint) (*WebhookTestResult, error) + func (m *Manager) TriggerEvent(event WebhookEvent, data interface{}, previousData interface{}) error + func (m *Manager) UpdateWebhook(id uint, req WebhookRequest) (*Webhook, error) + type QueueWebhookData struct + Active bool + CreatedAt time.Time + Description string + GroupID int + ID int + Name string + UpdatedAt time.Time + type TicketWebhookData struct + AssignedName *string + AssignedTo *int + CreatedAt time.Time + CustomerEmail string + CustomerID string + Description string + ID int + Number string + Priority string + QueueID int + QueueName string + SLADue *time.Time + Status string + Tags []string + Title string + UpdatedAt time.Time + type UserWebhookData struct + Active bool + CreatedAt time.Time + Email string + FirstName string + ID int + LastName string + Role string + UpdatedAt time.Time + type Webhook struct + CreatedAt time.Time + CreatedBy uint + Description string + Events []WebhookEvent + FailedDeliveries int + Filters WebhookFilters + Headers map[string]string + ID uint + LastDeliveryAt *time.Time + LastFailureAt *time.Time + LastSuccessAt *time.Time + Name string + RetryCount int + RetryInterval time.Duration + Secret string + Status WebhookStatus + SuccessfulDeliveries int + Timeout time.Duration + TotalDeliveries int + URL string + UpdatedAt time.Time + type WebhookDelivery struct + AttemptCount int + CreatedAt time.Time + Duration time.Duration + ErrorMessage string + Event WebhookEvent + ID uint + NextRetryAt *time.Time + Payload interface{} + RequestBody string + RequestHeaders map[string]string + RequestURL string + ResponseBody string + ResponseHeaders map[string]string + ResponseStatusCode int + Status WebhookDeliveryStatus + UpdatedAt time.Time + WebhookID uint + type WebhookDeliveryStatus string + const DeliveryExpired + const DeliveryFailed + const DeliveryPending + const DeliveryRetrying + const DeliverySuccess + type WebhookEvent string + const EventArticleAdded + const EventArticleUpdated + const EventAttachmentDeleted + const EventAttachmentUploaded + const EventQueueCreated + const EventQueueDeleted + const EventQueueUpdated + const EventSystemAlert + const EventSystemBackup + const EventSystemMaintenance + const EventTicketAssigned + const EventTicketClosed + const EventTicketCreated + const EventTicketEscalated + const EventTicketPriorityChanged + const EventTicketQueueMoved + const EventTicketReopened + const EventTicketStatusChanged + const EventTicketUpdated + const EventUserActivated + const EventUserCreated + const EventUserDeactivated + const EventUserUpdated + type WebhookFilters struct + CustomFields map[string]interface{} + Priorities []string + QueueIDs []int + Statuses []string + UserIDs []int + type WebhookPayload struct + Data interface{} + Event WebhookEvent + ID string + PreviousData interface{} + Source struct{ ... } + Timestamp time.Time + type WebhookRepository interface + Create func(webhook *Webhook) error + Delete func(id uint) error + GetByID func(id uint) (*Webhook, error) + List func() ([]*Webhook, error) + ListActive func() ([]*Webhook, error) + Update func(webhook *Webhook) error + UpdateStatistics func(id uint, stats WebhookStatistics) error + type WebhookRequest struct + Description string + Events []WebhookEvent + Filters WebhookFilters + Headers map[string]string + Name string + RetryCount int + RetryInterval int + Secret string + Timeout int + URL string + type WebhookStatistics struct + AverageResponseTime int + FailedDeliveries int + LastDeliveryAt *time.Time + LastFailureAt *time.Time + LastSuccessAt *time.Time + SuccessRate float64 + SuccessfulDeliveries int + TotalDeliveries int + WebhookID uint + type WebhookStatus string + const StatusActive + const StatusDisabled + const StatusFailed + const StatusInactive + type WebhookTestResult struct + ErrorMessage string + ResponseBody string + ResponseTime time.Duration + StatusCode int + Success bool + TestedAt time.Time