Help

How to Get Started with Storage by Zapier

Last updated:

Storage by Zapier allows you to quickly store and retrieve small values of data. With Storage, you will be able to reference data between Zap runs or share data between different Zaps.

Getting Started

To get started with Storage, search for and select the Storage app as an action:

After selecting Storage, you will be presented with a few options for storing and retrieving values:

Setting a Storage Secret

There are no user accounts for Storage. All data stored in Storage is identified and grouped by a Secret Key. You can think of it as a "password" for your Storage data. Secrets should use UUID4 format. We recommend using this Online UUID Generator Tool to generate your secret.

Setting a Value

Values are identified by Keys. A key can be any text less than or equal to 32 characters in length. A value can be any text less than 25,000 characters in length.

Retrieving a Value

Just as you used a key to store your value, you can use the same key to retrieve the value later.

Advanced Storage Operations

There are a number of advanced Storage operations for your Zaps:

  • Get Set a Child Value - Store and retrieve a value based on a key and a child key.
  • Remove Value Child Value - Independent operations to delete values.
  • Set Value If - Only set a value if the current value matches a previous value.
  • Increment Value - Store a number in a value, and increment (or decrement) that number each time by a specified amount.
  • Push Value onto List - Add multiple values to a key in a list.
  • Pop Value from List - Remove a value from a list.
  • Get List Values - Return and format a list of values as a single piece of text based on a format.
  • Get Secret - Get your Storage Secret to use in a Code step with a StoreClient.

How Much Can I Store?

You can have more than one Storage account linked to your Zapier account. You just need to choose a unique Storage Secret for each when adding accounts. Each Storage Secret should us UUID4 format.

Each connected Storage account can store up to 500 keys. Each key must be 32 characters or less.

Each key can store a corresponding value up to 25kB (25,000 bytes) in length.

Storage Lists are stored as JSON blobs in a value, so each list is limited to 25kB (25,000 bytes) in JSON length. This means if you have three list items:

  • hello world
  • glad to meet you
  • what's up?

It will be stored in Storage as a JSON value of that is 56 bytes in length:

{list:[hello world,glad to meet you,what's up?]}

Example Use - Counting Triggers

It’s often beneficial to report on the number of subscribers or number of triggers that have happened during a given day or week. One can use Storage Increment Value to count triggers and a Schedule trigger to send a daily report. This would require 2 Zaps to do:

Zap 1: Increment

You can attach a storage action to increment a value to any Zap that you wish to track:

Increment

Zap 2: Report

The Zap above will increment the value, now we need a step to pull this data out and to send along as a notification. You would need to set up a trigger to fire every day, the Schedule by Zapier app is perfect for this. Then you need to pull the value from Storage:

pull_value

Next, you will wish to delete the value to reset this counter, so you can start a 0 the next day:

clear_value

Finally, you can send the value that you pulled during the Pull Value step to whatever action that we support.

Example Use - Coupons

You can use Storage to send and keep track of the coupons that you send to customers. This would require 2 Zaps to do:

Zap 1: Add Coupon Codes to the Storage App

In this example, we are populating the Storage with coupon codes from a Google Sheet trigger that fires whenever a new row is added to the sheet:

add_coupons

Zap 2: Pull Coupon Codes from Storage and Send Them to Customers

Now that we have our Storage loaded up with coupon codes to use, you can invoke storage as part of a 2nd zap that you use to deliver these codes one at a time. In this example, we are triggering off of a MailChimp New Subscriber, pulling the coupon from Storage, and then sending it to the customer in an email:

send_coupon

Example Use - Child Values

Storage by Zapier supports child values. Child values are nested values of data. This is useful if you want to be able to retrieve multiple related values at a time. Say, for instance, you’re storing information about “User_123”, including their name and email address. You could store this in a child value to be able to easily retrieve both the name and email address in one go.

To Set a Child Value, you would use the action of the same name in the Storage app:

set_child

You can then either pull all the Child Values for a key using the "Get Value' search action:

get_value

Or you can pull a single value using the "Get Child Values" search action. In this case, we are pulling the email address for this value:

get_child

Example Use - Round Robin

Round Robin is a term used when you want to evenly distribute items to everyone in the group. This means that everyone will get a single "thing" before anyone gets a second "thing". This helps to evenly distribute actions over a group.

There are multiple ways to do this with Zapier. The easiest and most reliable method uses a combination of Storage by Zapier along with the Formatter by Zapier app.

This method relies on using a Spreadsheet-like Formula in our Formatter tool. Specifically, the Modulo function.

The first step would be to use the Increment Value action of Storage to set up a counter that we can increment every time this Zap runs:

increment_start

Next up, we would use the counter to perform the "modulo" of the number of items in the list. The number after the comma is however many items you want to round robin.

Using the Spreadsheet Formula, we can get which item to select. So, for a 4-item list, we would use this formula in the Formatter step:

modulo

Then, we use the modulo value for selecting which item in the list to select using the Formatter's "Pick from List" action. When the first number is 1, it outputs 1. When it's the same as the second number, it outputs 0.

picked_from_list

In Pick From List, the number 0 means the first option in the list. Because the modulo outputs 0, this works great!

Finally, we would then use the value that we picked from the last action:

send_value

Example Use - Round Robin with Paths

NOTE: Paths are available for accounts on the Professional, Professional Plus, and Teams plans.

If you’re on a Free or Starter plan, you can try Paths for free for 7 days. Just add a Paths step to a Zap and you can start your free trial from the editor.

In the event that you want to take different actions entirely (or have an app like Google Sheets where custom values can't easily be used) you can use Paths. For the above example, you could set up one path per possible Formatter output, then add the action(s) you need within those Paths.

If we have 4 Paths, you could use Formatter's 'Pick from List' function to output one of four paths:

lookup-table

Then set up one path for each of those possible outputs:

4-paths

Round-Robin with 2 Paths

Here's an approach you can take if you're trying to do something like divvy up leads between 2 agents, offices, etc. Since you've only got 2 possible paths, we can use the 'Increment Value' option in the Storage app followed by a Spreadsheet-Style Formula in the Formatter app to determine whether the value is even. If it is, output "Path A" and if it's not then output "Path B".

Storage — Increment Value

storage-increment

Formatter — Spreadsheet-Style Formula

is-it-even

Which Path?

Much like the example above, you would add rules to your paths to only continue if the output of that Formatter step matches your condition. In this case, you would only need 2 paths:

two-paths


Need More Help?

Contact Support

Tell us about your problem, and we’ll find you a solution or you can email support.
Get Help

Hire an Expert

We have a directory of professionals across the globe who are ready to help.
Find a Zapier Expert

Zapier Community

Connect with other Zapier users and industry professionals to get help crafting the perfect workflow.
Check out the community