Templates de Email

Esta é uma API para gerenciamento de templates de email

Listar templates de email

API de listagem de templates de email

GET /api/openvpn/email/templates

Exemplo de requisição

GET /api/openvpn/email/templates HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
response = sdk.openvpn.get_email_templates()
print(response.payload)
const response = await sdk.openvpn.getEmailTemplates();
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "email_templates": [
    {
      "id": 1,
      "name": "email template 01",
      "title": "CA {{ ca_name }} - Cert {{ cert_name }}",
      "body": "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
      "email_account_id": 1,
      "created_at": "2018-12-13T12:20:02.932000+00:00",
      "updated_at": "2018-12-13T12:20:02.932000+00:00"
    }
  ]
}
[
  EmailTemplate(
    id=1,
    name="email template 01",
    title="CA {{ ca_name }} - Cert {{ cert_name }}",
    body="Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
    email_account_id=1,
    created_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
    updated_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00'))
  ),
]
[
  {
    id: 1,
    name: "email template 01",
    title: "CA {{ ca_name }} - Cert {{ cert_name }}",
    body:
      "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
    emailAccountId: 1,
    createdAt: "2018-12-13T12:20:02.000Z",
    updatedAt: "2018-12-13T12:20:02.000Z"
  }
];

Buscar template de email

API para consulta de template de email

GET /api/openvpn/email/templates/id

Exemplo de requisição

GET /api/openvpn/email/templates/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
from itflex_sdk.openvpn.types import GetEmailTemplateRequest

request = GetEmailTemplateRequest(id=1)

response = sdk.openvpn.get_email_template(request)
print(response.payload)
const response = await sdk.openvpn.getEmailTemplate({ id: 1 });
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 1,
  "name": "email template 01",
  "title": "CA {{ ca_name }} - Cert {{ cert_name }}",
  "body": "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  "email_account_id": 1,
  "created_at": "2018-12-13T12:20:02.932000+00:00",
  "updated_at": "2018-12-13T12:20:02.932000+00:00"
}
EmailTemplate(
  id=1,
  name="email template 01",
  title="CA {{ ca_name }} - Cert {{ cert_name }}",
  body="Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  email_account_id=1,
  created_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
  updated_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00'))
)
{
  id: 1,
  name: "email template 01",
  title: "CA {{ ca_name }} - Cert {{ cert_name }}",
  body: "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  emailAccountId: 1,
  createdAt: "2018-12-13T12:20:02.000Z",
  updatedAt: "2018-12-13T12:20:02.000Z"
}

Criar template de email

API para criação de template de email

POST /api/openvpn/email/templates/

Exemplo de requisição

POST /api/openvpn/email/templates HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "name": "email template 01",
  "title": "CA {{ ca_name }} - Cert {{ cert_name }}",
  "body": "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  "email_account_id": 1,
}
from itflex_sdk.openvpn.types import CreateEmailTemplateRequest

request = CreateEmailTemplateRequest(
  name="email template 01",
  title="CA {{ ca_name }} - Cert {{ cert_name }}",
  body="Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  email_account_id=1
)

response = sdk.openvpn.create_email_template(request)
print(response.payload)
const response = await sdk.openvpn.createEmailTemplate({
  name: "email template 01",
  title: "CA {{ ca_name }} - Cert {{ cert_name }}",
  body:
    "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  emailAccountId: 1
});
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 1,
  "name": "email template 01",
  "title": "CA {{ ca_name }} - Cert {{ cert_name }}",
  "body": "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  "email_account_id": 1,
  "created_at": "2018-12-13T12:20:02.932000+00:00",
  "updated_at": "2018-12-13T12:20:02.932000+00:00"
}
EmailTemplate(
  id=1,
  name="email template 01",
  title="CA {{ ca_name }} - Cert {{ cert_name }}",
  body="Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  email_account_id=1,
  created_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
  updated_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00'))
)
{
  id: 1,
  name: "email template 01",
  title: "CA {{ ca_name }} - Cert {{ cert_name }}",
  body: "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  emailAccountId: 1,
  createdAt: "2018-12-13T12:20:02.000Z",
  updatedAt: "2018-12-13T12:20:02.000Z"
}

Editar template de email

API de edição de template de email

PUT /api/openvpn/email/templates/id

Exemplo de requisição

PUT /api/openvpn/email/templates/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "name": "email template 01",
  "title": "CA {{ ca_name }} - Cert {{ cert_name }}",
  "body": "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  "email_account_id": 1,
}
from itflex_sdk.openvpn.types import UpdateEmailTemplateRequest

request = UpdateEmailTemplateRequest(
  name="email template 01",
  title="CA {{ ca_name }} - Cert {{ cert_name }}",
  body="Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  email_account_id=1
)

response = sdk.openvpn.update_email_template(request)
print(response.payload)
const response = await sdk.openvpn.updateEmailTemplate({
  name: "email template 01",
  title: "CA {{ ca_name }} - Cert {{ cert_name }}",
  body:
    "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  emailAccountId: 1
});
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": 1,
  "name": "email template 01",
  "title": "CA {{ ca_name }} - Cert {{ cert_name }}",
  "body": "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  "email_account_id": 1,
  "created_at": "2018-12-13T12:20:02.932000+00:00",
  "updated_at": "2018-12-13T12:20:02.932000+00:00"
}
EmailTemplate(
  id=1,
  name="email template 01",
  title="CA {{ ca_name }} - Cert {{ cert_name }}",
  body="Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  email_account_id=1,
  created_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00')),
  updated_at=DateTime(2018, 12, 13, 12, 20, 2, tzinfo=Timezone('+00:00'))
)
{
  id: 1,
  name: "email template 01",
  title: "CA {{ ca_name }} - Cert {{ cert_name }}",
  body: "Nome da CA: {{ ca_name }}, nome do certificado: {{ cert_name }}, nome da instância: {{ ca_instance }}",
  emailAccountId: 1,
  createdAt: "2018-12-13T12:20:02.000Z",
  updatedAt: "2018-12-13T12:20:02.000Z"
}

Deletar template de email

API de deleção de template de email

DELETE /api/openvpn/email/templates/id

Exemplo de requisição

DELETE /api/openvpn/email/templates/1 HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>
from itflex_sdk.openvpn.types import DeleteEmailTemplateRequest

request = DeleteEmailTemplateRequest(id=1)

response = sdk.openvpn.delete_email_template(request)
print(response.success)
const response = await sdk.openvpn.deleteEmailTemplate({ id: 1 });
console.log(response.success);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json
True
true;

Preview do template de email

API de preview do template de email

POST /api/openvpn/email/templates/preview

Exemplo de requisição

POST /api/openvpn/email/templates/preview HTTP/1.1
Host: api.exemplo.com
Accept: application/json
Authorization: Bearer <Access-Token>

{
  "title": "{{ca_name}}",
  "body": "{{instance_name}} teste"
}
from itflex_sdk.openvpn.types import GetPreviewEmailTemplate

request = GetPreviewEmailTemplte(title="{{ca_name}}", body="{{instance_name}} teste")

response = sdk.openvpn.get_preview_email_template(request)
print(response.success)
const response = await sdk.openvpn.getPreviewEmailTemplate({
  title: "{{ca_name}}",
  body: "{{instance_name}} teste"
});
console.log(response.payload);

Exemplo de resposta

HTTP/1.1 200 OK
Content-Type: application/json

{
  "title": "nome ca exemplo",
  "body": "nome instancia exemplo teste"
}
PreviewEmailTemplate(
  title="nome ca exemplo",
  body="nome instancia exemplo teste"
)
{
  title: "nome ca exemplo",
  body: "nome instancia exemplo teste"
}

Formato dos dados

Parâmetros da url

Campo Descrição
id int

Idendificador do template de email

Requisição

Campo Descrição
name stringrequerido único

Nome do template de email

title stringrequerido

Template do título da mensagem

body stringrequerido

Template do corpo da mensagem

email_account_id int

Conta de email que será utilizada para enviar emails seguindo esse template

Se não for especificada a conta de email, será utilizada a conta padrão cadastrada

Resposta

Campo Descrição
name string

Nome do template de email

title string

Template do título da mensagem

body string

Template do corpo da mensagem

email_account_id int

Conta de email que será utilizada para enviar emails seguindo esse template

created_at string

Data de criação do template de email

Formato: ISO-8601

updated_at string

Data da última alteração do template de email

Formato: ISO-8601