# Bulk Check/Uncheck Items

Use `toggleShoppingListItems`to simultaneously make a bulk change to the isDone status of many shopping list items.

Please note that this mutation will automatically toggle the isDone value. You don't need to pass a true or false value. In other words, if the value is currently false, then calling this mutation will make it true and vice versa.

#### Available Arguments

| Arguments     | Type   | Description                                     | Required? |
| ------------- | ------ | ----------------------------------------------- | --------- |
| `itemIds`     | `UUID` | List of list item ids.                          | Yes       |
| `isAggregate` | `Bool` | **True** if the id is from the aggregation view | Yes       |

### Example

{% tabs %}
{% tab title="Mutation" %}

```graphql
mutation toggleShoppingListItems {
  toggleShoppingListItems(itemIds: [
    "11e0f56f-de4f-43e9-98b6-3ec0e70b5adc", 
    "105be039-9693-4afd-992a-33ff29754cdc"], 
    isAggregate: false) 
  {
    success message
  }
}
```

{% endtab %}

{% tab title="Response" %}

```graphql
{
  "data": {
    "toggleShoppingListItem": {
      "success": true
    }
  }
}
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}
The isAggregate value must be true if the itemID comes from the shopping list aggregate.
{% endhint %}
