# Storage

ZBrain Flow Storage is a scalable key/value storage service enabling users to store and retrieve data quickly. It provides fast, reliable data access, making it ideal for real-time applications, caching, and dynamic data management in enterprise AI workflows.

To integrate Storage with ZBrain Flow, follow these detailed steps:

* Click the '+' button in the Flow and search for **Storage** in the ZBrain Flow.
* Select the specific task from the list you want to include in the Flow. You can perform the below listed tasks:
  * **Add To List**: Add an item to a list in storage.
  * **Append**: Append a value to an existing value in storage.
  * **Get**: Retrieve a value from storage.
  * **Put**: Store a value in storage.
  * **Remove**: Remove a value from storage.
  * **Remove from List**: Remove an item from a list in storage.

### **Add To List** <a href="#add-to-list" id="add-to-list"></a>

Add an item to a list in storage.

#### **How to Configure** **Add To List** **to ZBrain Flow?** <a href="#how-to-configure-add-to-list-to-zbrain-flow" id="how-to-configure-add-to-list-to-zbrain-flow"></a>

* Provide the key parameter in the **Key** textbox. This identifier is used to retrieve a specific item from the key-value store.
* Provide the corresponding value for the key parameter in the **Value** field. It represents the data item you want to append to the existing list associated with the specified key. Essentially, it’s the content you add to that list within the key-value store.
* Select the storage scope of the value from the **Store Scope** drop-down. It defines where the data is stored (e.g., project scope). “Project” means the stored data is accessible throughout the entire project.

### **Append** <a href="#append" id="append"></a>

Append a value to an existing value in storage.

#### **How to Configure** **Append** **to ZBrain Flow?** <a href="#how-to-configure-append-to-zbrain-flow" id="how-to-configure-append-to-zbrain-flow"></a>

* This identifier is used to retrieve a specific item from the key-value store.
* Provide the corresponding value for the key parameter in the **Value** field. It represents the data item you want to append to the existing list associated with the specified key. Essentially, it’s the content you add to that list within the key-value store.
* Provide the separator between added values in the **Separator** field. Use \n for newlines.
* Select the storage scope of the value from the **Store Scope** drop-down. It defines where the data is stored (e.g., project scope). “Project” means the stored data is accessible throughout the entire project.

### **Get** <a href="#get" id="get"></a>

Retrieve a value from storage.

#### **How to Configure** **Get to ZBrain Flow?** <a href="#how-to-configure-get-to-zbrain-flow" id="how-to-configure-get-to-zbrain-flow"></a>

* Provide the key parameter in the **Key** textbox. This is the identifier used to retrieve a specific item from the key-value store.
* The system uses the **Default Value** provided in this field if the key does not exist.
* If the **Default Value** is left empty and the key is not found, the module might return an error or an empty response.
* Select the storage scope of the value from the **Store Scope** drop-down. It defines where the data is stored (e.g., project scope). “Project” means the stored data is accessible throughout the entire project.

### **Put** <a href="#put" id="put"></a>

Store a value in storage.

#### **How to Configure** **Put to ZBrain Flow?** <a href="#how-to-configure-put-to-zbrain-flow" id="how-to-configure-put-to-zbrain-flow"></a>

* Provide the key parameter in the **Key** textbox. This is the identifier used to retrieve a specific item from the key-value store.
* Provide the corresponding value for the key parameter in the **Value** field. It represents the data item you want to append to the existing list associated with the specified key. Essentially, it’s the content you add to that list within the key-value store.
* Select the storage scope of the value from the **Store Scope** drop-down. It defines where the data is stored (e.g., project scope). “Project” means the stored data is accessible throughout the entire project.

### **Remove** <a href="#remove" id="remove"></a>

Remove a value from storage.

#### **How to Configure** **Remove to ZBrain Flow?** <a href="#how-to-configure-remove-to-zbrain-flow" id="how-to-configure-remove-to-zbrain-flow"></a>

* Provide the key parameter in the **Key** textbox. This is the identifier used to retrieve a specific item from the key-value store.
* Select the storage scope of the value from the **Store Scope** drop-down. It defines where the data is stored (e.g., project scope). “Project” means the stored data is accessible throughout the entire project.

### **Remove from List** <a href="#remove-from-list" id="remove-from-list"></a>

Remove an item from a list in storage.

#### **How to Configure** **Remove from List to ZBrain Flow?** <a href="#how-to-configure-remove-from-list-to-zbrain-flow" id="how-to-configure-remove-from-list-to-zbrain-flow"></a>

* Provide the key parameter in the **Key** textbox. This is the identifier used to retrieve a specific item from the key-value store.
* Select the storage scope of the value from the **Store Scope** drop-down. It defines where the data is stored (e.g., project scope). “Project” means the stored data is accessible throughout the entire project.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.zbrain.ai/zbrain-documentation/zbrain-builder/flows/flow-components/storage.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
