activities
latest
false
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.
UiPath logo, featuring letters U and I in white

Atividades de produtividade

Última atualização 12 de jun de 2025

APIs de automação codificadas por email

As APIs permitem acessar e interagir com os serviços oferecidos no menu Gerenciar pacotes. Você pode usar essas APIs ao projetar automações codificadas. Visite Automações codificadas para saber mais sobre automações codificadas e como projetá-las usando APIs.
Observação: usar Ir para a definição (F12) permite que você acesse a definição de APIs da UiPath para um determinado serviço. Recomendamos confiar apenas nas APIs expostas diretamente ao implementar automações codificadas. Outras APIs não diretamente expostas com um serviço estão sujeitas a alterações sem notificação prévia.

Sobrecarregas

As APIs frequentemente têm sobrecargas, o que significa que fornecem várias versões do mesmo método com diferentes opções de parâmetros. As sobrecargas permitem que você personalize o comportamento da API com base em seus requisitos específicos. Por exemplo, uma API de Automação de interface gráfica pode ter uma sobrecarga que aceita um parâmetro de tempo limite para especificar o tempo máximo para esperar pela exibição de um elemento de interface gráfica antes de terminar a execução.

Ao usar as APIs com suas respectivas cargas de trabalho, você pode facilmente atingir a lógica e o comportamento de automação desejados.

APIs de automação codificadas por email

As APIs de automação codificadas por email complementam os recursos do pacote Mail.Activities, permitindo que você tenha uma experiência de codificação completa. Essa abordagem incentiva ações personalizadas e é compatível com a reusabilidade.

Primeiro, você cria uma interface que se conecta ao servidor de e-mail que você deseja usar, por meio do objeto mail . O objeto mail permite que você se conecte ao Imap, Pop3, Outlook e Smtp.

Uma vez conectado, as APIs de automação codificadas específicas para seu servidor de email escolhido ficam disponíveis. Por exemplo, se você estiver usando o servidor Outlook, APIs de automação codificadas, como MarkRead e MoveMail, ficarão disponíveis.

Você pode usar as seguintes interfaces para acessar as APIs de automação codificadas específicas.
API de automação codificadaDescription
ImapA interface por meio da qual você acessa as APIs de automação codificadas específicas para IMAP.
Pop3A interface por meio da qual você acessa as APIs de automação codificadas específicas para POP3.
SmtpA interface por meio da qual você acessa as APIs de automação codificadas específicas para SMTP.
OutlookA interface por meio da qual você acessa as APIs de automação codificadas específicas do Outlook.

Uso de APIs

Use o seguinte formato para chamar uma API a partir do serviço correspondente: service.API Por exemplo, system.GetAsset

Usando APIs de automação codificadas por email

Para usar APIs de automação codificadas por e-mail, você primeiro cria uma interface que se conecta ao servidor de e-mail que você deseja usar (Imap, Pop3, SMTP, Outlook) e, em seguida, chama as APIs de automação codificadas desejadas nessa interface, como interface.GetMessages().
  1. Baixe o pacote de atividades.
  2. Crie um fluxo de trabalho codificado.
  3. Chame o serviço mail e crie uma interface que se conecta a um dos seguintes servidores: Imap, Pop3, Outlook, Smtp.
  4. Chame as APIs de automação codificadas desejadas na conexão que você criou anteriormente.

Exemplo

No exemplo a seguir, você pode ver como pode enviar um e-mail, configurar o e-mail, ler, iterar e mover e-mails usando o Outlook.

using ProductivityTests.ObjectRepository;
using System;
using System.Collections.Generic;
using System.Data;
using UiPath.CodedWorkflows;
using UiPath.Core;
using UiPath.Core.Activities.Storage;
using UiPath.Mail.Activities.Api;
using UiPath.Orchestrator.Client.Models;
using UiPath.Testing;
using UiPath.Testing.Activities.TestData;
using UiPath.Testing.Activities.TestDataQueues.Enums;
using UiPath.Testing.Enums;
using UiPath.UIAutomationNext.API.Contracts;
using UiPath.UIAutomationNext.API.Models;
using UiPath.UIAutomationNext.Enums;
using UiPath.Mail;
using System.Net.Mail;
using System.Diagnostics;

namespace ProductivityTests
{
    public class MailExample : CodedWorkflow
    {
        [Workflow]
        public void Execute()
        {         

            //Send Simple Outlook Mail
            mail.Outlook().SendMail("firstname.lastname@organization.com","Test Subject","Body Message");
         
            //Configure your MailMessage and Send it
           SendMailOptions mailmessage = new SendMailOptions()
                .WithTo(new List<string>{"firstname.lastname@organization.com"})
                .WithSubject("A message through Coded Workflows")
                .WithBody(
                    "Hey,"
                    + Environment.NewLine
                    + "This message is sent by a robot built with Coded Workflows."
                    + Environment.NewLine
                    + Environment.NewLine 
                    + "Discover a sample code illustrating how to send, read, and move emails within the attachments."
                    + Environment.NewLine 
                    + "The mail package now features Coded Workflows support, introduced in the 1.22.0-preview Version released on December 04, 2023.");
           
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\CodedScreenshot.png");
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\MailExample.cs");
            mail.Outlook().SendMail(mailmessage);
                   
            // Read Mail Messages, iterate and move them
            GetOutlookMailOptions getMailOptions = new GetOutlookMailOptions()
                .WithFolder("Inbox")
                .WithOnlyUnreadMessages(true)
                .WithOrder(EOrderByDate.NewestFirst)
                .WithTop(50);
                                    
            var mails  = mail.Outlook().GetMessages(getMailOptions);
                       
            var counter =0;
            foreach(MailMessage mailMessage in mails)
            {
                counter++;
                Console.WriteLine(counter.ToString());
                Console.WriteLine(mailMessage.Subject);
                if (mailMessage.Subject.Contains("Coded Workflows"))
                {
                    //Move an email                    
                    mail.Outlook().MoveMail(mailMessage,"Demo");
                    Console.WriteLine("I found an email which contains Test");                   
                    
                }
                
            }
            //You can also define an object like this
            getMailOptions.WithFolder("Inbox");
            getMailOptions.WithOnlyUnreadMessages(true);
            getMailOptions.MailFolder ="Inbox";
            getMailOptions.OnlyUnreadMessages=true;
            getMailOptions.OrderByDate = EOrderByDate.NewestFirst;
            getMailOptions.Top=50;

        }
    }
}using ProductivityTests.ObjectRepository;
using System;
using System.Collections.Generic;
using System.Data;
using UiPath.CodedWorkflows;
using UiPath.Core;
using UiPath.Core.Activities.Storage;
using UiPath.Mail.Activities.Api;
using UiPath.Orchestrator.Client.Models;
using UiPath.Testing;
using UiPath.Testing.Activities.TestData;
using UiPath.Testing.Activities.TestDataQueues.Enums;
using UiPath.Testing.Enums;
using UiPath.UIAutomationNext.API.Contracts;
using UiPath.UIAutomationNext.API.Models;
using UiPath.UIAutomationNext.Enums;
using UiPath.Mail;
using System.Net.Mail;
using System.Diagnostics;

namespace ProductivityTests
{
    public class MailExample : CodedWorkflow
    {
        [Workflow]
        public void Execute()
        {         

            //Send Simple Outlook Mail
            mail.Outlook().SendMail("firstname.lastname@organization.com","Test Subject","Body Message");
         
            //Configure your MailMessage and Send it
           SendMailOptions mailmessage = new SendMailOptions()
                .WithTo(new List<string>{"firstname.lastname@organization.com"})
                .WithSubject("A message through Coded Workflows")
                .WithBody(
                    "Hey,"
                    + Environment.NewLine
                    + "This message is sent by a robot built with Coded Workflows."
                    + Environment.NewLine
                    + Environment.NewLine 
                    + "Discover a sample code illustrating how to send, read, and move emails within the attachments."
                    + Environment.NewLine 
                    + "The mail package now features Coded Workflows support, introduced in the 1.22.0-preview Version released on December 04, 2023.");
           
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\CodedScreenshot.png");
            mailmessage.Attachments.Add("C:\\Users\\firstname.lastname\\Downloads\\MailExample.cs");
            mail.Outlook().SendMail(mailmessage);
                   
            // Read Mail Messages, iterate and move them
            GetOutlookMailOptions getMailOptions = new GetOutlookMailOptions()
                .WithFolder("Inbox")
                .WithOnlyUnreadMessages(true)
                .WithOrder(EOrderByDate.NewestFirst)
                .WithTop(50);
                                    
            var mails  = mail.Outlook().GetMessages(getMailOptions);
                       
            var counter =0;
            foreach(MailMessage mailMessage in mails)
            {
                counter++;
                Console.WriteLine(counter.ToString());
                Console.WriteLine(mailMessage.Subject);
                if (mailMessage.Subject.Contains("Coded Workflows"))
                {
                    //Move an email                    
                    mail.Outlook().MoveMail(mailMessage,"Demo");
                    Console.WriteLine("I found an email which contains Test");                   
                    
                }
                
            }
            //You can also define an object like this
            getMailOptions.WithFolder("Inbox");
            getMailOptions.WithOnlyUnreadMessages(true);
            getMailOptions.MailFolder ="Inbox";
            getMailOptions.OnlyUnreadMessages=true;
            getMailOptions.OrderByDate = EOrderByDate.NewestFirst;
            getMailOptions.Top=50;

        }
    }
}

Esta página foi útil?

Obtenha a ajuda que você precisa
Aprendendo RPA - Cursos de automação
Fórum da comunidade da Uipath
Uipath Logo White
Confiança e segurança
© 2005-2025 UiPath. Todos os direitos reservados.