--- 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`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### Class variables

  `var credentials -> Optional[str] = None`
  `var identifier -> Optional[str] = None`
  `var password -> Optional[str] = None`
`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`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### Class variables

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

  Settings related to DMAP.

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

  Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### Class variables

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

  Information related settings.

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

  Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### Class variables

  `var device_id -> str = FF:70:79:61:74:76`
  `var mac -> pydantic_extra_types.mac_address.MacAddress = 02:70:79:61:74:76`
  `var model -> str = iPhone10,6`
  `var name -> str = pyatv`
  `var os_build -> str = 18G82`
  `var os_name -> str = iPhone OS`
  `var os_version -> str = 14.7.1`
`class MrpSettings (**data: Any)`

  Settings related to MRP.

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

  Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### Class variables

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

  Container for protocol specific settings.

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

  Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### 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`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic.main.BaseModel

  ### Class variables

  `var control_port -> int = 0`

    Server side (UDP) port used by control server.

    Set to 0 to use random free port.

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

    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 = 0`

    Server side (UDP) port used by timing server.

    Set to 0 to use random free port.

`class Settings (**values: Any)`

  Settings container class.

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

  Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

  `__init__` uses `__pydantic_self__` instead of the more common `self` for the first arg to allow `self` as a field name.

  Browse git

  ### Ancestors

  - pydantic_settings.main.BaseSettings
  - pydantic.main.BaseModel

  ### Class variables

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