Packages
mailslurp
15.2.7
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
Current section
Files
lib/mail_slurp_api/api/inbox_forwarder_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.InboxForwarderController do
@moduledoc """
API calls for all endpoints tagged `InboxForwarderController`.
"""
alias MailSlurpAPI.Connection
import MailSlurpAPI.RequestBuilder
@doc """
Create an inbox forwarder
Create a new inbox rule for forwarding, blocking, and allowing emails when sending and receiving
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- inbox_id (String.t): Inbox id to attach forwarder to
- create_inbox_forwarder_options (CreateInboxForwarderOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxForwarderDto{}} on success
{:error, info} on failure
"""
@spec create_new_inbox_forwarder(Tesla.Env.client, String.t, MailSlurpAPI.Model.CreateInboxForwarderOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxForwarderDto.t} | {:error, Tesla.Env.t}
def create_new_inbox_forwarder(connection, inbox_id, create_inbox_forwarder_options, _opts \\ []) do
%{}
|> method(:post)
|> url("/forwarders")
|> add_param(:query, :"inboxId", inbox_id)
|> add_param(:body, :body, create_inbox_forwarder_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxForwarderDto{}}
])
end
@doc """
Delete an inbox forwarder
Delete inbox forwarder
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t): ID of inbox forwarder
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_inbox_forwarder(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_inbox_forwarder(connection, id, _opts \\ []) do
%{}
|> method(:delete)
|> url("/forwarders/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
Delete inbox forwarders
Delete inbox forwarders. Accepts optional inboxId filter.
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :inbox_id (String.t): Optional inbox id to attach forwarder to
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_inbox_forwarders(Tesla.Env.client, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_inbox_forwarders(connection, opts \\ []) do
optional_params = %{
:"inboxId" => :query
}
%{}
|> method(:delete)
|> url("/forwarders")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
Get an inbox forwarder
Get inbox ruleset
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t): ID of inbox forwarder
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxForwarderDto{}} on success
{:error, info} on failure
"""
@spec get_inbox_forwarder(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxForwarderDto.t} | {:error, Tesla.Env.t}
def get_inbox_forwarder(connection, id, _opts \\ []) do
%{}
|> method(:get)
|> url("/forwarders/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxForwarderDto{}}
])
end
@doc """
List inbox forwarders
List all forwarders attached to an inbox
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :inbox_id (String.t): Optional inbox id to get forwarders from
- :page (integer()): Optional page index in inbox forwarder list pagination
- :size (integer()): Optional page size in inbox forwarder 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.PageInboxForwarderDto{}} on success
{:error, info} on failure
"""
@spec get_inbox_forwarders(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageInboxForwarderDto.t} | {:error, Tesla.Env.t}
def get_inbox_forwarders(connection, opts \\ []) do
optional_params = %{
:"inboxId" => :query,
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"searchFilter" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/forwarders")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageInboxForwarderDto{}}
])
end
@doc """
Test an inbox forwarder
Test an inbox forwarder
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t): ID of inbox forwarder
- inbox_forwarder_test_options (InboxForwarderTestOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxForwarderTestResult{}} on success
{:error, info} on failure
"""
@spec test_inbox_forwarder(Tesla.Env.client, String.t, MailSlurpAPI.Model.InboxForwarderTestOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxForwarderTestResult.t} | {:error, Tesla.Env.t}
def test_inbox_forwarder(connection, id, inbox_forwarder_test_options, _opts \\ []) do
%{}
|> method(:post)
|> url("/forwarders/#{id}/test")
|> add_param(:body, :body, inbox_forwarder_test_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxForwarderTestResult{}}
])
end
@doc """
Test inbox forwarders for inbox
Test inbox forwarders for inbox
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- inbox_id (String.t): ID of inbox
- inbox_forwarder_test_options (InboxForwarderTestOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxForwarderTestResult{}} on success
{:error, info} on failure
"""
@spec test_inbox_forwarders_for_inbox(Tesla.Env.client, String.t, MailSlurpAPI.Model.InboxForwarderTestOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxForwarderTestResult.t} | {:error, Tesla.Env.t}
def test_inbox_forwarders_for_inbox(connection, inbox_id, inbox_forwarder_test_options, _opts \\ []) do
%{}
|> method(:put)
|> url("/forwarders")
|> add_param(:query, :"inboxId", inbox_id)
|> add_param(:body, :body, inbox_forwarder_test_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxForwarderTestResult{}}
])
end
@doc """
Test new inbox forwarder
Test new inbox forwarder
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- test_new_inbox_forwarder_options (TestNewInboxForwarderOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxForwarderTestResult{}} on success
{:error, info} on failure
"""
@spec test_new_inbox_forwarder(Tesla.Env.client, MailSlurpAPI.Model.TestNewInboxForwarderOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxForwarderTestResult.t} | {:error, Tesla.Env.t}
def test_new_inbox_forwarder(connection, test_new_inbox_forwarder_options, _opts \\ []) do
%{}
|> method(:patch)
|> url("/forwarders")
|> add_param(:body, :body, test_new_inbox_forwarder_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxForwarderTestResult{}}
])
end
end