Packages

mailslurp

15.16.9
15.17.22 15.17.21 15.17.17 15.17.16 15.17.15 15.17.14 15.17.13 15.17.12 15.17.11 15.17.10 15.17.9 15.17.8 15.17.7 15.17.6 15.17.5 15.17.4 15.17.3 15.17.2 15.17.1 15.17.0 15.16.22 15.16.21 15.16.20 15.16.19 15.16.18 15.16.17 15.16.16 15.16.15 15.16.14 15.16.13 15.16.12 15.16.11 15.16.10 15.16.9 15.16.8 15.16.7 15.16.6 15.16.5 15.16.4 15.16.3 15.16.2 15.16.1 15.16.0 15.15.5 15.15.4 15.15.2 15.15.1 15.14.0 15.13.32 15.13.31 15.13.30 15.13.29 15.13.28 15.13.27 15.13.26 15.13.25 15.13.24 15.13.23 15.13.22 15.13.21 15.13.20 15.13.19 15.13.18 15.13.17 15.13.16 15.13.15 15.13.14 15.13.13 15.13.11 15.13.10 15.13.9 15.13.8 15.13.7 15.13.6 15.13.5 15.13.4 15.13.3 15.13.2 15.13.1 15.13.0 15.12.17 15.12.16 15.12.15 15.12.14 15.12.13 15.12.12 15.12.11 15.12.3 15.12.2 15.12.1 15.12.0 15.11.1 15.11.0 15.9.0 15.8.1 15.8.0 15.7.17 15.7.16 15.7.15 15.7.14 15.7.13 15.7.12 15.7.10 15.7.8 15.7.7 15.7.5 15.7.4 15.7.1 15.7.0 15.6.0 15.5.6 15.5.5 15.5.4 15.5.3 15.5.2 15.5.1 15.5.0 15.4.2 15.4.1 15.4.0 15.3.1 15.3.0 15.2.8 15.2.7 15.2.6 15.2.5 15.2.4 15.2.2 15.2.1 15.2.0 15.1.4 15.1.3 15.1.2 15.1.1 15.1.0 15.0.3 15.0.2 15.0.1 15.0.0 14.0.6 14.0.5 14.0.3 14.0.2 14.0.1 14.0.0 13.1.0 13.0.1 13.0.0 12.8.4 12.8.3 12.8.2 12.8.1 12.8.0 12.7.1 12.7.0 12.6.4 12.6.3 12.6.1 12.6.0 12.5.0 12.4.8 12.4.7 12.4.6 12.4.5 12.4.4 12.4.2 12.4.1 12.4.0 12.3.333 12.3.2 12.3.1 12.3.0 12.2.2 12.2.1 12.2.0 12.1.3333 12.1.32 12.1.31 12.1.30 12.1.29 12.1.28 12.1.27 12.1.26 12.1.25 12.1.24 12.1.23 12.1.22 12.1.1 12.1.0 12.0.0 11.16666.0 11.15.0 11.14.0 11.13.0 11.12.0 11.11.1 11.11.0 11.10.3 11.10.2 11.10.1 11.10.0 11.9.7 11.9.6 11.9.4 11.9.3 11.9.2 11.9.1 11.9.0 11.8.13 11.8.12 11.8.11 11.8.10 11.8.9 11.8.8 11.8.6 11.8.5 11.8.4 11.8.3 11.8.2 11.8.1 11.8.0 11.7.509 11.7.508 11.7.506 11.7.505 11.7.502 11.7.501 11.7.500 11.7.400 11.7.314 11.7.313 11.7.312 11.7.311 11.7.310 11.7.309 11.7.308 11.7.307 11.7.306 11.7.304 11.7.302 11.7.301 11.7.300 11.7.215 11.7.214 11.7.213 11.7.212 11.7.211 11.7.210 11.7.203 11.7.202 11.7.201 11.7.200 11.7.122 11.7.11 11.7.10 11.7.9 11.7.8 11.7.7 11.7.6 11.7.5 11.7.4 11.7.2 11.7.1 11.7.0 11.6.24 11.6.23 11.6.22 11.6.21 11.6.20 11.6.19 11.6.18 11.6.16 11.6.15 11.6.14 11.6.13 11.6.12 11.6.11 11.6.10 11.6.9 11.6.8 11.6.7 11.6.6 11.6.5 11.6.4 11.6.3 11.6.2 11.6.1 11.5.2333

Elixir Email API for MailSlurp

Current section

Files

Jump to
mailslurp lib mail_slurp_api api sent_emails_controller.ex
Raw

lib/mail_slurp_api/api/sent_emails_controller.ex

# NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
# https://openapi-generator.tech
# Do not edit the class manually.
defmodule MailSlurpAPI.Api.SentEmailsController do
@moduledoc """
API calls for all endpoints tagged `SentEmailsController`.
"""
alias MailSlurpAPI.Connection
import MailSlurpAPI.RequestBuilder
@doc """
Delete all sent email receipts
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_all_sent_emails(Tesla.Env.client, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_all_sent_emails(connection, _opts \\ []) do
%{}
|> method(:delete)
|> url("/sent")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
Delete sent email receipt
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_sent_email(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_sent_email(connection, id, _opts \\ []) do
%{}
|> method(:delete)
|> url("/sent/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
Get all sent email tracking pixels in paginated form
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :page (integer()): Optional page index in sent email tracking pixel list pagination
- :size (integer()): Optional page size in sent email tracking pixel list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :search_filter (String.t): Optional search filter
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageTrackingPixelProjection{}} on success
{:error, info} on failure
"""
@spec get_all_sent_tracking_pixels(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageTrackingPixelProjection.t} | {:error, Tesla.Env.t}
def get_all_sent_tracking_pixels(connection, opts \\ []) do
optional_params = %{
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"searchFilter" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/tracking-pixels")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageTrackingPixelProjection{}}
])
end
@doc """
Get raw sent email string. Returns unparsed raw SMTP message with headers and body.
Returns a raw, unparsed, and unprocessed sent email. If your client has issues processing the response it is likely due to the response content-type which is text/plain. If you need a JSON response content-type use the getRawSentEmailJson endpoint
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- email_id (String.t): ID of email
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.String.t{}} on success
{:error, info} on failure
"""
@spec get_raw_sent_email_contents(Tesla.Env.client, String.t, keyword()) :: {:ok, String.t} | {:error, Tesla.Env.t}
def get_raw_sent_email_contents(connection, email_id, _opts \\ []) do
%{}
|> method(:get)
|> url("/sent/#{email_id}/raw")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false}
])
end
@doc """
Get raw sent email in JSON. Unparsed SMTP message in JSON wrapper format.
Returns a raw, unparsed, and unprocessed sent email wrapped in a JSON response object for easier handling when compared with the getRawSentEmail text/plain response
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- email_id (String.t): ID of email
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.RawEmailJson{}} on success
{:error, info} on failure
"""
@spec get_raw_sent_email_json(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.RawEmailJson.t} | {:error, Tesla.Env.t}
def get_raw_sent_email_json(connection, email_id, _opts \\ []) do
%{}
|> method(:get)
|> url("/sent/#{email_id}/raw/json")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.RawEmailJson{}}
])
end
@doc """
Get a sent email delivery status
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- delivery_id (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.DeliveryStatusDto{}} on success
{:error, info} on failure
"""
@spec get_sent_delivery_status(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.DeliveryStatusDto.t} | {:error, Tesla.Env.t}
def get_sent_delivery_status(connection, delivery_id, _opts \\ []) do
%{}
|> method(:get)
|> url("/sent/delivery-status/#{delivery_id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.DeliveryStatusDto{}}
])
end
@doc """
Get all sent email delivery statuses
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :page (integer()): Optional page index in delivery status list pagination
- :size (integer()): Optional page size in delivery status list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageDeliveryStatus{}} on success
{:error, info} on failure
"""
@spec get_sent_delivery_statuses(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageDeliveryStatus.t} | {:error, Tesla.Env.t}
def get_sent_delivery_statuses(connection, opts \\ []) do
optional_params = %{
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/delivery-status")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageDeliveryStatus{}}
])
end
@doc """
Get all sent email delivery statuses
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- sent_id (String.t):
- opts (KeywordList): [optional] Optional parameters
- :page (integer()): Optional page index in delivery status list pagination
- :size (integer()): Optional page size in delivery status list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageDeliveryStatus{}} on success
{:error, info} on failure
"""
@spec get_sent_delivery_statuses_by_sent_id(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.PageDeliveryStatus.t} | {:error, Tesla.Env.t}
def get_sent_delivery_statuses_by_sent_id(connection, sent_id, opts \\ []) do
optional_params = %{
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/#{sent_id}/delivery-status")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageDeliveryStatus{}}
])
end
@doc """
Get sent email receipt
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.SentEmailDto{}} on success
{:error, info} on failure
"""
@spec get_sent_email(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.SentEmailDto.t} | {:error, Tesla.Env.t}
def get_sent_email(connection, id, _opts \\ []) do
%{}
|> method(:get)
|> url("/sent/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.SentEmailDto{}}
])
end
@doc """
Get sent email HTML content
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.String.t{}} on success
{:error, info} on failure
"""
@spec get_sent_email_html_content(Tesla.Env.client, String.t, keyword()) :: {:ok, String.t} | {:error, Tesla.Env.t}
def get_sent_email_html_content(connection, id, _opts \\ []) do
%{}
|> method(:get)
|> url("/sent/#{id}/html")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false}
])
end
@doc """
Get sent email URL for viewing in browser or downloading
Get a list of URLs for sent email content as text/html or raw SMTP message for viewing the message in a browser.
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.EmailPreviewUrls{}} on success
{:error, info} on failure
"""
@spec get_sent_email_preview_ur_ls(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.EmailPreviewUrls.t} | {:error, Tesla.Env.t}
def get_sent_email_preview_ur_ls(connection, id, _opts \\ []) do
%{}
|> method(:get)
|> url("/sent/#{id}/urls")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.EmailPreviewUrls{}}
])
end
@doc """
Get all tracking pixels for a sent email in paginated form
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t):
- opts (KeywordList): [optional] Optional parameters
- :page (integer()): Optional page index in sent email tracking pixel list pagination
- :size (integer()): Optional page size in sent email tracking pixel list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :search_filter (String.t): Optional search filter
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageTrackingPixelProjection{}} on success
{:error, info} on failure
"""
@spec get_sent_email_tracking_pixels(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.PageTrackingPixelProjection.t} | {:error, Tesla.Env.t}
def get_sent_email_tracking_pixels(connection, id, opts \\ []) do
optional_params = %{
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"searchFilter" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/#{id}/tracking-pixels")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageTrackingPixelProjection{}}
])
end
@doc """
Get all sent emails in paginated form
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :inbox_id (String.t): Optional inboxId to filter sender of sent emails by
- :page (integer()): Optional page index in inbox sent email list pagination
- :size (integer()): Optional page size in inbox sent email list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :search_filter (String.t): Optional search filter
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageSentEmailProjection{}} on success
{:error, info} on failure
"""
@spec get_sent_emails(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageSentEmailProjection.t} | {:error, Tesla.Env.t}
def get_sent_emails(connection, opts \\ []) do
optional_params = %{
:"inboxId" => :query,
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"searchFilter" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageSentEmailProjection{}}
])
end
@doc """
Get results of email sent with queues in paginated form
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :page (integer()): Optional page index in inbox sent email list pagination
- :size (integer()): Optional page size in inbox sent email list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageSentEmailWithQueueProjection{}} on success
{:error, info} on failure
"""
@spec get_sent_emails_with_queue_results(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageSentEmailWithQueueProjection.t} | {:error, Tesla.Env.t}
def get_sent_emails_with_queue_results(connection, opts \\ []) do
optional_params = %{
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/queue-results")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageSentEmailWithQueueProjection{}}
])
end
@doc """
Get all sent organization emails in paginated form
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :inbox_id (String.t): Optional inboxId to filter sender of sent emails by
- :page (integer()): Optional page index in sent email list pagination
- :size (integer()): Optional page size in sent email list pagination
- :sort (String.t): Optional createdAt sort direction ASC or DESC
- :search_filter (String.t): Optional search filter
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.PageSentEmailProjection{}} on success
{:error, info} on failure
"""
@spec get_sent_organization_emails(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageSentEmailProjection.t} | {:error, Tesla.Env.t}
def get_sent_organization_emails(connection, opts \\ []) do
optional_params = %{
:"inboxId" => :query,
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"searchFilter" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/organization")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageSentEmailProjection{}}
])
end
@doc """
Wait for delivery statuses
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :sent_id (String.t): Optional sent email ID filter
- :inbox_id (String.t): Optional inbox ID filter
- :timeout (integer()): Optional timeout milliseconds
- :index (integer()): Zero based index of the delivery status to wait for. If 1 delivery status already and you want to wait for the 2nd pass index=1
- :since (DateTime.t): Filter by created at after the given timestamp
- :before (DateTime.t): Filter by created at before the given timestamp
## Returns
{:ok, %MailSlurpAPI.Model.DeliveryStatusDto{}} on success
{:error, info} on failure
"""
@spec wait_for_delivery_statuses(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.DeliveryStatusDto.t} | {:error, Tesla.Env.t}
def wait_for_delivery_statuses(connection, opts \\ []) do
optional_params = %{
:"sentId" => :query,
:"inboxId" => :query,
:"timeout" => :query,
:"index" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/sent/delivery-status/wait-for")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.DeliveryStatusDto{}}
])
end
end