Module: Pago::V2026_04::Webhooks
- Defined in:
- lib/pago/v2026_04/webhooks.rb,
sig/pago/v2026_04/generated.rbs
Overview
Webhook verification and deserialization for the 2026-04 API.
Class Method Summary collapse
-
.event_types ⇒ Hash{String => Class}
Event type to payload model.
-
.known_event_types ⇒ Array<String>
Every event type known to this SDK version.
-
.validate_event(body:, headers:, secret:) ⇒ Pago::Model
Verify a raw webhook request and deserialize its payload.
Class Method Details
.event_types ⇒ Hash{String => Class}
Returns event type to payload model.
.known_event_types ⇒ Array<String>
Returns every event type known to this SDK version.
61 |
# File 'lib/pago/v2026_04/webhooks.rb', line 61 def self.known_event_types = event_types.keys |
.validate_event(body:, headers:, secret:) ⇒ Pago::Model
Verify a raw webhook request and deserialize its payload.
73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/pago/v2026_04/webhooks.rb', line 73 def self.validate_event(body:, headers:, secret:) data = ::Pago::WebhookVerifier.verify(body: body, headers: headers, secret: secret) event_type = data.is_a?(Hash) ? data["type"] : nil payload_class = event_types[event_type] raise ::Pago::WebhookUnknownTypeError, event_type if payload_class.nil? payload = payload_class.from_json(data) raise ::Pago::WebhookError, "Failed to parse webhook payload" if payload.nil? payload end |