What are the requirements for creating an email automation using App Registration?

Jut-2755 80 Puntos de reputación
2025-08-07T22:20:00.6766667+00:00

I was currently looking for methods to create a daily email automation, and one I found was this one, but I wanted to be sure of the exact requirements for making this work. Currently, I understand that I need an email address that belongs to the same tenant as the app, that this email address is licensed with Exchange, and that the app has the appropriate permissions to send emails. Would that be enough?

Azure Information Protection
Azure Information Protection

Servicio de Azure que se usa para controlar y ayudar a proteger el correo electrónico, los documentos y los datos confidenciales que se comparten fuera de la empresa.

0 comentarios No hay comentarios

Respuesta aceptada por el autor de la pregunta
Pratyush Vashistha 5,135 Puntos de reputación Personal externo de Microsoft Moderador
2025-08-08T07:28:03.0833333+00:00

Hello Jut-2755!

Thanks for posting your question on Microsoft QnA!

Answering to your question: Yes, those requirements are generally valid if you're planning to send emails through Microsoft Graph API or Exchange Online, especially from a custom app like Azure Function.

But depending on how complex or scalable your email automation needs are, there may be simpler and more scalable ways using Azure-native tools like Logic Apps, Function Apps, or Power Automate.

Following are some simpler methods which you can use

Method 1: Azure Logic App (Most User-Friendly) Learn how: (https://learn.microsoft.com/en-us/azure/connectors/connectors-create-api-office365-outlook?tabs=consumption)

Best for non-developers or when you need easy integration.

Use the built-in Office 365 Outlook connector to send emails on a schedule.

Requirements:

  • An Office 365 (Exchange Online) account.
  • A licensed user in the same tenant (sender).
  • The connection is usually authenticated via OAuth.
  • You can connect to SharePoint, SQL, blob storage, or fetch dynamic content to include in your emails with no custom code required.

Method 2: Use of Power Automate flow: Lean how (https://learn.microsoft.com/en-us/power-automate/email-top-scenarios)

  • Very similar to Logic Apps but mostly for business users.
  • Uses the same Office 365 connectors.
  • Easier to manage by end-users with low code skills.

Method 3: Using Microsoft Graph + Azure Automation (or Azure Function) - Little complex and need code

  1. Create and Configure the App Registration
  • Go to: Azure Portal → Search App registrations in search bar → App Registrations → New Registration
  • Name your AppRegistration in the textBox
  • Choose Single Tenant
  1. Set Up Authentication

Generate a Client Secret (or upload a certificate) under Certificates & Secrets

Store this securely (see Step 5)

  1. Assign Microsoft Graph API Permissions
  • Go to API Permissions → Add a permission → Microsoft Graph Choose:
  • Mail.Send under Application permissions (for non-interactive scenarios) OR Delegated permissions if the app acts on behalf of a user
  • Click “Grant admin consent for [Tenant Name]”to finalize
  1. Prepare the Mailbox
  1. Secure the App Credentials
  • Store the client secret securely using Azure Key Vault or an Azure Automation credential asset
  • Avoid hard-coding secrets in your script or code.
  1. Automate & Schedule the Email

Use Microsoft Graph API to send the email via script (PowerShell, Python, etc.)

  • Schedule execution using Azure Automation, Azure Function, or an external scheduler
  • Trigger it daily or based on business logic

Please "Accept as Answer" if the answer provided is useful, so that you can help others in the community looking for remediation for similar issues.

Thanks and Happy to Help!

Pratyush

¿Le ha resultado útil esta respuesta?


0 respuestas adicionales

Ordenar por: Muy útil

Su respuesta

Las respuestas pueden ser marcadas como "Aceptadas" por el autor de la pregunta y "Recomendadas" por los moderadores, lo que ayuda a los usuarios a saber que la respuesta ha resuelto el problema del autor.