# Requirements Guide

Requirements is a brand new feature as of 1.1.0, and will allow you to define some requirements that are required prior to allowing a user to read a announcement.

There are multiple requirement-types as of right now, which some of these are:

{% tabs %}
{% tab title="Permission Requirement" %}
The value in this sense acts like the required permission.&#x20;

Player requires the permission defined in value if this requirement is created and set.
{% endtab %}

{% tab title="OP/Operator Requirement" %}
If yes, requirement is that operator mode is enabled for the user.

If no, requirement is that operator mode is disabled for the user.

If not defined, no specific requirement about this.
{% endtab %}
{% endtabs %}

Here is a requirement configuration example, it is set directly in your broadcasts configuration file.

```yaml
broadcasts: 
   default: 
      requirements: # must be just like this, a section identifier
         operator-required: # can be anything, its just a unique identifier
            type: OPERATOR # the type, must be OPERATOR or PERMISSION
            value: yes # the value, in OPERATOR - 'yes' or 'no' - in PERMISSION - 'permission.here'
      messages: 
      - '&8&m----------------------------------------'
      - '&6[*] This server is running &6Broader&7, a'
      - '&6[*] plugin that allows you to broadcast'
      - '&6[*] messages to your server.'
      - '&c[!] Remove this in the broadcasts.yml file!'
      - '&8&m----------------------------------------'
      permission: 
      interval: 60
```

You can have as many requirements as you wish. If you encounter issues with requirements, please contact us at Discord!
