---
title: "if · RUAL Documentation"
description: "use mutations X or Y based on a condition."
canonical: https://docs.rual.nl/block-types/mutations/mutations_branch
language: en
---

# if

This block is part of the [`mutations`](https://docs.rual.nl/block-types/mutations) group and was last modified in core [`v10.4.28`](https://docs.rual.nl/core-versions/100428).

use mutations X or Y based on a condition.

- true required `mutations`

- false required `mutations`

- boolean required `condition`

- mutations `mutations`

A typical wiring for [if](https://docs.rual.nl/block-types/mutations/mutations_branch): [set fields](https://docs.rual.nl/block-types/mutations/mutations_set_bp_field_multiple) feeds the `then` pin; [is not empty](https://docs.rual.nl/block-types/condition/condition_not_empty_value) feeds the `condition` pin; [increment by field](https://docs.rual.nl/block-types/mutations/mutations_increment_by_field) feeds the `else` pin; the `mutations` out pin feeds [multiple](https://docs.rual.nl/block-types/mutations/mutations_add).

![Studio canvas example for the if block: typical wiring for if.](https://docs.rual.nl/canvas-examples/mutations_branch.png)

### Commonly used with

In production blueprints, this block is most often wired together with:

- [set fields](https://docs.rual.nl/block-types/mutations/mutations_set_bp_field_multiple): feeds into this block. Generates an array of mutations based on the given filled fields.

- [multiple](https://docs.rual.nl/block-types/mutations/mutations_add): this block feeds into it. combine multiple mutations into one.

- [is not empty](https://docs.rual.nl/block-types/condition/condition_not_empty_value): feeds into this block. checks if the value is filled (not empty).

- [increment by field](https://docs.rual.nl/block-types/mutations/mutations_increment_by_field): feeds into this block.

- [OR](https://docs.rual.nl/block-types/condition/condition_or): feeds into this block. operator for a set of operands is true if and only if one or more of its operands is true.

- [update document](https://docs.rual.nl/block-types/storage/function_update_document_mutations): this block feeds into it. Update document in the given storage and creates a revision for it.

### Version history

Introduced in [`v10.4.28`](https://docs.rual.nl/core-versions/100428).
