Create the workflow to pop the message off queue and send an email (parsing json along the way)
Post a message to queue via .Net
Create a service bus name space
In Azure Portal, select All resources and then create a service bus namespace (or use an existing one, if you have it already)
Select an Azure subscription
Select or create an Azure resource group
Pick a unique name
Pick a region for functions api (close to home)
Pick a pricing plan (Basic is good if all you need is queue, Standard is good if you need subscriptions, Premium is too spendy)
Review + Create
Create a service bus queue
In Azure Portal, select All resources and then select the namespace already created
Select an Queues from the context menu
Click + Queue
Pick a unique name
Customize settings (defaults are good)
Review + Create
Create a logic app
In Azure Portal, select All resources and then create a logic app
Only one workflow per logic app apparently
Select an Azure subscription
Select or create an Azure resource group
Pick a type (consumption is good unless you want more control, are using multiple subscriptions or want your own docker container)
Pick a unique name
Pick a region (close to home)
Review + Create
Go to Resource
Configure Workflow
In Azure Portal, select All resources and then select the logic app
Only one workflow per logic app apparently
Select the logic app designer
Select a trigger (When message received in service bus queue)
Pick the subscription, service bus namespace, access key (you may have to look these up if the portal does not provide drop downs like it should)
Pick queue name, queue type (main or dead), polling interval etc.
If parsing JSON, you'll need a Parse JSON operation (don't forget the decodebase64 in order to parse the message: add dynamic content, choose expression and enter: decodebase64(triggerbody()?['ContentData']))