Packages

mailslurp

15.17.10
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 template_controller.ex
Raw

lib/mail_slurp_api/api/template_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.TemplateController do
@moduledoc """
API calls for all endpoints tagged `TemplateController`.
"""
alias MailSlurpAPI.Connection
import MailSlurpAPI.RequestBuilder
@doc """
Create a Template
Create an email template with variables for use with templated transactional emails.
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- create_template_options (CreateTemplateOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.TemplateDto{}} on success
{:error, info} on failure
"""
@spec create_template(Tesla.Env.client, MailSlurpAPI.Model.CreateTemplateOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.TemplateDto.t} | {:error, Tesla.Env.t}
def create_template(connection, create_template_options, _opts \\ []) do
%{}
|> method(:post)
|> url("/templates")
|> add_param(:body, :body, create_template_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 201, %MailSlurpAPI.Model.TemplateDto{}}
])
end
@doc """
Delete email template
Delete template
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- template_id (String.t): Template ID
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %{}} on success
{:error, info} on failure
"""
@spec delete_template(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def delete_template(connection, template_id, _opts \\ []) do
%{}
|> method(:delete)
|> url("/templates/#{template_id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 204, false}
])
end
@doc """
List templates
Get all templates in paginated format
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
- :page (integer()): Optional page index in list pagination
- :size (integer()): Optional page size in 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.PageTemplateProjection{}} on success
{:error, info} on failure
"""
@spec get_all_templates(Tesla.Env.client, keyword()) :: {:ok, MailSlurpAPI.Model.PageTemplateProjection.t} | {:error, Tesla.Env.t}
def get_all_templates(connection, opts \\ []) do
optional_params = %{
:"page" => :query,
:"size" => :query,
:"sort" => :query,
:"since" => :query,
:"before" => :query
}
%{}
|> method(:get)
|> url("/templates/paginated")
|> add_optional_params(optional_params, opts)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.PageTemplateProjection{}}
])
end
@doc """
Get template
Get email template
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- template_id (String.t): Template ID
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.TemplateDto{}} on success
{:error, info} on failure
"""
@spec get_template(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.TemplateDto.t} | {:error, Tesla.Env.t}
def get_template(connection, template_id, _opts \\ []) do
%{}
|> method(:get)
|> url("/templates/#{template_id}")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.TemplateDto{}}
])
end
@doc """
Get template preview HTML
Get email template preview with passed template variables in HTML format for browsers. Pass template variables as query params.
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- template_id (String.t): Template ID
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.String.t{}} on success
{:error, info} on failure
"""
@spec get_template_preview_html(Tesla.Env.client, String.t, keyword()) :: {:ok, String.t} | {:error, Tesla.Env.t}
def get_template_preview_html(connection, template_id, _opts \\ []) do
%{}
|> method(:get)
|> url("/templates/#{template_id}/preview/html")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, false}
])
end
@doc """
Get template preview Json
Get email template preview with passed template variables in JSON format. Pass template variables as query params.
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- template_id (String.t): Template ID
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.TemplatePreview{}} on success
{:error, info} on failure
"""
@spec get_template_preview_json(Tesla.Env.client, String.t, keyword()) :: {:ok, MailSlurpAPI.Model.TemplatePreview.t} | {:error, Tesla.Env.t}
def get_template_preview_json(connection, template_id, _opts \\ []) do
%{}
|> method(:get)
|> url("/templates/#{template_id}/preview/json")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, %MailSlurpAPI.Model.TemplatePreview{}}
])
end
@doc """
List templates
Get all templates
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, [%TemplateProjection{}, ...]} on success
{:error, info} on failure
"""
@spec get_templates(Tesla.Env.client, keyword()) :: {:ok, list(MailSlurpAPI.Model.TemplateProjection.t)} | {:error, Tesla.Env.t}
def get_templates(connection, _opts \\ []) do
%{}
|> method(:get)
|> url("/templates")
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 200, [%MailSlurpAPI.Model.TemplateProjection{}]}
])
end
@doc """
Update template
Update email template
## Parameters
- connection (MailSlurpAPI.Connection): Connection to server
- template_id (String.t): Template ID
- create_template_options (CreateTemplateOptions):
- opts (KeywordList): [optional] Optional parameters
## Returns
{:ok, %MailSlurpAPI.Model.TemplateDto{}} on success
{:error, info} on failure
"""
@spec update_template(Tesla.Env.client, String.t, MailSlurpAPI.Model.CreateTemplateOptions.t, keyword()) :: {:ok, MailSlurpAPI.Model.TemplateDto.t} | {:error, Tesla.Env.t}
def update_template(connection, template_id, create_template_options, _opts \\ []) do
%{}
|> method(:put)
|> url("/templates/#{template_id}")
|> add_param(:body, :body, create_template_options)
|> Enum.into([])
|> (&Connection.request(connection, &1)).()
|> evaluate_response([
{ 201, %MailSlurpAPI.Model.TemplateDto{}}
])
end
end