# `alternates` Alternates can approve a scope but aren't requested automatically. Use them for backups, managers, or people in other time zones. ```toml [[scopes]] name = "app" paths = ["app/*"] reviewers = ["dev1"] alternates = ["admin1", "emeritus1"] require = 1 ``` Aliases and [teams](../../teams.md) work in `alternates` the same way they do in `reviewers`. An alternate also gets the scope's [`author_value`](author-value.md) on their own PRs, the same as a reviewer. The `"*"` wildcard is not supported in `alternates` — to accept reviews from anyone, put it in [`reviewers`](reviewers.md) instead. ## Someone in both lists To stop one person on a team from being requested, put their username in `alternates`. They can still approve. ```toml [[scopes]] name = "backend" paths = ["backend/**/*"] reviewers = ["@acme/backend"] alternates = ["bob"] # bob can approve, but is never requested request = 1 ``` When someone is in both lists, the list that names them more directly is the one they're in. A username beats an alias, and an alias beats a team. If it's a tie, `reviewers` wins. So someone you name in `reviewers` can still be requested when an alias in `alternates` includes them too: ```toml [aliases] backend = ["alice", "bob", "carol"] [[scopes]] name = "api-spec" paths = ["api/spec/**/*"] reviewers = ["alice"] alternates = ["$backend"] # alice is requested; anyone in $backend can approve request = 1 ``` To keep the same people from being requested in several scopes, list their usernames in an alias and use it in each scope's `alternates`. A team in `alternates` ties with a team in `reviewers`, so its members can still be requested. A team inside an alias counts as a team too. Write the usernames instead.