Provides integration with Microsoft Azure Blob Storage using an account key, a SAS token or delegated Microsoft Entra OAuth 2.0.
0.0.0.3 - Initial release.
Create an Azure Blob Storage Connection so the Node can authenticate with Azure Storage and optionally supply a default container for blob methods.
| Property |
Type |
Description |
Authentication Type |
Enum |
Select whether the Connection uses an Account Key, SAS Token, or delegated Entra OAuth 2.0. |
Account Name |
String |
Azure storage account name used to target the blob service when Service Uri is not supplied. |
Service Uri |
String |
Optional absolute blob service URL, e.g. https://account.blob.core.windows.net. |
Default Container Name |
String |
Optional default container used when blob methods omit Container Name. |
Account Key |
Masked |
Azure storage account shared key used when Authentication Type is Account Key. |
SAS Token |
Masked |
Shared access signature token used when Authentication Type is SAS Token. |
Tenant ID |
String |
Microsoft Entra tenant identifier used when Authentication Type is Entra OAuth 2.0. |
Client ID |
String |
Application client identifier used for delegated Entra OAuth 2.0. |
Client Secret |
Masked |
Application secret used for delegated Entra OAuth 2.0. |
Scopes |
String |
Delegated OAuth scopes used for Microsoft Entra authorization and token refresh. |
Access Token |
Masked |
Delegated OAuth access token returned by Microsoft Entra ID. |
Refresh Token |
Masked |
Delegated OAuth refresh token returned by Microsoft Entra ID. |
- Enter either
Service Uri or Account Name. If you leave Service Uri blank, Flowgear derives it from Account Name.
Service Uri must be an absolute URL.
- Paste
SAS Token values with or without the leading ?. The Node normalizes either format.
- Enter
Default Container Name if you want blob methods to use one container by default.
- The Connection test validates the default container when
Default Container Name is set. Otherwise it tests access by listing containers.
- For delegated
Entra OAuth 2.0, configure Tenant ID, Client ID, Client Secret, and appropriate delegated Azure Storage scopes.
- The default
Scopes value already targets Azure Storage delegated access. Change it only if your application registration requires a different delegated scope set.
- Delegated
Entra OAuth 2.0 access requires Azure RBAC data access roles such as Storage Blob Data Contributor. Role changes can take time to propagate.
This Node exposes methods for common container operations, single-blob file operations, and blob metadata updates.
Use this method to return the containers available to the configured credential.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
| Return |
Type |
Description |
Containers |
Array |
One row per container. See the Container Properties table below. |
| Property |
Type |
Description |
containerName |
String |
Container name. |
uri |
String |
Absolute container URL. |
lastModified |
DateTime |
Date and time when Azure last modified the container, when available. |
eTag |
String |
Entity tag returned by Azure Storage, when available. |
created |
Boolean |
Indicates whether the method created the container. This field is typically not populated for listing operations. |
metadata |
Object |
Container metadata returned by Azure Storage, when present. |
Use this method to create one container when it does not already exist, then return the resolved container details.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Container Name |
String |
Container name to create. |
| Return |
Type |
Description |
Container |
Object |
One row with normalized container details. See the Container Properties table below. |
Use this method to list blobs in one container. You can optionally limit the results to a blob-name prefix.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Container Name |
String |
Container name to query. If you leave this blank, the Node uses Default Container Name from the Connection. |
Prefix |
String |
Optional blob-name prefix used to limit the returned blobs. |
| Return |
Type |
Description |
Blobs |
Array |
One row per blob. See the Blob Properties table below. |
| Property |
Type |
Description |
containerName |
String |
Container that contains the blob. |
blobName |
String |
Exact blob name. |
uri |
String |
Absolute blob URL. |
contentLength |
Integer |
Blob size in bytes. |
eTag |
String |
Entity tag returned by Azure Storage, when available. |
lastModified |
DateTime |
Date and time when Azure last modified the blob, when available. |
createdOn |
DateTime |
Date and time when Azure created the blob, when available. |
contentType |
String |
Blob content type, when available. |
blobType |
String |
Azure blob type, e.g. Block. |
accessTier |
String |
Azure access tier, when available. |
versionId |
String |
Blob version identifier, when available. |
metadata |
Object |
Blob metadata returned by Azure Storage, when present. |
Use this method to upload one stream to a container as a single blob. If the blob already exists, the upload replaces it.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Content |
Stream |
Binary content stream to upload. |
Blob Name |
String |
Exact blob name to create or replace. |
Container Name |
String |
Container name that receives the uploaded blob. If you leave this blank, the Node uses Default Container Name from the Connection. |
Content Type |
String |
Optional content type stored with the uploaded blob. |
| Return |
Type |
Description |
Blob |
Object |
One row with normalized write details. See the Blob Write Properties table below. |
| Property |
Type |
Description |
containerName |
String |
Container that received the blob. |
blobName |
String |
Exact blob name that was created or replaced. |
uri |
String |
Absolute blob URL. |
eTag |
String |
Entity tag returned by Azure Storage, when available. |
lastModified |
DateTime |
Date and time when Azure last modified the blob, when available. |
versionId |
String |
Blob version identifier, when available. |
deleted |
Boolean |
Indicates whether the blob was deleted. This field is typically not populated for uploads. |
Use this method to download one blob as a stream.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Blob Name |
String |
Exact blob name to download. |
Container Name |
String |
Container name containing the blob. If you leave this blank, the Node uses Default Container Name from the Connection. |
| Return |
Type |
Description |
Content |
Stream |
The downloaded blob content stream. |
Use this method to delete one blob from a container. If snapshots exist, Azure deletes them with the blob.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Blob Name |
String |
Exact blob name to delete. |
Container Name |
String |
Container name containing the blob. If you leave this blank, the Node uses Default Container Name from the Connection. |
| Return |
Type |
Description |
Blob |
Object |
One row with normalized delete details. See the Blob Write Properties table above. |
Use this method to read blob properties and metadata from one blob.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Blob Name |
String |
Exact blob name to inspect. |
Container Name |
String |
Container name containing the blob. If you leave this blank, the Node uses Default Container Name from the Connection. |
| Return |
Type |
Description |
BlobProperties |
Object |
One row with blob properties and metadata. See the Blob Property Details table below. |
| Property |
Type |
Description |
containerName |
String |
Container that contains the blob. |
blobName |
String |
Exact blob name. |
uri |
String |
Absolute blob URL. |
contentLength |
Integer |
Blob size in bytes. |
eTag |
String |
Entity tag returned by Azure Storage, when available. |
lastModified |
DateTime |
Date and time when Azure last modified the blob, when available. |
createdOn |
DateTime |
Date and time when Azure created the blob, when available. |
contentType |
String |
Blob content type, when available. |
blobType |
String |
Azure blob type, e.g. Block. |
accessTier |
String |
Azure access tier, when available. |
versionId |
String |
Blob version identifier, when available. |
contentEncoding |
String |
Blob content encoding, when available. |
contentLanguage |
String |
Blob content language, when available. |
contentDisposition |
String |
Blob content disposition, when available. |
metadata |
Object |
Blob metadata returned by Azure Storage, when present. |
Use this method to replace all metadata on one blob. Supply an empty Object to clear existing metadata.
| Parameter |
Type |
Description |
Connection |
Connection |
Azure Blob Storage Connection details including the selected authentication settings. |
Metadata |
Object |
Metadata object to persist on the blob. Supply an empty Object to clear metadata. |
Blob Name |
String |
Exact blob name to update. |
Container Name |
String |
Container name containing the blob. If you leave this blank, the Node uses Default Container Name from the Connection. |
| Return |
Type |
Description |
BlobProperties |
Object |
One row with the refreshed blob properties and metadata. See the Blob Property Details table above. |
- JSON-returning methods include the standard Flowgear response fields
status, statusMessage, and errorMessage.
List Containers emits one row per container.
List Blobs emits one row per blob and handles Azure pagination internally. You do not supply continuation tokens.
- If you omit
Container Name on blob-target methods, the Node uses Default Container Name from the Connection.
Download Blob returns a stream instead of a JSON row. If Azure Storage returns an error, the Node raises that error instead of returning a response row.
- Blob-specific template discovery works best when the Connection includes
Default Container Name. Without it, blob-target template expansion falls back to generic templates.