Skip to content

SmtpClient

Classes

Attachment dataclass

Attachment(content_data: str, content_type: str, *, file_name: Optional[str] = None, content_id: Optional[str] = None)

Definition: Attachment

Attributes

content_data class-attribute instance-attribute
content_data: str = dataclass_field(metadata={'wire_name': 'ContentData'})

Content data

content_type class-attribute instance-attribute
content_type: str = dataclass_field(metadata={'wire_name': 'ContentType'})

Content type

file_name class-attribute instance-attribute
file_name: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'FileName'})

File name

content_id class-attribute instance-attribute
content_id: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'ContentId'})

Content id

Email dataclass

Email(*, from_: Optional[str] = None, to: Optional[str] = None, c_c: Optional[str] = None, subject: Optional[str] = None, body: Optional[str] = None, bcc: Optional[str] = None, importance: Optional[str] = None, read_receipt: Optional[str] = None, delivery_receipt: Optional[str] = None, attachments: Optional[List[Attachment | Mapping[str, Any]]] = None)

Definition: Email

Attributes

from_ class-attribute instance-attribute
from_: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'From'})

Email address of sender like sender@domain.com

to class-attribute instance-attribute
to: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'To'})

Specify email addresses separated by semicolons like recipient1@domain.com;recipient2@domain.com

c_c class-attribute instance-attribute
c_c: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'CC'})

Specify email addresses separated by semicolons like recipient1@domain.com;recipient2@domain.com

subject class-attribute instance-attribute
subject: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'Subject'})

Email subject

body class-attribute instance-attribute
body: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'Body'})

Email body

bcc class-attribute instance-attribute
bcc: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'Bcc'})

Specify email addresses separated by semicolons like recipient1@domain.com;recipient2@domain.com.

importance class-attribute instance-attribute
importance: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'Importance'})

Importance of the email (High, Normal, or Low)

read_receipt class-attribute instance-attribute
read_receipt: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'ReadReceipt'})

Specify email address for Read receipt

delivery_receipt class-attribute instance-attribute
delivery_receipt: Optional[str] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'DeliveryReceipt'})

Specify email address for Delivery receipt

attachments class-attribute instance-attribute
attachments: Optional[List[Attachment | Mapping[str, Any]]] = dataclass_field(default=None, kw_only=True, metadata={'wire_name': 'Attachments'})

Attachments to be sent along with the email

SmtpClient

SmtpClient(connection_runtime_url: str, credential: AsyncTokenCredential | AzureKeyCredential, *, max_retry_attempts: int = 3, timeout: float = 30.0, use_exponential_backoff: bool = True, initial_retry_delay_seconds: float = 0.5, maximum_retry_delay_seconds: float = 120.0, retry_jitter_factor: float = 0.1, retry_unsafe_http_methods: bool = False, transport: Optional[AsyncHttpTransport] = None, **kwargs: Any)

Bases: ConnectorClientBase

Typed client for smtp connector.

Initialize a SmtpClient.

Parameters:

Name Type Description Default
connection_runtime_url str

The connection runtime URL from Azure Portal.

required
credential AsyncTokenCredential | AzureKeyCredential

Caller-owned Azure Core credential.

required
max_retry_attempts int

The maximum number of request attempts.

3
timeout float

The network timeout in seconds for each request. The value configures Azure Core retry and transport deadlines. Nonpositive values disable SDK and transport deadlines.

30.0
use_exponential_backoff bool

Whether retries use exponential backoff.

True
initial_retry_delay_seconds float

The initial retry delay in seconds.

0.5
maximum_retry_delay_seconds float

The maximum retry delay in seconds.

120.0
retry_jitter_factor float

The jitter fraction applied to retry delays.

0.1
retry_unsafe_http_methods bool

Whether unsafe HTTP methods may be retried.

False
transport Optional[AsyncHttpTransport]

Optional Azure Core async HTTP transport closed by the client through its asynchronous lifecycle.

None
**kwargs Any

Optional Azure Core pipeline policy settings.

{}

Methods:

send_email async
send_email(input: Email | Mapping[str, Any], *, timeout: Optional[float] = None, headers: Optional[Mapping[str, str]] = None, client_request_id: Optional[str] = None, response_hook: Optional[ConnectorResponseHook] = None) -> None

Send Email

This operation sends an email to one or more recipients.

Swagger operation ID: SendEmailV3.

Parameters:

Name Type Description Default
input Email | Mapping[str, Any]

The request body. Mapping keys use serialized Swagger wire names.

required
timeout Optional[float]

The request timeout in seconds.

None
headers Optional[Mapping[str, str]]

Additional HTTP request headers.

None
client_request_id Optional[str]

A caller-provided request identifier.

None
response_hook Optional[ConnectorResponseHook]

A callback invoked with the connector response.

None

Returns:

Name Type Description
None None

The operation completes without a response body.

Raises:

Type Description
ConnectorException

If the connector request fails.