towerops/lib/towerops/workers/gaiia_webhook_worker.ex
2026-06-14 16:38:03 -05:00

16 lines
467 B
Elixir

defmodule Towerops.Workers.GaiiaWebhookWorker do
@moduledoc """
Processes a Gaiia webhook event asynchronously so the controller can ACK
the webhook sender immediately.
"""
use Oban.Pro.Worker, queue: :default, max_attempts: 3
alias Towerops.Gaiia.Webhooks
@impl Oban.Worker
def perform(%Oban.Job{args: %{"organization_id" => org_id, "event" => event, "payload" => payload}}) do
Webhooks.process_event(org_id, event, payload)
:ok
end
end