Base class for all communication providers. Each provider sub-classes this base class and implements functionality specific to the provider.

Remarks

All methods accept an optional credentials parameter that allows per-request credential overrides. When credentials are provided, they take precedence over environment variables. Set credentials.disableEnvironmentFallback = true to disable environment variable fallback.

Each provider defines its own credential interface that extends ProviderCredentialsBase. For example, SendGridCredentials, MSGraphCredentials, etc.

Example

// Use environment credentials (default behavior)
await provider.SendSingleMessage(message);

// Override with request credentials
await provider.SendSingleMessage(message, { apiKey: 'SG.xxx' });

// Require explicit credentials (no env fallback)
await provider.SendSingleMessage(message, {
apiKey: 'SG.xxx',
disableEnvironmentFallback: true
});

Hierarchy

  • BaseCommunicationProvider

    Constructors

    Accessors

    Methods