Behaviour for implementing Aurinko webhook event handlers.
Usage
defmodule MyApp.AurinkoHandler do
@behaviour Aurinko.Webhook.Handler
@impl true
def handle_event("email.new", payload, _meta) do
MyApp.Mailbox.process_new_email(payload)
:ok
end
def handle_event("calendar.event.updated", payload, _meta) do
MyApp.Calendar.sync_event(payload)
:ok
end
def handle_event(_event, _payload, _meta), do: :ok
endThen in your router/controller, after verifying the signature:
Aurinko.Webhook.Handler.dispatch(MyApp.AurinkoHandler, raw_body)
Summary
Callbacks
Handle a parsed Aurinko webhook event.
Functions
Parse, verify, and dispatch a raw webhook body to a handler module.
Types
Callbacks
@callback handle_event(event_type(), payload(), meta()) :: result()
Handle a parsed Aurinko webhook event.