Azure (Microsoft) logo

Skill

source-to-logic-apps-mapping

map MuleSoft components to Logic Apps

Covers Azure Migration API Development

Description

One-to-one mapping of every MuleSoft Anypoint component (connectors, processors, flow constructs, DataWeave, error handlers, platform features) to its Azure Logic Apps Standard equivalent. Covers 150+ mappings with service provider IDs, operation names, connection parameters, and deployment scopes.

SKILL.md

MuleSoft Anypoint to Azure Logic Apps Standard — Component Migration Reference

One-to-one mapping of every MuleSoft component to its Azure Logic Apps Standard equivalent.


Table of Contents


Overview

Azure Logic Apps Standard provides built-in service provider connectors that run in-process within the runtime, replacing MuleSoft Anypoint connectors, processors, and platform features. This document maps every MuleSoft component to its Logic Apps Standard equivalent, including available triggers and actions.

Key Concepts

ConceptMuleSoft AnypointLogic Apps Standard
TransportConnector (Source / Operation)Service Provider Connector
Message ProcessingProcessor (ee:transform, set-payload)Built-in Action (Compose, Transform, etc.)
RoutingChoice / Scatter-Gather / Round-RobinCondition / Switch / Parallel branches
FlowMule Flow (XML)Workflow definition (JSON)
Sub-flowSub-flow (via flow-ref)Child workflow (via InvokeWorkflow)
Data TransformDataWeave 2.0Liquid templates / Compose / .NET local functions
Error Handlingon-error-propagate / on-error-continueScope + Run After (Failed) / Terminate
API ManagementAnypoint API ManagerAzure API Management
Object StoreObject Store V2Azure Table Storage / Azure Cache for Redis
SchedulerScheduler source (cron/fixed-freq)Recurrence trigger

When to Use Integration Account

Use an Integration Account only when the target design requires Integration Account-specific capabilities, such as:

  • B2B/EDI processing with X12, EDIFACT, or AS2 actions
  • Trading partners, agreements, and partner-specific B2B configuration
  • Shared enterprise artifact management where schemas/maps/partner artifacts are centrally managed outside the workflow project

Do NOT choose Integration Account for ordinary XML, JSON, or DataWeave replacement scenarios if Logic Apps Standard artifact folders and built-in actions are sufficient.

If Integration Account is chosen:

  • use it consistently for the flow's deployable artifacts; do not split artifacts between Integration Account and Logic App artifact folders
  • plan for the required app setting WORKFLOWS_INTEGRATION_ACCOUNT_ID
  • plan for the required app setting WORKFLOW_INTEGRATION_ACCOUNT_CALLBACK_URL
  • deploy the Integration Account first, then set WORKFLOWS_INTEGRATION_ACCOUNT_ID to the deployed Integration Account resource ID, for example /subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Logic/integrationAccounts/{name}
  • retrieve the deployed callback URL and set WORKFLOW_INTEGRATION_ACCOUNT_CALLBACK_URL to that real value
  • plan a separate follow-on task to upload the required Integration Account artifacts after provisioning

Connector Mappings

File & Storage

File System

MuleSoftLogic Apps Standard
Connectorfile:connector (Mule File)File System
Service Provider/serviceProviders/fileSystem
Deployment ScopeAny (on-premises + cloud)
CategoryStorage

Migration Note: MuleSoft file:listener (source) maps to File System trigger. file:read / file:write operations map to actions.

TypeOperationDescription
TriggerwhenFilesAreAdded (default)Poll for new files in a folder
TriggerwhenFilesAreAddedOrModifiedPoll for new or modified files
ActioncreateFile (default)Create a new file
ActiongetFileContentRead file content
ActiongetFileContentV2Read file content (v2)
ActiongetFileMetadataGet file metadata
ActionupdateFileUpdate an existing file
ActiondeleteFileDelete a file
ActionlistFolderList files in a folder
ActioncopyFileCopy a file
ActionrenameFileRename a file
ActionappendFileAppend content to a file
ActionextractArchiveExtract archive contents

Connection Parameters: RootFolder (required), Username (required), Password (required), MountPath (optional)


FTP

MuleSoftLogic Apps Standard
Connectorftp:connector (Mule FTP)FTP
Service Provider/serviceProviders/ftp
Deployment ScopeAny
CategoryStorage

Migration Note: MuleSoft ftp:listener maps to FTP trigger. ftp:read / ftp:write operations map to actions.

TypeOperationDescription
TriggerwhenFtpFilesAreAddedOrModified (default)Poll for new/modified FTP files
ActioncreateFile (default)Upload a file to FTP
ActiongetFileContentRead FTP file content
ActiongetFtpFileContentV2Read FTP file content (v2)
ActiongetFileMetadataGet FTP file metadata
ActionupdateFileUpdate an FTP file
ActiondeleteFtpFileDelete an FTP file
ActionlistFilesInFolderList files in FTP folder
ActionextractArchiveExtract archive on FTP

Connection Parameters: ServerAddress (required), UserName (required), Password (required), ServerPort (optional), IsSSL (optional)


SFTP

MuleSoftLogic Apps Standard
Connectorsftp:connector (Mule SFTP)SFTP
Service Provider/serviceProviders/sftp
Deployment ScopeAny
CategoryStorage

Migration Note: MuleSoft sftp:listener maps to SFTP trigger. sftp:read / sftp:write operations map to actions.

TypeOperationDescription
TriggerwhenFileIsAdded (default)Poll for new files on SFTP
TriggerwhenFileIsAddedOrModifiedPoll for new/modified files
ActioncreateFile (default)Create a file on SFTP
ActiongetFileContentRead SFTP file content
ActiongetFileContentV2Read SFTP file content (v2)
ActiongetMetadataGet file or folder metadata
ActionuploadFileContentUpload file content
ActionupdateFileUpdate an SFTP file
ActiondeleteFileDelete an SFTP file
ActioncopyFileCopy a file on SFTP
ActionrenameFileRename a file on SFTP
ActionlistFolderList folder contents
ActioncreateFolderCreate a folder
ActiondeleteFolderDelete a folder
ActionextractArchiveExtract archive on SFTP

Connection Parameters: HostName (required), UserName (required), Password (optional), SshPrivateKey (optional), SshPrivateKeyPassphrase (optional), PortNumber (optional)


Messaging & Eventing

Azure Service Bus

MuleSoftLogic Apps Standard
Connectorjms:connector, vm:connector, anypoint-mqAzure Service Bus
Service Provider/serviceProviders/serviceBus
Deployment ScopeCloud Only
CategoryMessaging

Migration Note: MuleSoft JMS connector, VM connector, and Anypoint MQ all map to Azure Service Bus for cloud-native queuing and topic patterns. JMS queues → Service Bus queues. JMS topics → Service Bus topics. VM queues (intra-app messaging) → Service Bus queues or child workflow calls.

TypeOperationDescription
TriggerreceiveQueueMessage (default)Receive single queue message
TriggerreceiveQueueMessagesReceive batch of queue messages
TriggerreceiveTopicMessageReceive single topic message
TriggerreceiveTopicMessagesReceive batch of topic messages
ActionsendMessage (default)Send a message
ActionsendMessagesSend batch of messages
ActioncompleteMessageComplete a message
ActionabandonMessageAbandon a message
ActiondeadLetterMessageDead-letter a message

Connection Parameters: ConnectionString (required)


RabbitMQ

MuleSoftLogic Apps Standard
Connectoramqp:connector (Mule AMQP)RabbitMQ
Service Provider/serviceProviders/rabbitmq
Deployment ScopeAny
CategoryMessaging

Migration Note: MuleSoft AMQP connector maps to RabbitMQ connector in Logic Apps.

TypeOperationDescription
TriggerreceiveRabbitMQMessages (default)Receive messages (Push)
ActionsendRabbitMQMessage (default)Send a message
ActioncreateQueueCreate a queue
ActioncompleteMessageComplete (acknowledge) a message

Connection Parameters: HostName (required), UserName (required), Password (required), Port (optional), VirtualHost (optional)


Confluent Kafka

MuleSoftLogic Apps Standard
Connectorkafka:connector (Mule Kafka)Confluent Kafka
Service Provider/serviceProviders/confluentKafka
Deployment ScopeAny
CategoryMessaging

Migration Note: MuleSoft Kafka connector maps directly to Confluent Kafka connector in Logic Apps.

TypeOperationDescription
TriggerReceiveMessage (default)Receive messages (Push)
ActionSendMessage (default)Send a message to topic

Connection Parameters: BootstrapServers (required), AuthenticationMode (required), Protocol (required), UserName (optional), Password (optional)


Database

SQL Server

MuleSoftLogic Apps Standard
Connectordb:connector (Mule Database)SQL Server
Service Provider/serviceProviders/sql
Deployment ScopeAny
CategoryDatabase

Migration Note: MuleSoft db:selectexecuteQuery. db:insert / db:update / db:deleteexecuteQuery or specific row actions. db:stored-procedureexecuteStoredProcedure. The Mule Database connector supports multiple DB engines (MySQL, PostgreSQL, Oracle, MSSQL) via JDBC — map each to the specific Logic Apps database connector.

TypeOperationDescription
TriggerwhenARowIsModified (default)Poll for modified rows
TriggerwhenARowIsInsertedPoll for inserted rows
ActionexecuteQuery (default)Execute a SQL query
ActionexecuteStoredProcedureExecute a stored procedure
ActiongetRowsGet rows from a table
ActioninsertRowInsert a row
ActionupdateRowsUpdate rows
ActiondeleteRowsDelete rows

Connection Parameters: ConnectionString (required)


HTTP & Web Services

HTTP

MuleSoftLogic Apps Standard
Connectorhttp:listener, http:request, wsc:consumerHTTP
Service Provider/serviceProviders/http
Deployment ScopeAny
CategoryIntegration

Migration Note: MuleSoft http:listener (source) → HTTP Request trigger. http:request (operation) → HTTP action (invokeHttp). wsc:consumer (SOAP web service client) → HTTP action with XML body and SOAPAction header.

TypeOperationDescription
Triggermanual (default)HTTP Request trigger (webhook/callback)
ActioninvokeHttp (default)Make an HTTP request

Connection Parameters: None required (inline configuration)


Email

SMTP

MuleSoftLogic Apps Standard
Connectoremail:send (Mule Email)SMTP
Service Provider/serviceProviders/Smtp
Deployment ScopeAny
CategoryEmail

Migration Note: MuleSoft email:send maps to SMTP sendEmail action. MuleSoft email:listener-imap / email:listener-pop3 have no direct SMTP trigger — use Outlook 365 connector or a polling pattern.

TypeOperationDescription
ActionsendEmail (default)Send an email

Connection Parameters: Server (required), Port (required), UserName (required), Password (required), EnableSSL (optional)


ERP (SAP)

SAP

MuleSoftLogic Apps Standard
Connectorsap:connector (MuleSoft SAP)SAP
Service Provider/serviceProviders/sap
Deployment ScopeAny (via data gateway)
CategoryERP

Migration Note: MuleSoft sap:sync-rfc / sap:async-rfc → SAP callRfc action. sap:send-idoc → SAP sendIdoc action. Requires on-premises data gateway for connectivity.

TypeOperationDescription
TriggerreceiveTrfcReceive tRFC from SAP
TriggerreceiveIdocReceive IDoc from SAP
ActioncallRfcCall SAP RFC function
ActionsendIdocSend IDoc to SAP
ActionreadTableRead SAP table
ActioncreateSessionCreate stateful session
ActioncloseSessionClose stateful session

Connection Parameters: Server (required), SystemNumber (required), Client (required), UserName (required), Password (required), GatewayName (optional)


Connectors Not Mapped (Gaps)

MuleSoft ConnectorGap ReasonRecommended Alternative
Anypoint MQCloudHub-native messaging serviceAzure Service Bus
Object Store V2CloudHub-native key-value storeAzure Table Storage or Azure Cache for Redis
Salesforce ConnectorNo built-in Logic Apps equivalentSalesforce managed API connector or HTTP + REST API
Workday ConnectorNo built-in Logic Apps equivalentHTTP + REST API
NetSuite ConnectorNo built-in Logic Apps equivalentHTTP + REST API
MongoDB ConnectorNo built-in Logic Apps equivalentHTTP + REST API or Azure Cosmos DB (MongoDB API)
Redis ConnectorNo built-in Logic Apps equivalentAzure Cache for Redis via HTTP or .NET local function
Elasticsearch ConnectorNo built-in Logic Apps equivalentHTTP + REST API
API Manager PoliciesAnypoint-specific API governanceAzure API Management policies
CloudHub PropertiesCloudHub deployment-specific configurationLogic Apps app settings (local.settings.json)

Processor Mappings

Core Processors

MuleSoft ProcessorLogic Apps EquivalentNotes
loggerCompose + tracked propertiesUse tracked properties for run-level logging
set-payloadCompose actionSets the message body
set-variableSet Variable action / Initialize VariableCreates or updates a workflow variable
remove-variableSet Variable (to null)Logic Apps does not have a remove action
flow-refInvokeWorkflow (child workflow)Calls another workflow
raise-errorTerminate action (Failed)Ends the workflow with an error
parse-templateCompose actionTemplate rendering via expressions

Control Flow Processors

MuleSoft ProcessorLogic Apps EquivalentNotes
choiceCondition / Switch actionwhen → Condition branches, otherwise → default
scatter-gatherParallel branchesDirect mapping to parallel branch execution
foreachFor Each actioncollection → items expression
until-successfulUntil action (with retry)Maps to retry loop pattern
first-successfulCustom pattern (try sequential)No direct equivalent — use Scope + Run After
round-robinCustom patternNo direct equivalent — use expressions
tryScope actionScope + error handling via Run After

Data Transformation

MuleSoft ProcessorLogic Apps EquivalentNotes
ee:transformCompose / Liquid / .NET local functionDataWeave → Liquid for simple maps; .NET for complex
DataWeave 2.0 (.dwl)Liquid template / XSLT / .NET functionAssess complexity before choosing target
set-payload (DW)Compose action with expressionsInline DataWeave → workflow expressions

Validation Processors

MuleSoft ProcessorLogic Apps EquivalentNotes
validation:is-trueCondition actionBoolean condition check
validation:is-falseCondition actionBoolean condition check (negated)
validation:is-not-nullCondition actionNull check with expression
validation:is-nullCondition actionNull check with expression
validation:validates-sizeCondition action + length() exprSize validation via expression
validation:is-not-blank-stringCondition action + empty() exprBlank check via expression
validation:matches-regexCondition action with inline codeRegex via .NET local function if needed
validation:is-emailCondition action with regex/expressionEmail pattern validation

Error Handling

MuleSoft PatternLogic Apps EquivalentNotes
on-error-propagateScope + Run After (Failed) + TerminateError is re-thrown to caller
on-error-continueScope + Run After (Failed) + ContinueError is caught but flow continues
try scopeScope actionWraps processors in a protected boundary
Error type filtering (HTTP:CONNECTIVITY)Condition inside Run After (Failed) blockCheck error details in the failed action output
Global error handlerAdd error handling to each workflow + shared error workflowCentralize via a dedicated error-handling workflow

Flow Construct Mappings

MuleSoft ConstructLogic Apps EquivalentNotes
Flow (with source)Workflow (with trigger)1:1 mapping — each flow becomes a workflow
Sub-flowChild workflow (InvokeWorkflow)Called from parent via workflow action
Private flowChild workflow (InvokeWorkflow)Same as sub-flow for migration purposes
Global configConnection in connections.jsonShared connector configurations
Mule applicationLogic Apps Standard projectOne app → one Logic App
Mule domainShared connections.jsonDomain-level shared resources
Scheduler sourceRecurrence triggercron/fixed-frequency → recurrence config
http:listener sourceHTTP Request trigger (manual)Direct mapping
jms:listener sourceService Bus triggerJMS queue/topic → Service Bus queue/topic
vm:listener sourceService Bus trigger / child workflowVM queue → Service Bus or child workflow call
file:listener sourceFile System triggerDirect mapping
ftp:listener sourceFTP triggerDirect mapping
sftp:listener sourceSFTP triggerDirect mapping
email:listener sourceOutlook 365 trigger / polling patternNo built-in SMTP trigger
db:listener sourceSQL Server trigger (whenARowIsModified)Database polling pattern

DataWeave → Logic Apps Expressions

Expression Language Comparison

FeatureMuleSoft DataWeave 2.0Logic Apps Workflow Expressions
SyntaxFunctional, pattern-matching@{expression} C-like syntax
String concatpayload.first ++ " " ++ payload.last@concat(body('action'),'first',' ',body('action'),'last')
Conditionalif (cond) val1 else val2@if(condition, val1, val2)
Null coalescingpayload.name default "N/A"@coalesce(body('action')?['name'],'N/A')
Array iterationpayload map (item) -> item.nameFor Each action + @items('For_each')
Array filterpayload filter (item) -> item.activeFilter Array action or @body('Filter_array')
Type coercionpayload.amount as Number@float(body('action')?['amount'])
Date formattingnow() as String {format: "yyyy-MM-dd"}@formatDateTime(utcNow(),'yyyy-MM-dd')
Upper/lowerupper(payload.name)@toUpper(body('action')?['name'])
String lengthsizeOf(payload.name)@length(body('action')?['name'])
Object construction{ key: value }Compose action with JSON body
Reducepayload reduce (item, acc) -> ....NET local function (no direct equivalent)
GroupBypayload groupBy $.category.NET local function (no direct equivalent)
Pattern matchingpayload match { ... }Switch action + conditions

Common Expression Conversions

MuleSoft DataWeaveLogic Apps Expression
payload@body('Previous_Action') or @triggerBody()
payload.orderId@body('Previous_Action')?['orderId']
attributes.headers.'Content-Type'@triggerOutputs()?['headers']?['Content-Type']
vars.myVariable@variables('myVariable')
flowVars.correlationId@variables('correlationId')
payload.items map (item) -> item.idFor Each + Compose + @items('For_each')?['id']
sizeOf(payload)@length(body('Previous_Action'))
now()@utcNow()
uuid()@guid()
payload.amount as Number@float(body('Previous_Action')?['amount'])
upper(payload.name)@toUpper(body('Previous_Action')?['name'])
payload.name default "Unknown"@coalesce(body('Previous_Action')?['name'],'Unknown')
isEmpty(payload)@empty(body('Previous_Action'))

Mule Variables → Logic Apps Variables

MuleSoft Variable TypeLogic Apps EquivalentNotes
Flow variable (set-variable)Initialize Variable + Set VariableMust declare type at init
Session variableNot applicableUse correlation or pass as params
Mule message payloadAction/trigger body@body() / @triggerBody()
Mule message attributesTrigger/action headers/outputs@triggerOutputs()?['headers']
Target variableCompose action outputStore intermediate results

Custom Code Migration

Custom Code Options in Logic Apps Standard

OptionWhen to UseDeployment
.NET Local FunctionComplex DataWeave, Java logic port, custom transformsIn-process with Logic Apps
Azure FunctionExternal HTTP services, long-running operationsSeparate Azure Function app
Inline Code (JavaScript)Simple string/JSON manipulationInline in workflow.json

Custom Code Migration Matrix

MuleSoft SourceLogic Apps TargetNotes
Custom Java class.NET local functionPort Java business logic to C#
Custom Mule module.NET local function or Azure FunctionDepends on complexity
DataWeave script (simple)Liquid templateField mapping, simple transforms
DataWeave script (complex).NET local functionreduce, groupBy, custom functions
MEL expression (simple)Workflow expressionDirect expression conversion
MEL expression (Java interop).NET local functionJava → C# translation needed
Custom transformer.NET local functionPort transformation logic to C#
Custom message processor.NET local functionPort processor logic to C#
Custom policyAzure API Management policyAPI-level concerns move to APIM

Platform Feature Mappings

MuleSoft FeatureLogic Apps Standard EquivalentNotes
Anypoint Platform (Management)Azure Portal + Logic Apps bladeMonitoring, deployment, configuration
Anypoint API ManagerAzure API ManagementAPI policies, rate limiting, analytics
Anypoint ExchangeAzure API Center / custom catalogAPI/connector catalog
Anypoint MQAzure Service BusCloud messaging
Object Store V2Azure Table Storage / Azure Cache for RedisKey-value persistence
CloudHub (runtime)Logic Apps Standard (App Service plan)Hosting and scaling
CloudHub Auto-scalingApp Service plan auto-scale rulesScale based on metrics
CloudHub VPCAzure VNet integrationNetwork isolation
CloudHub DLBAzure Application Gateway / Front DoorLoad balancing
Mule Agents (monitoring)Application InsightsTelemetry, logging, alerting
MUnit (testing)Logic Apps local testing + curl/PowerShellTest via HTTP triggers locally
Maven build (pom.xml)Not applicable (JSON-based project)Logic Apps uses folder structure, not Maven
mule-artifact.jsonhost.json + local.settings.jsonRuntime and project configuration
application.propertieslocal.settings.json (app settings)Configuration values
Secure propertiesAzure Key Vault references@Microsoft.KeyVault(...) references

Deployment Scope Reference

ScopeDescriptionExamples
AnyRuns anywhere — on-premises via hybrid, or cloudFile System, SFTP, FTP, SQL, HTTP, SAP
Cloud OnlyRequires Azure cloud resourcesService Bus, Event Hub, Cosmos DB, Blob

Connection Type Reference

Connection TypeFormat in connections.jsonNotes
Service ProviderserviceProviderConnections.{name}Built-in, runs in-process
Managed APImanagedApiConnections.{name}Azure-hosted connector instance

Quick Lookup: MuleSoft Connector → Logic Apps Connector

MuleSoft Connector / ProcessorLogic Apps ConnectorService Provider ID
http:listenerHTTP (Request trigger)/serviceProviders/http
http:requestHTTP (invokeHttp action)/serviceProviders/http
file:connectorFile System/serviceProviders/fileSystem
ftp:connectorFTP/serviceProviders/ftp
sftp:connectorSFTP/serviceProviders/sftp
db:connector (SQL Server)SQL Server/serviceProviders/sql
db:connector (MySQL)SQL Server (via JDBC)/serviceProviders/sql
db:connector (Oracle)Oracle Database/serviceProviders/oracledb
db:connector (PostgreSQL)PostgreSQL/serviceProviders/postgresql
jms:connectorAzure Service Bus/serviceProviders/serviceBus
vm:connectorAzure Service Bus/serviceProviders/serviceBus
amqp:connectorRabbitMQ/serviceProviders/rabbitmq
kafka:connectorConfluent Kafka/serviceProviders/confluentKafka
email:sendSMTP/serviceProviders/Smtp
wsc:consumerHTTP (SOAP over HTTP)/serviceProviders/http
sap:connectorSAP/serviceProviders/sap
ee:transform (DataWeave)Compose / Liquid / .NET(built-in action)
choiceCondition / Switch(built-in action)
scatter-gatherParallel branches(built-in action)
foreachFor Each(built-in action)
until-successfulUntil(built-in action)
tryScope(built-in action)
flow-refInvokeWorkflow(built-in action)
set-variableSet Variable(built-in action)
set-payloadCompose(built-in action)
loggerCompose (tracked props)(built-in action)
raise-errorTerminate(built-in action)
schedulerRecurrence trigger(built-in trigger)
os:store / os:retrieveAzure Table Storage/serviceProviders/azureTables
validation:*Condition action(built-in action)

Coverage Summary

CategoryMuleSoft Components CoveredLogic Apps EquivalentsGaps
File & Storage Connectors3 (file, ftp, sftp)30
Messaging Connectors4 (jms, vm, amqp, kafka)40
Database Connectors1 (db:connector, multi-DB)4+ (SQL, Oracle, etc.)0
HTTP / Web Services3 (listener, request, wsc)1 (HTTP)0
Email1 (email:send)1 (SMTP)0
ERP1 (SAP)1 (SAP)0
Core Processors770
Control Flow75 + patterns2
Data Transformation3 (DataWeave variants)3 (Compose/Liquid/.NET)0
Validation88 (Condition)0
Error Handling3 patterns3 patterns0
Platform Features15150
Total~56 components~55 equivalents2

More from Azure (Microsoft)

View publisher

© 2026 YourAI.tools. Every skill from an identity-verified publisher.

Independent catalog. Not affiliated with, endorsed by, or sponsored by Anthropic or any listed publisher. All trademarks belong to their respective owners.