---
schema_version: "1"
id: a24b8258d47e46b955f27a8c279096aa9baa2b6e53e32e4e9950bf32470ef0be
title: Object Store v2 Overview
collection: mulesoft
version: current
locale: en-us
portal_url: https://docs.salesforce.com/mulesoft/current/en-us/object-store/index.md
canonical_url: https://docs.mulesoft.com/object-store/
source_site: docs.mulesoft.com
content_type: documentation
content_hash: ca8b371ecd976a2a5d57d0580cea6899ac1b416a081f827a1eac4631ab2e61a9
description: MuleSoft Documentation Site
latest: true
---
---
product: Object Store
---

# Object Store v2 Overview

> For the full documentation index, see: https://docs.mulesoft.com/llms.txt

Object Store v2 lets CloudHub applications store data and states across batch processes, Mule
components and applications, from within an application or by using the Object Store REST API.

You can select Object Store v2 as the implementation for Mule 4 in CloudHub by checking the **Object
Store V2** checkbox in Runtime Manager at deployment time.

See the [FAQ](https://docs.mulesoft.com/object-store/osv2-faq) for Object Store information.

![A diagram illustrating how Mule and user-defined components connect to a central data store](/mulesoft/current/en-us/object-store/_images/osv2-architecture.png)

On-premises Mule applications can access Object Store v2 only via the Object Store REST API.

You can configure a Mule app to use the Object Store REST API to store and retrieve values from an
object store in another Mule app.

## Object Store v2 Features

- Supports both static and rolling [TTL](#time-to-live) (time to live) for data persistence.

- Supports using the Connected Apps feature to authenticate with Anypoint Platform using APIs.

  See [Configuring Connected Apps](https://docs.mulesoft.com/object-store/osv2-connected-apps).

- Allows for an unlimited number of entries. There is no limit on the total size of v2
  object-stores.

- Stores values up to 10 MB (when Base64 encoded) in size. You can estimate base64 size of a payload
  as follows: CEILING(base10size \* 1024/3) \* 4, where base10size is object size in bytes. +
  Example: A base10 payload size of 7.5 MB converts to 10.24 MB base64.

- Is available in all supported regions and availability zones within each region.

- Is co-located in the same region as your workers. For example, workers hosted in Singapore would
  use Object Store v2 hosted in Singapore.

- Provides a Mule connector and REST interface for access by external applications.

- Provides end-to-end secure TLS-transport.

- Encrypts persistent storage to FIPS 140-2 compliant standards.

You can use the existing Object Store connector to write to the object store, regardless of whether
you are using v1 or v2.

The Object Store v2 user interface is available in the Anypoint Platform > Runtime Manager.

## Object Store v2 Permissions

<table><colgroup><col> <col> <col></colgroup><thead><tr><th>Required Permissions</th><th>Grants the Ability to</th><th>Notes</th></tr></thead><tbody><tr><td><div><div><p>Manage stores</p></div></div></td><td><div><div><p>Create, read, update, and delete stores.</p></div></div></td><td><div></div></td></tr><tr><td><div><div><p>Manage stores data</p></div></div></td><td><div><div><p>Perform all store operations including data, partition, and confirmation APIs.</p></div></div></td><td><div></div></td></tr><tr><td><div><div><p>View stores</p></div></div></td><td><div><div><p>Read store details.</p></div></div></td><td><div></div></td></tr><tr><td><div><div><p>Manage store clients</p></div></div></td><td><div><div><p>Manage all clients of a cloud store.</p></div></div></td><td><div><div><p>This permission doesn’t apply to Object Store v2.</p></div></div></td></tr><tr><td><div><div><p>View store clients (object store only)</p></div></div></td><td><div><div><p>View all clients of a cloud store.</p></div></div></td><td><div><div><p>This permission doesn’t apply to Object Store v2.</p></div></div></td></tr></tbody></table>

To assign user permissions, follow the steps in
[Grant Permissions to Users](https://docs.mulesoft.com/access-management/users#grant-user-permissions).

To use teams to assign permissions, follow the steps in
[Using Teams to Manage User Permissions](https://docs.mulesoft.com/access-management/teams).

## Time to Live (TTL)

The TTL can be either [_rolling_](#rolling-ttl) or [_static_](#static-ttl).

The `entryTtl` value, specified in the global configuration parameters for the connector, determines
when to evict key-value pairs from the store.

If the app doesn’t specify a value for `entryTtl`, the default value depends on the Mule version for
the app:

- Mule versions 4.2.1 and later:

  Object stores have a rolling TTL by default.

  Accessing the data during the last seven days of a 30-day window extends the TTL for another 30
  days.

- Mule versions earlier than 4.2.1:

  Object stores have a static TTL of 30 days by default.

  Updating the data (for example, by overwriting the key) resets the TTL.

To configure TTL, see
[Configure a Custom Time to Live Period](https://docs.mulesoft.com/object-store/osv2-guide#configure-a-custom-time-to-live-period).

### Rolling TTL

When you configure rolling TTL, accessing the data during the last seven days of a 30-day window
extends the TTL for another 30 days.

Rolling TTL applies to individual key-value pairs. Each key in a partition tracks its own TTL
window. Accessing one key doesn’t extend the TTL for other keys in the same partition, and keys
expire independently based on their last access time.

If you don’t access the data during that time, the object store evicts the data in the next seven to
30 days from the most recent expiration date.

The Object Store Connector operations that extend TTL are:

<table><colgroup><col> <col></colgroup><thead><tr><th>Extends TTL</th><th>Doesn’t Extend TTL</th></tr></thead><tbody><tr><td><p>Retrieve</p></td><td><p>Contains</p></td></tr><tr><td><p>Retrieve All</p></td><td><p>Clear</p></td></tr><tr><td><p>Retrieve All Keys</p></td><td><p>Remove</p></td></tr><tr><td><p>Store</p></td><td></td></tr></tbody></table>

- The minimum rolling TTL is 30 days (2592000 seconds).

- The maximum rolling TTL is unlimited if you continue to access the data in the last seven days of
  the 30-day window.

### Static TTL

When you configure static TTL, the value of `entryTtl` determines when to evict the data:

- The minimum static TTL is one second.

- The maximum (and default) static TTL is 2592000 seconds (30 days).

If the `entryTtl` value is less than one second or greater than 30 days, TTL is set to the maximum
value of 2592000 seconds (30 days) without returning an error.

Updating the data (for example, by overwriting the key) resets the TTL.

## Upgrade to Object Store v2

- Back up all the data in your current object store.

  > [!IMPORTANT] Data doesn’t carry over from Object Store v1 to v2. Any data in a v1 object store,
  > including watermarks and other Mule component states, doesn’t move to v2. If you revert to
  > Object Store v1, your Object Store v1 data is still there.

- To access Object Store v2, in Anypoint Platform, click **Runtime Manager**. Click the name of your
  application to view the application’s dashboard, and click **Manage Application**. In the
  **Settings** screen, click **Use Object Store v2**. Accept the prompt. The **Application Data**
  section of the Runtime Manager’s dashboard changes to **Object Store**.

## Object Store Notes

- For Object Store v2 region availability see
  [Where is Object Store v2 available?](https://docs.mulesoft.com/object-store/osv2-faq#where-is-object-store-v2-available)

- The Object Store Connector works for both Object Store version 1 and 2.

- Object Store v2 enforces a maximum data persistence of 30 days from time of creation.

- Premium add-on customers are allowed up to 100 TPS per app.

  The free Object Store v2 limits usage to 10 transactions per second (TPS) per application. To
  upgrade to premium and increase your TPS limit, contact the MuleSoft account team.

- For CloudHub applications using Mule 4, if you choose Object Store v2, Object Store v2 overrides
  the `_defaultPersistentObjectStore` object store.

- Using Object Store v2 with multi-worker CloudHub applications might result in data discrepancies
  or key clashes.

  This behavior occurs because the "Distributed Locking" feature isn’t available in CloudHub and
  CloudHub 2.0 when working with Object Store v2. As a result, under certain conditions, when
  multiple Mule components attempt to update Object Store v2 tables simultaneously, such calls may
  fail.

  To avoid these issues, use a distributed key-value store as a lock to synchronize access to Object
  Store v2. For information about distributed locking in Mule runtime engine, see
  [Distributed Locking](https://docs.mulesoft.com/mule-runtime/latest/distributed-locking).

## Object Store Features by Control Plane

<table><colgroup><col> <col> <col></colgroup><thead><tr><th>Object Store Feature</th><th>US Cloud and EU Cloud</th><th>Canada Cloud, Japan Cloud, India Cloud, Australia Cloud, United Kingdom Cloud</th></tr></thead><tbody><tr><td><div><div><p></p></div><div><ul><li><p><a href="https://docs.mulesoft.com/object-store/osv2-connected-apps">Connected Apps</a></p></li></ul></div></div></td><td><div><div><p>Yes</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr><tr><td><div><div><p></p></div><div><ul><li><p><a href="https://docs.mulesoft.com/cloudhub/deploying-to-cloudhub">CloudHub 1.0 Deployments</a></p></li></ul></div></div></td><td><div><div><p>Yes</p></div></div></td><td><div><div><p>No</p></div></div></td></tr><tr><td><div><div><p></p></div><div><ul><li><p><a href="https://docs.mulesoft.com/object-store/osv2-usage#access-os-usage-reports">Usage Reports</a> (Usage)</p></li></ul></div></div></td><td><div><div><p>No</p></div></div></td><td><div><div><p>Yes</p></div></div></td></tr></tbody></table>

### Limitations by Control Plane

All Object Store v2 features are supported on [Canada Cloud](https://ca1.platform.mulesoft.com),
[Japan Cloud](https://jp1.platform.mulesoft.com), [India Cloud](https://in1.platform.mulesoft.com),
[Australia Cloud](https://au1.platform.mulesoft.com), and
[United Kingdom Cloud](https://gb1.platform.mulesoft.com) with the following exceptions:

<table><colgroup><col> <col></colgroup><thead><tr><th>Limitation</th><th>Canada Cloud, Japan Cloud, India Cloud, Australia Cloud, United Kingdom Cloud</th></tr></thead><tbody><tr><td><div><div><p><strong><a href="https://docs.mulesoft.com/cloudhub/deploying-to-cloudhub">CloudHub 1.0 Deployments</a></strong></p></div></div></td><td><div><div><p>Not supported. Deploy apps to <a href="https://docs.mulesoft.com/cloudhub-2/ch2-shared-space-about">CloudHub 2.0 shared spaces</a> or <a href="https://docs.mulesoft.com/runtime-fabric/latest/">Anypoint Runtime Fabric</a>.</p></div></div></td></tr></tbody></table>

For information about the regions where Object Store v2 is available, see
[Object Store v2 Regions](https://docs.mulesoft.com/object-store/osv2-faq#osv2-regions).

For information about Anypoint Platform on other control planes, see
[Salesforce Hyperforce Overview](https://docs.mulesoft.com/hyperforce/).

## See Also

- [Salesforce Hyperforce Overview](https://docs.mulesoft.com/hyperforce/)

- [Permissions by Product in Anypoint Platform](https://docs.mulesoft.com/access-management/permissions-by-product)

- [Object Store v2 Release Notes](https://docs.mulesoft.com/release-notes/object-store/anypoint-osv2-release-notes)

- [Object Store Connector for Mule 4](https://docs.mulesoft.com/object-store-connector/latest/)

- [Object Store Watermarks](https://blogs.mulesoft.com/dev-guides/how-to-tutorials/data-synchronizing-made-easy-with-mule-watermarks/)
