REST API to Send Messages to Azure Service Bus Topic Subscription


The article discusses using a REST API to send messages to a Service Bus Topic Subscription within the Azure ecosystem. This approach is beneficial for developers needing to integrate message-sending capabilities into their applications without relying on specific language or platform SDKs.

Firstly, the article outlines the prerequisites for setting up the environment, including having an Azure subscription, a Service Bus namespace, and a topic with one or more subscriptions. These are fundamental components to utilize the REST API effectively.

Next, it delves into the authentication process, highlighting the use of Azure Active Directory (Azure AD) to obtain a token for authentication. This token is crucial for making authorized requests to the Service Bus API.

The article then explains the structure of the HTTP request required to send a message to a specific subscription. It breaks down the necessary components, such as the request URL, headers (including the Authorization header with the acquired token), and the message payload.

Moreover, the content elaborates on how to handle various aspects of message sending, such as setting message properties, defining message content, and specifying the subscription to which the message is targeted.

Additionally, error handling is discussed to guide developers in managing potential issues, including HTTP error codes and troubleshooting steps. This ensures robustness in message-sending implementations.

Lastly, the article provides practical examples using tools like cURL to demonstrate how to construct and execute the HTTP request effectively. These examples serve as a valuable reference for developers looking to implement message sending via REST API within their applications.

In summary, the article serves as a comprehensive guide for leveraging REST API to send messages to Service Bus Topic Subscriptions in Azure, catering to developers seeking flexible and language-agnostic approaches to integrate messaging functionalities into their applications.

Follow the following steps.

The first step is to register an app into Microsoft Entra ID.

Microsoft Entra ID




After the App Registration process, go to Authentication.


Select your desired platform

Provide your App URL

 App URL

Go to Certificate & secrets


Generate client secret

 Client secret


Copy the Client Secret and save it to a file else. It will not be available for copy.


Now copy Client ID & Client Secret.

Microsoft Identity


Open the Postman to make an HTTP Request.

 HTTP Request

Create a Get Request as highlighted.


Add the following headers and paste the copied Client ID & Client Secret values.

Secret values

Send the request, and you will get the Access Token.

Access Token

Now go to the Azure Portal and Create a Service Bus namespace.


  Create namespace



Go to resource


Create New Topic

 New Topic



Now click the newly created topic and create a subscription.



Microsoft Azure

Add the filter for the subscription.

Add the filter


Filter type

Copy the Access Token from the Get request.

Get request

Now, create a Post request and put the following highlighted values into the request URL and request Headers.


put the message in the Body and select raw and JSON.


Execute the POST request you may get the highlighted 401 Code as follows.


Now go to the Azure portal, select the Access Control option, and add role assignment.

 Role assignment

Search for Azure Service Bus Data Sender.

Data Sender

Search for the Register App as highlighted.

Register App

Select the App


Assign the Role to the selected app.

Selected app


Now execute the POST request from Postman, and you will get the response with Code 201 Created.


Go to Azure Portal and click on Service Bus Explorer, select the subscription refresh, and then Peek next messages.


now select the message that you have sent from Postman and you will get the message body as highlighted below.



The article provides a detailed walkthrough of leveraging Azure's REST API for sending messages to Service Bus Topic Subscriptions. By following the outlined steps, developers can seamlessly integrate message-sending capabilities into their applications without relying on specific language or platform SDKs. From setting up the necessary Azure environment and understanding authentication via Azure Active Directory to crafting and executing HTTP requests using tools like Postman, this guide covers the entire process comprehensively.

Additionally, the article emphasizes error handling and troubleshooting, ensuring robustness in message-sending implementations. Practical examples using tools such as cURL and Postman demonstrate the practical application of the REST API approach.

By following these steps—from app registration to executing HTTP requests—developers can successfully send messages to Service Bus Topic Subscriptions, enabling flexible and language-agnostic integration of messaging functionalities within their Azure applications.

Similar Articles