# 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.BounceController do @moduledoc """ API calls for all endpoints tagged `BounceController`. """ alias MailSlurpAPI.Connection import MailSlurpAPI.RequestBuilder @doc """ Get a bounced email. Bounced emails are email you have sent that were rejected by a recipient ## Parameters - connection (MailSlurpAPI.Connection): Connection to server - id (String.t): ID of the bounced email to fetch - opts (KeywordList): [optional] Optional parameters ## Returns {:ok, %MailSlurpAPI.Model.BouncedEmailDto{}} on success {:error, info} on failure """ @spec get_bounced_email(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.BouncedEmailDto.t} | {:error, Tesla.Env.t} def get_bounced_email(connection, id, _opts \\ []) do %{} |> method(:get) |> url("/bounce/emails/#{id}") |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %MailSlurpAPI.Model.BouncedEmailDto{}}, { 401, false}, { 403, false}, { 404, false} ]) end @doc """ Get paginated list of bounced emails. Bounced emails are email you have sent that were rejected by a recipient ## Parameters - connection (MailSlurpAPI.Connection): Connection to server - opts (KeywordList): [optional] Optional parameters - :before (DateTime.t): Filter by created at before the given timestamp - :page (integer()): Optional page index - :since (DateTime.t): Filter by created at after the given timestamp - :size (integer()): Optional page size - :sort (String.t): Optional createdAt sort direction ASC or DESC ## Returns {:ok, %MailSlurpAPI.Model.PageBouncedEmail{}} on success {:error, info} on failure """ @spec get_bounced_emails(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageBouncedEmail.t} | {:error, Tesla.Env.t} def get_bounced_emails(connection, opts \\ []) do optional_params = %{ :"before" => :query, :"page" => :query, :"since" => :query, :"size" => :query, :"sort" => :query } %{} |> method(:get) |> url("/bounce/emails") |> add_optional_params(optional_params, opts) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %MailSlurpAPI.Model.PageBouncedEmail{}}, { 401, false}, { 403, false}, { 404, false} ]) end @doc """ Get a bounced email. Bounced emails are email you have sent that were rejected by a recipient ## Parameters - connection (MailSlurpAPI.Connection): Connection to server - id (String.t): ID of the bounced recipient - opts (KeywordList): [optional] Optional parameters ## Returns {:ok, %MailSlurpAPI.Model.BouncedRecipientDto{}} on success {:error, info} on failure """ @spec get_bounced_recipient(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.BouncedRecipientDto.t} | {:error, Tesla.Env.t} def get_bounced_recipient(connection, id, _opts \\ []) do %{} |> method(:get) |> url("/bounce/recipients/#{id}") |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %MailSlurpAPI.Model.BouncedRecipientDto{}}, { 401, false}, { 403, false}, { 404, false} ]) end @doc """ Get paginated list of bounced recipients. Bounced recipients are email addresses that you have sent emails to that did not accept the sent email. Once a recipient is bounced you cannot send emails to that address. ## Parameters - connection (MailSlurpAPI.Connection): Connection to server - opts (KeywordList): [optional] Optional parameters - :before (DateTime.t): Filter by created at before the given timestamp - :page (integer()): Optional page index - :since (DateTime.t): Filter by created at after the given timestamp - :size (integer()): Optional page size - :sort (String.t): Optional createdAt sort direction ASC or DESC ## Returns {:ok, %MailSlurpAPI.Model.PageBouncedRecipients{}} on success {:error, info} on failure """ @spec get_bounced_recipients(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageBouncedRecipients.t} | {:error, Tesla.Env.t} def get_bounced_recipients(connection, opts \\ []) do optional_params = %{ :"before" => :query, :"page" => :query, :"since" => :query, :"size" => :query, :"sort" => :query } %{} |> method(:get) |> url("/bounce/recipients") |> add_optional_params(optional_params, opts) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> evaluate_response([ { 200, %MailSlurpAPI.Model.PageBouncedRecipients{}}, { 401, false}, { 403, false}, { 404, false} ]) end end