AshHooks.Info (AshHooks v2.0.2)

Copy Markdown View Source

Accessors for a resource's webhooks declarations, read via Spark.Dsl.Extension (the ash_age pattern — no generated getter in this spark version).

Summary

Functions

The inbound declaration for provider, if any.

The outbound declaration for event, if any.

The configured exact-bytes payload attribute name on an AshHooks.OutboundDelivery resource (default :payload).

All webhook entities (inbound + outbound) declared on resource.

Whether the compiled :dispatch/:ingest action accepts a caller-supplied :id (the runtimes classify created/duplicate by id comparison in that shape; otherwise by an identity pre-read — H2). Reads the accept-list transformer's PERSISTED decision, so the runtime and the compiled action can never disagree (composite and non-:id primary keys make a re-derived predicate diverge from the accept list).

Functions

inbound(resource, provider)

@spec inbound(Ash.Resource.t(), atom()) :: AshHooks.Inbound.t() | nil

The inbound declaration for provider, if any.

outbound(resource, event)

@spec outbound(Ash.Resource.t(), atom()) :: AshHooks.Outbound.t() | nil

The outbound declaration for event, if any.

payload_attribute(resource)

@spec payload_attribute(module()) :: atom()

The configured exact-bytes payload attribute name on an AshHooks.OutboundDelivery resource (default :payload).

webhooks(resource)

All webhook entities (inbound + outbound) declared on resource.

writable_id?(resource)

@spec writable_id?(module()) :: boolean()

Whether the compiled :dispatch/:ingest action accepts a caller-supplied :id (the runtimes classify created/duplicate by id comparison in that shape; otherwise by an identity pre-read — H2). Reads the accept-list transformer's PERSISTED decision, so the runtime and the compiled action can never disagree (composite and non-:id primary keys make a re-derived predicate diverge from the accept list).