anonymous user While I don't have a diagram ready, here are the services that you could use for each component in your design
Source system sends set of records
If the records are small, you could just send them into an Azure Service Bus Queue for processing by downstream services.
Create an interface on Azure to process/transform the data
Depending on your requirements, you could choose between Azure Functions and Azure Logic Apps.
Push the transformed data into Azure storage
This can be done using the service selected in the previous step.
API needs to authenticate the client before processing the message
Not sure what API refers to here. If you mean the service processing the message, then if the message is coming into Service Bus, the sender would have already authenticated using Azure AD.
Ensure Guaranteed delivery
Offered by Azure Service Bus.
Message should be processed at most once
While Azure Service Bus ensures at-least once processing of messages, for at most once you will need to implement it into your services. A simple DB which tracks processed messages should do the trick.
Enable Azure monitor for metrics
Each service has its own integration with Azure Monitor and their official docs should include the details.