Docs / Strand / connectors/azure-queue

Azure Queue Storage

Direction: Read / Write | Type: azure.queue

Azure Queue Storage connector for sending and receiving messages from storage queues.

Required Permissions#

If using Azure RBAC (recommended), the service principal or managed identity must have the following roles:

Operation Required Azure Role
send_message Storage Queue Data Message Sender
receive_message Storage Queue Data Message Processor
Both Storage Queue Data Contributor
Tip: Assign roles at the storage account or queue level for least privilege. If using account keys for authentication, all operations are implicitly authorized.

Operations#

Operation Direction Description
send_message Write Send a message to the queue
receive_message Read Receive and dequeue a message

Connector Configuration#

Field Required Default Description
Authentication Type No api_key Uses explicit credentials (the fields below).
Account Name Yes - Azure storage account name
Account Key Conditional - Azure storage account key (encrypted). Required when Authentication Type is api_key
Connection String No - Full Azure storage connection string (encrypted). Use instead of Account Name and Account Key to reach Azure Government, Azure China, or a private endpoint.
Account URL No - Explicit service URL, used in place of the public-cloud address (e.g. a private endpoint). Leave empty for public Azure.
Queue Name No - Default queue name (can be overridden at node level)

Node Configuration#

Field Required Description
Operation Yes send_message or receive_message
Queue Name No Queue name (overrides connector default)

Output#

send_message#

json

{
  "success": true,
  "status": "sent",
  "data": {
    "queue": "my-queue"
  },
  "service": "azure.queue",
  "operation": "send_message"
}

receive_message#

json

{
  "success": true,
  "status": "received",
  "data": {
    "queue": "my-queue",
    "message": {"key": "value"}
  },
  "service": "azure.queue",
  "operation": "receive_message"
}

When the queue is empty:

json

{
  "success": true,
  "status": "empty",
  "data": {
    "queue": "my-queue",
    "message": null
  },
  "service": "azure.queue",
  "operation": "receive_message"
}

Example#

Connector Setup:

json

{
  "account_name": "mystorageaccount",
  "account_key": "base64-encoded-key...",
  "queue_name": "task-queue"
}