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

# Labels

> Create and delete the shared labels used to tag and group procedures, runs, purchases, issues, and other records across ION.

**Labels** are shared tags you apply across ION to group related records. The same label library is shared by every object type, so a single label can tie together procedures, runs, purchases, and issues. Use them to slice work by program, customer, priority, or any cross-cutting theme your team tracks.

## Create a label

You create labels inline from any record that supports them, such as a procedure, run, purchase, or issue:

1. On the record, click **Labels** (or **Add labels**).
2. In the picker, type the label name in the **Search or create labels...** box.
3. If no matching label exists, click **Create "{name}"**.

ION creates the label, adds it to the shared library for every object type, and applies it to the current record. To reuse it elsewhere, open the labels picker on another record and search for it.

## Delete a label

Deleting a label removes it from all records across ION. Label deletion is only available through the API; there is no UI option yet.

[Watch the walkthrough](https://www.loom.com/share/680ada89440e4771812f781c0153ad73?sid=a4850b80-4f1e-48f9-9f5b-481047d5ac94)

1. Query for the label to get its `id` and `_etag`. Replace `<your label here>` with the label value.

```graphql theme={null}
{
  labels(filters: {value: {eq: <your label here>}}) {
    edges {
      node {
        id
        _etag
        value
      }
    }
  }
}
```

2. Delete the label using the `id` and `_etag` from the previous query.

```graphql theme={null}
mutation DeleteLabel($id: ID!, $etag: String!) {
  deleteLabel(id: $id, etag: $etag) {
    id
  }
}
```

Variables:

```json theme={null}
{
  "id": "<id from previous step>",
  "etag": "<etag from previous step>"
}
```
