# `apis`

## Introduction

If your project contains multiple APIs, the `apis` configuration section allows you to set up different rules and settings for different APIs.

## Options

| Option | Type | Description |
|  --- | --- | --- |
| `{name}` | [API object](#api-object) | **REQUIRED**. Each API needs a name. Supports alphanumeric characters and underscores. |


### API object

| Option | Type | Description |
|  --- | --- | --- |
| root | string | **REQUIRED**. Path to the root API description file. |
| rules | [Rules object](/docs/cli/configuration/reference/rules) | Additional rule configuration for this API. |
| decorators | [Decorators object](/docs/cli/configuration/reference/decorators) | Additional decorator configuration for this API. |
| preprocessors | [Decorators object](/docs/cli/configuration/reference/decorators) | Preprocessors run before linting, and follow the same structure as decorators. We recommend the use of decorators over preprocessors in most cases. |
| output | Output file path | When running `bundle` without specifying an API, the bundled API description is saved to this location. |


## Examples

The following example shows a simple `redocly.yaml` configuration file with settings for multiple APIs.


```yaml
apis:
  orders:
    root: orders/openapi.yaml
    rules:
      tags-alphabetical: error
      operation-operationId-unique: error
      spec-strict-refs: error
  newsletter:
    root: newsletter/openapi.yaml
    rules:
      info-contact: off
      operation-summary: off
```

The following example shows `redocly.yaml` configuration file with settings for multiple APIs outputs.


```yaml
apis:
  main@v1:
    root: openapi-v1.yaml
    output: v1/bundled.yaml
  main@v2:
    root: openapi-v2.yaml
    output: v2/bundled.yaml
```

When running `redocly bundle` with this config, the bundled API descriptions are saved to the corresponding location.

## Related options

- [extends](/docs/cli/configuration/reference/extends) sets the base ruleset to use.
- [rules](/docs/cli/configuration/reference/rules) settings define the linting rules that are used.
- [decorators](/docs/cli/configuration/reference/decorators) offer some transformations for your OpenAPI documents.


## Resources

- More information and examples of [per-API configuration](/docs/cli/configuration/apis).
- List of [built-in rules](/docs/cli/rules/built-in-rules).