Packages
mailslurp
15.16.21
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_ruleset_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.InboxRulesetController do
@moduledoc """
API calls for all endpoints tagged `InboxRulesetController`.
"""
alias MailSlurpAPI.Connection
import MailSlurpAPI.RequestBuilder
@doc """
Create an inbox ruleset
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 ruleset to
- create_inbox_ruleset_options (CreateInboxRulesetOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxRulesetDto{}} on success
{:error, info} on failure
"""
@spec create_new_inbox_ruleset(Tesla.Env.client, String.t, MailSlurpAPI.Model.CreateInboxRulesetOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxRulesetDto.t} | {:error, Tesla.Env.t}
def create_new_inbox_ruleset(connection, inbox_id, create_inbox_ruleset_options, _opts \\ []) do
%{}
|> method(:post)
|> url("/rulesets")
|> add_param(:query, :"inboxId", inbox_id)
|> add_param(:body, :body, create_inbox_ruleset_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxRulesetDto{}}
])
end
@doc """
Delete an inbox ruleset
Delete inbox ruleset
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t): ID of inbox ruleset
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_inbox_ruleset(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_inbox_ruleset(connection, id, _opts \\ []) do
%{}
|> method(:delete)
|> url("/rulesets/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
Delete inbox rulesets
Delete inbox rulesets. 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 ruleset to
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_inbox_rulesets(Tesla.Env.client, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_inbox_rulesets(connection, opts \\ []) do
optional_params = %{
:"inboxId" => :query
}
%{}
|> method(:delete)
|> url("/rulesets")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
Get an inbox ruleset
Get inbox ruleset
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t): ID of inbox ruleset
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxRulesetDto{}} on success
{:error, info} on failure
"""
@spec get_inbox_ruleset(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxRulesetDto.t} | {:error, Tesla.Env.t}
def get_inbox_ruleset(connection, id, _opts \\ []) do
%{}
|> method(:get)
|> url("/rulesets/#{id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxRulesetDto{}}
])
end
@doc """
List inbox rulesets
List all rulesets 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 rulesets from
- :page (integer()): Optional page index in inbox ruleset list pagination
- :size (integer()): Optional page size in inbox ruleset 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.PageInboxRulesetDto{}} on success
{:error, info} on failure
"""
@spec get_inbox_rulesets(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageInboxRulesetDto.t} | {:error, Tesla.Env.t}
def get_inbox_rulesets(connection, opts \\ []) do
optional_params = %{
:"inboxId" => :query,
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"searchFilter" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/rulesets")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageInboxRulesetDto{}}
])
end
@doc """
Test an inbox ruleset
Test an inbox ruleset
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- id (String.t): ID of inbox ruleset
- inbox_ruleset_test_options (InboxRulesetTestOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxRulesetTestResult{}} on success
{:error, info} on failure
"""
@spec test_inbox_ruleset(Tesla.Env.client, String.t, MailSlurpAPI.Model.InboxRulesetTestOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxRulesetTestResult.t} | {:error, Tesla.Env.t}
def test_inbox_ruleset(connection, id, inbox_ruleset_test_options, _opts \\ []) do
%{}
|> method(:post)
|> url("/rulesets/#{id}/test")
|> add_param(:body, :body, inbox_ruleset_test_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxRulesetTestResult{}}
])
end
@doc """
Test inbox rulesets for inbox
Test inbox rulesets for inbox
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- inbox_id (String.t): ID of inbox
- inbox_ruleset_test_options (InboxRulesetTestOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxRulesetTestResult{}} on success
{:error, info} on failure
"""
@spec test_inbox_rulesets_for_inbox(Tesla.Env.client, String.t, MailSlurpAPI.Model.InboxRulesetTestOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxRulesetTestResult.t} | {:error, Tesla.Env.t}
def test_inbox_rulesets_for_inbox(connection, inbox_id, inbox_ruleset_test_options, _opts \\ []) do
%{}
|> method(:put)
|> url("/rulesets")
|> add_param(:query, :"inboxId", inbox_id)
|> add_param(:body, :body, inbox_ruleset_test_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxRulesetTestResult{}}
])
end
@doc """
Test new inbox ruleset
Test new inbox ruleset
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- test_new_inbox_ruleset_options (TestNewInboxRulesetOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.InboxRulesetTestResult{}} on success
{:error, info} on failure
"""
@spec test_new_inbox_ruleset(Tesla.Env.client, MailSlurpAPI.Model.TestNewInboxRulesetOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.InboxRulesetTestResult.t} | {:error, Tesla.Env.t}
def test_new_inbox_ruleset(connection, test_new_inbox_ruleset_options, _opts \\ []) do
%{}
|> method(:patch)
|> url("/rulesets")
|> add_param(:body, :body, test_new_inbox_ruleset_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.InboxRulesetTestResult{}}
])
end
end