# Position

Position requirement is used to make the custom machine recipe work only in some positions of the world.

The position requirement is an **input only** requirement, meaning that you don't have to define the `mode` property.&#x20;

It is used only to restrict or allow the usage of a recipe at certain positions of the world.

The requirement type of position requirement is : "`custommachinery:position"`.

### Properties

The position requirement has 1 mandatory property and 1 optional property.

#### Mandatory property

```json
"type": "custommachinery:position" //Mandatory to define a position requirement.
```

#### Optional property

<details>

<summary>Positions</summary>

#### Name : `positions`

#### Description :&#x20;

An array of position comparators used to check if the machine is in certain positions of the world.

A position comparator is defined by the axis you want to check (x/y/z), the mode of the comparator and the actual position you want to compare.

See all available [comparators](https://frinn.gitbook.io/custom-machinery-1.16/misc/comparator) here.

All the positions comparators must be match for the position to be validated.

#### Default : `empty`

Any positions are allowed.

#### Example :&#x20;

```json
"positions": ["x<<0", "z<<0"]
```

The recipe will run only if the machine is in negative coordinates in both X and Z axis.

</details>

### Example

A position requirement that will allow the recipe to run only if the machine is higher than the 128 y layer :

```json
{
    "type": "custommachinery:position",
    "positions": ["y>>128"]
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://frinn.gitbook.io/custom-machinery-1.16/recipes/requirements/position.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
