Nombaone. Events
(Nomba One v0.1.0)
View Source
Events — the append-only log behind every webhook. Webhook delivery is at-least-once; this log is your reconciliation backstop when a delivery was missed or you need to backfill.
Summary
Functions
The machine-readable event catalog — every event type the platform can emit,
keyed by type, each an Nombaone.EventCatalogEntry. Useful for subscription
pickers or codegen.
Raising variant of catalog/2.
List events, newest first. Optional filters: :type (a catalog type, e.g.
"invoice.paid"), :limit, :cursor.
Raising variant of list/3.
Retrieve one event by id (nbo…evt).
Raising variant of retrieve/3.
Functions
@spec catalog( Nombaone.Client.t(), keyword() ) :: {:ok, %{optional(String.t()) => Nombaone.EventCatalogEntry.t()}} | {:error, Nombaone.Error.t()}
The machine-readable event catalog — every event type the platform can emit,
keyed by type, each an Nombaone.EventCatalogEntry. Useful for subscription
pickers or codegen.
Example
{:ok, catalog} = Nombaone.Events.catalog(client)
catalog["invoice.paid"].payload # => ["reference", ...]
@spec catalog!( Nombaone.Client.t(), keyword() ) :: %{optional(String.t()) => Nombaone.EventCatalogEntry.t()}
Raising variant of catalog/2.
@spec list(Nombaone.Client.t(), map(), keyword()) :: {:ok, Nombaone.Page.t()} | {:error, Nombaone.Error.t()}
List events, newest first. Optional filters: :type (a catalog type, e.g.
"invoice.paid"), :limit, :cursor.
Example
for event <- Nombaone.Events.list!(client, %{type: "invoice.paid"}) do
IO.inspect({event.id, event.payload})
end
@spec list!(Nombaone.Client.t(), map(), keyword()) :: Nombaone.Page.t()
Raising variant of list/3.
@spec retrieve(Nombaone.Client.t(), String.t(), keyword()) :: {:ok, Nombaone.DomainEvent.t()} | {:error, Nombaone.Error.t()}
Retrieve one event by id (nbo…evt).
@spec retrieve!(Nombaone.Client.t(), String.t(), keyword()) :: Nombaone.DomainEvent.t()
Raising variant of retrieve/3.