activities
latest
false
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.
UiPath logo, featuring letters U and I in white

Actividades de productividad

Última actualización 16 de sep. de 2025

API de automatización codificadas por correo

Las API te permiten acceder e interactuar con los servicios ofrecidos en el menú Gestionar paquetes. Puedes utilizar estas API al diseñar automatizaciones. Visita Automatizaciones codificadas para obtener más información sobre las automatizaciones codificadas y cómo diseñarlas utilizando API.
Nota: Al utilizar Ir a definición (F12), puedes acceder a la definición de las API de UiPath para un determinado servicio. Recomendamos confiar solo en las API expuestas directamente al implementar automatizaciones codificadas. Otras API que no estén expuestas directamente a un servicio serán sujeto de cambios sin notificación previa.

Sobrecargas

Las API tienen sobrecargas con frecuencia, lo que significa que proporcionan varias versiones del mismo método con diferentes opciones de parámetros. Las sobrecargas te permiten personalizar el comportamiento de la API en función de tus requisitos específicos. Por ejemplo, una API de automatización de IU puede tener una sobrecarga que acepte un parámetro de tiempo de espera para especificar el tiempo máximo de espera para que aparezca un elemento de IU antes de finalizar la ejecución.

Al utilizar las API con sus respectivas sobrecargas, puedes lograr fácilmente la lógica y el comportamiento de automatización deseados.

API de automatización codificadas por correo

Las API de automatización codificadas de correo complementan las capacidades del paquete Mail.Activities, lo que te permite tener una experiencia de codificación completa. Este enfoque fomenta las acciones personalizadas y admite la reutilización.

Primero, creas una interfaz que se conecta al servidor de correo que quieres utilizar, a través del objeto mail . El objeto mail te permite conectarte a Imap, Pop3, Outlook y Smtp.

Una vez conectado, las API de automatización codificadas específicas para el servidor de correo elegido estarán disponibles. Por ejemplo, si utilizas el servidor de Outlook, las API de automatización codificadas como MarkRead y MoveMail estarán disponibles.

Puedes utilizar las siguientes interfaces para acceder a las API de automatización codificadas específicas.
API de automatización codificadaDescripción
ImapLa interfaz a través de la que accedes a las API de automatización codificadas específicas de IMAP.
Pop3La interfaz a través de la que accedes a las API de automatización codificadas específicas de POP3.
SmtpLa interfaz a través de la que accedes a las API de automatización codificadas específicas de SMTP.
OutlookLa interfaz a través de la que accedes a las API de automatización codificadas específicas de Outlook.

Uso de API

Utiliza el siguiente formato para llamar a una API desde el servicio correspondiente: service.API. Por ejemplo, system.GetAsset.

Uso de las API de automatización codificadas de correo

Para utilizar las API de automatización codificadas de correo, primero debes crear una interfaz que se conecte al servidor de correo que quieres utilizar (Imap, Pop3, Smtp, Outlook) y, a continuación, llamar a las API de automatización codificadas deseadas en esta interfaz, como interface.GetMessages().
  1. Descarga el paquete de actividades.
  2. Crear un flujo de trabajo codificado.
  3. Llama al servicio mail y crea una interfaz que se conecte a uno de los siguientes servidores: Imap, Pop3, Outlook, Smtp.
  4. Llama a las API de automatización codificadas deseadas en la conexión que creaste previamente.

Ejemplo

En el siguiente ejemplo, puedes ver cómo puedes enviar un correo electrónico, configurar el correo electrónico, leer, iterar y mover correos electrónicos utilizando 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;

        }
    }
}

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo
Confianza y seguridad
© 2005-2025 UiPath. Todos los derechos reservados.