# argument-description-defined

Source: https://apigenie.pl/docs/linter/graphql/rules/argument-description-defined

This rule checks that the arguments of fields and directives have a description.

## Rule Details

Descriptions are part of the schema: introspection serves them to GraphiQL, IDEs, documentation generators and code generators. A missing or blank description is reported; type extensions have no descriptions and are not checked.

## Configuration

This rule has no options.

```yaml
version: "1.0"
commands:
  lint:
    graphql:
      rules:
        argument-description-defined: warning
```

The rule can be disabled for a node and everything nested in it with an `# apigenie-lint-disable argument-description-defined` comment on the node, or for a whole file with the comment at the top of the file, separated from the first definition by a blank line. It applies to definitions.

## Examples

**Good**.

```graphql
type Query {
  user("The identifier of the user." id: ID!): User
}
```

**Bad**. The linter reports `Argument 'Query.user(id:)' should have a description`.

```graphql
type Query { user(id: ID!): User }
```
