MCPcopy Create free account
hub / github.com/authorizerdev/authorizer / DeleteWebhook

Method DeleteWebhook

internal/service/admin_webhooks.go:184–220  ·  view source on GitHub ↗

DeleteWebhook deletes a webhook by id and returns a status message. Requires super-admin auth. Logic migrated from internal/graphql/delete_webhook.go.

(ctx context.Context, meta RequestMetadata, params *model.WebhookRequest)

Source from the content-addressed store, hash-verified

182// DeleteWebhook deletes a webhook by id and returns a status message. Requires
183// super-admin auth. Logic migrated from internal/graphql/delete_webhook.go.
184func (p *provider) DeleteWebhook(ctx context.Context, meta RequestMetadata, params *model.WebhookRequest) (*model.Response, *ResponseSideEffects, error) {
185 log := p.Log.With().Str("func", "DeleteWebhook").Logger()
186 if err := p.requireSuperAdmin(ctx, meta); err != nil {
187 return nil, nil, err
188 }
189
190 if params.ID == "" {
191 log.Debug().Msg("Webhook ID required")
192 return nil, nil, fmt.Errorf("webhook ID required")
193 }
194
195 log = log.With().Str("webhookID", params.ID).Logger()
196
197 webhook, err := p.StorageProvider.GetWebhookByID(ctx, params.ID)
198 if err != nil {
199 log.Debug().Err(err).Msg("Failed to get webhook by ID")
200 return nil, nil, err
201 }
202
203 if err := p.StorageProvider.DeleteWebhook(ctx, webhook); err != nil {
204 log.Debug().Err(err).Msg("Failed to delete webhook")
205 return nil, nil, err
206 }
207
208 p.AuditProvider.LogEvent(audit.Event{
209 Action: constants.AuditAdminWebhookDeletedEvent,
210 Protocol: meta.Protocol, ActorType: constants.AuditActorTypeAdmin,
211 ResourceType: constants.AuditResourceTypeWebhook,
212 ResourceID: params.ID,
213 IPAddress: meta.IPAddress,
214 UserAgent: meta.UserAgent,
215 })
216
217 return &model.Response{
218 Message: "Webhook deleted successfully",
219 }, nil, nil
220}
221
222// Webhook returns a single webhook by id. Requires super-admin auth. Logic
223// migrated from internal/graphql/webhook.go.

Callers

nothing calls this directly

Calls 4

requireSuperAdminMethod · 0.95
GetWebhookByIDMethod · 0.65
DeleteWebhookMethod · 0.65
LogEventMethod · 0.65

Tested by

no test coverage detected