--- layout: template title: API - pyatv.settings permalink: /api/settings/ link_group: api ---

# Module `pyatv.settings`

Settings for configuring pyatv.

Browse git

## Classes

`class AirPlaySettings (**data: Any)`

  Settings related to AirPlay.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var credentials -> Optional[str]`
  `var identifier -> Optional[str]`
  `var password -> Optional[str]`
`class AirPlayVersion (value, names=None, *, module=None, qualname=None, type=None, start=1)`

  AirPlay version to use.

  Browse git

  ### Ancestors

  - builtins.str
  - enum.Enum

  ### Class variables

  `var Auto = auto`
  `var V1 = 1`
  `var V2 = 2`
`class CompanionSettings (**data: Any)`

  Settings related to Companion.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var credentials -> Optional[str]`
  `var identifier -> Optional[str]`
`class DmapSettings (**data: Any)`

  Settings related to DMAP.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var credentials -> Optional[str]`
  `var identifier -> Optional[str]`
`class InfoSettings (**data: Any)`

  Information related settings.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var device_id -> str`
  `var mac -> str`
  `var model -> str`
  `var name -> str`
  `var os_build -> str`
  `var os_name -> str`
  `var os_version -> str`

  ### Static methods

  `def mac_validator(mac: str) -> str`

    Validate MAC address to be correct.

    Browse git
`class MrpSettings (**data: Any)`

  Settings related to MRP.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var credentials -> Optional[str]`
  `var identifier -> Optional[str]`
`class ProtocolSettings (**data: Any)`

  Container for protocol specific settings.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var airplay -> AirPlaySettings`
  `var companion -> CompanionSettings`
  `var dmap -> DmapSettings`
  `var mrp -> MrpSettings`
  `var raop -> RaopSettings`
`class RaopSettings (**data: Any)`

  Settings related to RAOP.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var control_port -> int`

    Server side (UDP) port used by control server.

    Set to 0 to use random free port.

  `var credentials -> Optional[str]`
  `var identifier -> Optional[str]`
  `var password -> Optional[str]`
  `var protocol_version -> AirPlayVersion`

    Protocol version used.

    In reality this corresponds to the AirPlay version used. Set to 0 for automatic mode (recommended), or 1 or 2 for AirPlay 1 or 2 respectively.

  `var timing_port -> int`

    Server side (UDP) port used by timing server.

    Set to 0 to use random free port.

`class Settings (**data: Any)`

  Settings container class.

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  Browse git

  ### Ancestors

  - pydantic.v1.main.BaseModel
  - pydantic.v1.utils.Representation

  ### Class variables

  `var info -> InfoSettings`
  `var protocols -> ProtocolSettings`