DripDrop.Inbound (DripDrop v0.1.0)

Copy Markdown View Source

Host-callable inbound email ingestion.

Summary

Functions

Ingests a normalized inbound message from host-owned inbox infrastructure.

Functions

ingest_inbound_message(adapter_id_or_scope, message)

@spec ingest_inbound_message(Ecto.UUID.t() | map(), map()) :: :ok | {:error, term()}

Ingests a normalized inbound message from host-owned inbox infrastructure.

Requires a non-nil :message_id in the normalized payload — at-least-once delivery from IMAP/Graph/Gmail Watch is dedup'd by (provider, message_id). Returns {:error, :no_message_id} for messages that lack a Message-ID.