> This page is for Glide Classic.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://www.glideapps.com/docs/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://www.glideapps.com/docs/_mcp/server.

# Data Structures

> Create and manipulate simple Data Structures

The Data Structures integration allows you to create and manipulate simple data structures. It can be used as both an [Action](/docs/automation/actions), and as a [Computed Column](/docs/automation/computed-columns) in the [Data Editor](/docs/getting-started/introduction-to-the-data-editor). When used in the Data Editor, the new column will contain the result. When used as an Action, a destination column must be provided for the result.

> **Not guaranteed to be stable**
>
> These are not guaranteed to be stable, and they are not atomic, meaning that if multiple users change them at the same time, the result may not be what you expect.

## Adding and Configuring the Action

#### Adding Data Structures Arcade

In Glide, click the **Settings** icon in the upper-right corner.

Navigate to the [Integrations](/docs/automation/integrations) tab and then select **Data Structures**.

Click the **Add to app** button.

## Features

The Data Structures integration has seven features:

1. Add element to set
2. Array to set
3. Empty set
4. Remove all elements
5. Remove element from set
6. Set contains element
7. Set size

> **Note**
>
> All Experimental Data Structures features can be used as Actions, as well as Computed Columns in the Data Editor.

### Add element to set

Adds an element to an existing set. Note that set elements must be unique, so if you add an element to a set that already contains that same element, the set will not change.

The **String Set** and **Element** fields are required. String set must be an array (\["x", "y", "z"]) and Element can be one or more elements (x or \["x", "y"]). If you plan to use the feature as an action, the **String Set Results** column is also required to store the results generated from the action.

### Array to set

Converts an array of values to a set.

The **String Set** field is required and must be an array (\["x", "y", "z"]).  If you plan to use the feature as an action, the **String Set Results** column is also required to store the results generated from the action.

In the example shown below, Array to set is used to create a set containing a list of email addresses from an array.

![A set containing a list of email addresses.](/docs/_fern-img/0e01473211b876c85a10ecf2966d984f0dd3fe2dcda0f9081f98b864c259a7b5.webp)

### Empty set

Creates a new, empty set. The **String Set Results** field is required as a destination column.

### Remove all elements

Remove all elements from an existing set. Results in an empty set.

The **String Set** field is required and must be an array (\["x", "y", "z"]).  If you plan to use the feature as an action, the **String Set Results** column is also required.

### Remove element from set

Remove an element from an existing set.

The **String Set** and **Element** fields are required. String set must be an array (\["x", "y", "z"]) and Element can be one or more elements (x or \["x", "y"]). If you plan to use the feature as an action, the **String Set Results** column is also required.

In the example shown below, **Remove element from set** is used to remove the users email in each row from the set of all email addresses. The result is that each row contains a list of all email addresses except the one in the current row.

![Removing email addresses from a set.](/docs/_fern-img/05dbff8c27743039bbab594da35e24aaeb622feb77da11760d993adf90e7fb97.webp)

### Set contains element

Checks if an existing set contains an element. This feature will return either `true` or `false`.

The **String Set** and **Element** fields are required. String set must be an array (\["x", "y", "z"]) and Element can be one or more elements (x or \["x", "y"]). If you plan to use the feature as an action, the **String Set Results** column is also required.

### Set size

Count the number of elements in a set.

The **String Set** field is required and must be an array (\["x", "y", "z"]). If you plan to use the feature as an action, the **String Set Results** column is also required.

To learn more generally about Integrations in Glide, including how they affect your app's usage, check out our [Introduction to Integrations](/docs/automation/integrations).

## Frequently Asked Questions

#### Is the Data Structures integration free?

Yes! All plans have access to this integration.