# Switch Component

This section documents the configuration attributes for each built-in switch model. Use these pages when you are writing a JSON configuration, debugging a config validation error, or looking up the default for a specific attribute.

- For how to add and configure a switch component on your machine, see [Switch](https://docs.viam.com/hardware/common-components/add-a-switch/).
- For the methods you call on a switch in code, see the [Switch API reference](https://docs.viam.com/reference/apis/components/switch/).
- For switch models outside the built-in set, search for `switch` in the [Viam registry](https://app.viam.com/registry). Each registry module’s configuration is documented in its own README on its registry page.

## Built-in models

The following switch models ship with `viam-server`:

| Model | Description |
| --- | --- |
| [`fake`](https://docs.viam.com/reference/components/switch/fake/) | A model used for testing, with no physical hardware.
