> For the complete documentation index, see [llms.txt](https://frinn.gitbook.io/custom-machinery-1.21/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://frinn.gitbook.io/custom-machinery-1.21/mod-integrations/crafttweaker-deprecated/recipes/item-filter.md).

# Item filter

Use the item filter requirement in a CT recipe.

U**se one of these methods to add an** [Item filter](/custom-machinery-1.21/recipes/requirements/item-filter.md) **requirement to the recipe.**

```javascript
.requireItemFilter(IIngredient ingredient)
.requireItemFilter(IIngredient ingredient, String slot)
```

* The `ingredient` param must be a CT [IIngredient](https://docs.blamejared.com/1.20.2/en/vanilla/api/ingredient/IIngredient).
* The `slot` param must be a valid slot id.

### Example

The following recipe will run only if the filter slot "filter1" is set to a vanilla diamond :&#x20;

```javascript
<recipetype:custommachinery:custom_machine>.create("custommachinery:power_crusher", 20)
.requireItemFilter(<item:minecraft:diamond>, "filter1")
.build();
```
