PhoenixKit.Email.SendProfile (phoenix_kit v1.7.207)

Copy Markdown View Source

Ecto schema for newsletter send profiles ("Send Settings").

A send profile references a core PhoenixKit.Integrations connection (by integration_uuid — no FK, since integrations live in phoenix_kit_settings) and carries per-account send parameters: sender identity, signature, rate limits, and provider-specific advanced extras. Multiple profiles may share one integration. At most one profile may be is_default (the service-wide default), enforced by a partial unique index on phoenix_kit_email_send_profiles.

Summary

Functions

The provider kinds a send profile may point at.

Types

t()

@type t() :: %PhoenixKit.Email.SendProfile{
  __meta__: term(),
  advanced: term(),
  enabled: term(),
  from_email: term(),
  from_name: term(),
  inserted_at: term(),
  integration_uuid: term(),
  is_default: term(),
  name: term(),
  pause_seconds: term(),
  provider_kind: term(),
  rate_per_day: term(),
  rate_per_hour: term(),
  reply_to: term(),
  signature_html: term(),
  signature_text: term(),
  updated_at: term(),
  uuid: term()
}

Functions

changeset(send_profile, attrs)

valid_provider_kinds()

The provider kinds a send profile may point at.

Derived from the core Integrations registry rather than hardcoded, so an email provider added there — built-in, or contributed by another module via integration_providers/0 — becomes selectable in Send Settings without a change here. :email_send is the capability that makes a provider a sender; an AI or storage provider must never be pickable.