> ## Documentation Index
> Fetch the complete documentation index at: https://koreai.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Azure Blob Storage integration

[Back to list of integrations](https://koreai.mintlify.site/agent-platform/integrations/enterprise-systems.md)

Use the Azure Blob Storage integration to create and manage containers and blobs, read blob content, and manage blob tags through Action Tools.

| Authentication | Actions |
| - | - |
| Azure AD (Service Principal) | ([9](https://koreai.mintlify.site/agent-platform/integrations/enterprise-systems/azure-blob-storage#supported-actions)) |

## Supported actions

| Action | Use it to |
| - | - |
| [List Containers](#list-containers) | List containers in the storage account. |
| [Create Container](#create-container) | Create a container. |
| [Delete Container](#delete-container) | Delete a container. |
| [List Blobs](#list-blobs) | List blobs in a container. |
| [Create Blob](#create-blob) | Upload a file as a blob. |
| [Read Blob](#read-blob) | Read a blob. |
| [Delete Blob](#delete-blob) | Delete a blob. |
| [Add Tags to Blob](#add-tags-to-blob) | Add tags to a blob. |
| [Find Blobs](#find-blobs) | Find blobs by tags. |

## Prerequisites

* An Azure Storage account and a container, or permission to create one.
* A Microsoft Entra ID app registration with a service principal, tenant ID, client ID, and client secret.
* The service principal must have data access for the containers and blob operations the tools will use. See [Authorize access to blobs using Microsoft Entra ID](https://learn.microsoft.com/en-us/azure/storage/blobs/authorize-access-azure-active-directory).

## Set up the integration

**1. Prepare the Azure service principal**

Create or identify a Microsoft Entra ID app registration and service principal. Grant it the required Azure Blob Storage data access, and have the storage account name, tenant ID, client ID, and client secret ready.

**2. Create the auth profile**

In **Integrations**, select **Azure Blob Storage** > **Connect**. On **Project Auth Profiles**, select **New Profile** > **Integration Profile** > **Azure Blob Storage** > **Continue**. Use **Azure AD (Service Principal)** and enter the account name, tenant ID, resource, scopes, client ID, and client secret. The resource defaults to `https://storage.azure.com`. Scopes are space-separated. Set the profile name and choose whether it is visible to project members, then select **Create Profile**. The profile is preconfigured; users do not need to authorize it separately.

**3. Create the action tool**

In **Tools**, select **New Tool** > **Action** > **Azure Blob Storage** > **Continue**. Select the action and auth profile, configure its inputs, and select **Create Tool**. Then [assign the tool to an agent](https://koreai.mintlify.site/agent-platform/tools/actions.md#assign-an-action-to-an-agent).

## Action reference

The inputs below match the fields shown in Studio for each action.

> [accordion] List Containers
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `includeDeleted` | boolean | No | Include deleted containers. Defaults to `false`. |
> | `includeSystem` | boolean | No | Include system containers. Defaults to `true`. |
> | `prefix` | string | No | Filter containers by prefix. |

> [accordion] Create Container
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `containerName` | string | Yes | Name for the new container. |

> [accordion] Delete Container
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container to delete. |

> [accordion] List Blobs
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container. |
> | `includeSnapshots` | boolean | No | Include snapshots. Defaults to `false`. |
> | `prefix` | string | No | Filter blobs by prefix. |

> [accordion] Create Blob
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container. |
> | `blobName` | string | Yes | Name of the blob to create. |
> | `file` | string | Yes | File to upload as a blob. |
> | `tags` | object | No | Tags to associate with the blob. |

> [accordion] Read Blob
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container. |
> | `blobName` | string | Yes | Name of the blob to read. |

> [accordion] Delete Blob
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container. |
> | `blobName` | string | Yes | Name of the blob to delete. |

> [accordion] Add Tags to Blob
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container. |
> | `blobName` | string | Yes | Name of the blob to tag. |
> | `tags` | object | No | Tags to add to the blob. |
> | `keepExistingTags` | boolean | No | Keep existing tags. Defaults to `false`. |

> [accordion] Find Blobs
>
> | Parameter | Type | Required | Description |
> | - | - | - | - |
> | `container` | enum | Yes | Select the container to search. |
> | `tags` | object | Yes | Tags to match. |

## Troubleshoot common issues

| Issue | Resolution |
| - | - |
| An action returns an authorization error | Verify the service principal has the required Azure Blob Storage data access. |
| An action can't find a container or blob | Check the selected `container` and the `blobName`. |
| **Find Blobs** returns no matches | Verify the container and the tags supplied to the action. |

## Related articles

* [Auth profiles](https://koreai.mintlify.site/agent-platform/administration/integrations-settings.md#auth-profiles)
* [Action Tools](https://koreai.mintlify.site/agent-platform/tools/actions.md)
* [Azure Blob Storage documentation](https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blobs-introduction)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.