

foursquare:
  checkin:
    description: Check a user into a Foursquare venue

    fields:
      venueId:
        description: The Foursquare venue where the user is checking in. [Required]
        example: IHR8THISVNU

      eventId:
        description: The event the user is checking in to. [Optional]
        example: UHR8THISVNT

      shout:
        description: A message about your check-in. The maximum length of this field is 140 characters. [Optional]
        example: There are crayons! Crayons!

      mentions:
        description: Mentions in your check-in. This parameter is a semicolon-delimited list of mentions. A single mention is of the form "start,end,userid", where start is the index of the first character in the shout representing the mention, end is the index of the first character in the shout after the mention, and userid is the userid of the user being mentioned. If userid is prefixed with "fbu-", this indicates a Facebook userid that is being mention. Character indices in shouts are 0-based. [Optional]
        example: 5,10,HZXXY3Y;15,20,GZYYZ3Z;25,30,fbu-GZXY13Y

      broadcast:
        description: "Who to broadcast this check-in to. Accepts a comma-delimited list of values: private (off the grid) or public (share with friends), facebook share on facebook, twitter share on twitter, followers share with followers (celebrity mode users only), If no valid value is found, the default is public. [Optional]"
        example: public,twitter

      ll:
        description: Latitude and longitude of the user's location. Only specify this field if you have a GPS or other device reported location for the user at the time of check-in. [Optional]
        example: 33.7,44.2

      llAcc:
        description: Accuracy of the user's latitude and longitude, in meters. [Optional]
        example: 1

      alt:
        description: Altitude of the user's location, in meters. [Optional]
        example: 0

      altAcc:
        description: Vertical accuracy of the user's location, in meters.
        example: 1

homematic:
  virtualkey:
    description: Press a virtual key from CCU/Homegear or simulate keypress

    fields:
      address:
        description: Address of homematic device or BidCoS-RF for virtual remote
        example: BidCoS-RF

      channel:
        description: Channel for calling a keypress
        example: 1

      param:
        description: Event to send i.e. PRESS_LONG, PRESS_SHORT
        example: PRESS_LONG

      proxy:
        description: (Optional) for set a hosts value
        example: Hosts name from config

  set_var_value:
    description: Set the name of a node.

    fields:
      entity_id:
        description: Name(s) of homematic central to set value
        example: 'homematic.ccu2'

      name:
        description: Name of the variable to set
        example: 'testvariable'

      value:
        description: New value
        example: 1

  set_dev_value:
    description: Set a device property on RPC XML interface.

    fields:
      address:
        description: Address of homematic device or BidCoS-RF for virtual remote
        example: BidCoS-RF

      channel:
        description: Channel for calling a keypress
        example: 1

      param:
        description: Event to send i.e. PRESS_LONG, PRESS_SHORT
        example: PRESS_LONG

      proxy:
        description: (Optional) for set a hosts value
        example: Hosts name from config

      value:
        description: New value
        example: 1

  reconnect:
    description: Reconnect to all Homematic Hubs.

microsoft_face:
  create_group:
    description: Create a new person group.

    fields:
      name:
        description: Name of the group
        example: 'family'

  delete_group:
    description: Delete a new person group.

    fields:
      name:
        description: Name of the group
        example: 'family'

  train_group:
    description: Train a person group.

    fields:
      group:
        description: Name of the group
        example: 'family'

  create_person:
    description: Create a new person in the group.

    fields:
      name:
        description: Name of the person
        example: 'Hans'

      group:
        description: Name of the group
        example: 'family'

  delete_person:
    description: Delete a person in the group.

    fields:
      name:
        description: Name of the person
        example: 'Hans'

      group:
        description: Name of the group
        example: 'family'

  face_person:
    description: Add a new picture to a person.

    fields:
      person:
        description: Name of the person
        example: 'Hans'

      group:
        description: Name of the group
        example: 'family'

      camera_entity:
        description: Camera to take a picture
        example: camera.door

verisure:
  capture_smartcam:
    description: Capture a new image from a smartcam.

    fields:
      device_serial:
        description: The serial number of the smartcam you want to capture an image from.
        example: '2DEU AT5Z'

alert:
  turn_off:
    description: Silence alert's notifications.

    fields:
      entity_id:
        description: Name of the alert to silence.
        example: 'alert.garage_door_open'

  turn_on:
    description: Reset alert's notifications.

    fields:
      entity_id:
        description: Name of the alert to reset.
        example: 'alert.garage_door_open'

  toggle:
    description: Toggle alert's notifications.

    fields:
      entity_id:
        description: Name of the alert to toggle.
        example: 'alert.garage_door_open'

hdmi_cec:
  send_command:
    description: Sends CEC command into HDMI CEC capable adapter.

    fields:
      raw:
        description: 'Raw CEC command in format "00:00:00:00" where first two digits are source and destination, second byte is command and optional other bytes are command parameters. If raw command specified, other params are ignored.'
        example: '"10:36"'

      src:
        desctiption: 'Source of command. Could be decimal number or string with hexadeximal notation: "0x10".'
        example: '12 or "0xc"'

      dst:
        description: 'Destination for command. Could be decimal number or string with hexadeximal notation: "0x10".'
        example: '5 or "0x5"'

      cmd:
        description: 'Command itself. Could be decimal number or string with hexadeximal notation: "0x10".'
        example: '144 or "0x90"'

      att:
        description: Optional parameters.
        example: [0, 2]

  update:
    description: Update devices state from network.

  volume:
    description: Increase or decrease volume of system.

    fields:
      up:
        description: Increases volume x levels.
        example: 3
      down:
        description: Decreases volume x levels.
        example: 3
      mute:
        description: Mutes audio system. Value should be on, off or toggle.
        example: "toggle"

  select_device:
    description: Select HDMI device.
    fields:
      device:
        description: Address of device to select. Can be entity_id, physical address or alias from confuguration.
        example: '"switch.hdmi_1" or "1.1.0.0" or "01:10"'

  power_on:
    description: Power on all devices which supports it.

  standby:
    description: Standby all devices which supports it.

ffmpeg:
  start:
    description: Send a start command to a ffmpeg based sensor.
    fields:
      entity_id:
        description: Name(s) of entities that will start. Platform dependent.
        example: 'binary_sensor.ffmpeg_noise'

  stop:
    description: Send a stop command to a ffmpeg based sensor.
    fields:
      entity_id:
        description: Name(s) of entities that will stop. Platform dependent.
        example: 'binary_sensor.ffmpeg_noise'

  restart:
    description: Send a restart command to a ffmpeg based sensor.
    fields:
      entity_id:
        description: Name(s) of entities that will restart. Platform dependent.
        example: 'binary_sensor.ffmpeg_noise'

logger:
  set_level:
    description: Set log level for components.

hassio:
  host_reboot:
    description: Reboot host computer.

  host_shutdown:
    description: Poweroff host computer.

  host_update:
    description: Update host computer.
    fields:
      version:
        description: Optional or it will be use the latest version.
        example: '0.3'

  supervisor_update:
    description: Update HassIO supervisor.
    fields:
      version:
        description: Optional or it will be use the latest version.
        example: '0.3'

  supervisor_reload:
    description: Reload HassIO supervisor addons/updates/configs.

  homeassistant_update:
    description: Update HomeAssistant docker image.
    fields:
      version:
        description: Optional or it will be use the latest version.
        example: '0.40.1'

  addon_install:
    description: Install a HassIO docker addon.
    fields:
      addon:
        description: Name of addon.
        example: 'smb_config'
      version:
        description: Optional or it will be use the latest version.
        example: '0.2'

  addon_uninstall:
    description: Uninstall a HassIO docker addon.
    fields:
      addon:
        description: Name of addon.
        example: 'smb_config'

  addon_update:
    description: Update a HassIO docker addon.
    fields:
      addon:
        description: Name of addon.
        example: 'smb_config'
      version:
        description: Optional or it will be use the latest version.
        example: '0.2'

  addon_start:
    description: Start a HassIO docker addon.
    fields:
      addon:
        description: Name of addon.
        example: 'smb_config'

  addon_stop:
    description: Stop a HassIO docker addon.
    fields:
      addon:
        description: Name of addon.
        example: 'smb_config'

eight_sleep:
  heat_set:
    description: Set heating level for eight sleep.
    fields:
      entity_id:
        description: Entity id of the bed state to adjust.
        example: 'sensor.eight_left_bed_state'
      target:
        description: Target heating level from 0-100.
        example: 35
      duration:
        description: Duration to heat at the target level in seconds.
        example: 3600

axis:
  vapix_call:
    description: Configure device using Vapix parameter management.
    fields:
      name:
        description: Name of device to Configure. [Required]
        example: M1065-W
      cgi:
        description: Which cgi to call on device. [Optional] Default is 'param.cgi'
        example: 'applications/control.cgi'
      action:
        description: What type of call. [Optional] Default is 'update'
        example: 'start'
      param:
        description: What parameter to operate on. [Required]
        example: 'package=VideoMotionDetection'

apple_tv:
  apple_tv_authenticate:
    description: Start AirPlay device authentication.

    fields:
      entity_id:
        description: Name(s) of entities to authenticate with.
        example: 'media_player.apple_tv'

  apple_tv_scan:
    description: Scan for Apple TV devices.

modbus:
  write_register:
    description: Write to a modbus holding register
    fields:
      unit:
        description: Address of the modbus unit
        example: 21
      address:
        description: Address of the holding register to write to
        example: 0
      value:
        description: Value to write
        example: 0
  write_coil:
    description: Write to a modbus coil
    fields:
      unit:
        description: Address of the modbus unit
        example: 21
      address:
        description: Address of the register to read
        example: 0
      state:
        description: State to write
        example: false

wake_on_lan:
  send_magic_packet:
    description: Send a 'magic packet' to wake up a device with 'Wake-On-LAN' capabilities.

    fields:
      mac:
        description: MAC address of the device to wake up.
        example: 'aa:bb:cc:dd:ee:ff'
      broadcast_address:
        description: Optional broadcast IP where to send the magic packet.
        example: '192.168.255.255'

knx:
  group_write:
    description: Turn a light on

    fields:
      address:
        description: Group address(es) to write to
        example: '1/1/0'

      data:
        description: KNX data to send
        example: 1

rflink:
  send_command:
    description: Send device command through RFLink

    fields:
      device_id:
        description: RFLink device ID
        example: 'newkaku_0000c6c2_1'

      command:
        description: The command to be sent
        example: 'on'

counter:
  decrement:
    description: Decrement a counter.

    fields:
      entity_id:
        description: Entity id of the counter to decrement.
        example: 'counter.count0'

  increment:
    description: Increment a counter.

    fields:
      entity_id:
        description: Entity id of the counter to increment.
        example: 'counter.count0'

  reset:
    description: Reset a counter.

    fields:
      entity_id:
        description: Entity id of the counter to reset.
        example: 'counter.count0'

abode:
  change_setting:
    description: Change an Abode system setting.

    fields:
      setting:
        description: Setting to change.
        example: 'beeper_mute'

      value:
        description: Value of the setting.
        example: '1'

  capture_image:
    description: Request a new image capture from a camera device.

    fields:
      entity_id:
        description: Entity id of the camera to request an image.
        example: 'camera.downstairs_motion_camera'

  trigger_quick_action:
    description: Trigger an Abode quick action.

    fields:
      entity_id:
        description: Entity id of the quick action to trigger.
        example: 'binary_sensor.home_quick_action'

input_boolean:
  toggle:
    description: Toggles an input boolean

    fields:
      entity_id:
        description: Entity id of the input boolean to toggle
        example: 'input_boolean.notify_alerts'

  turn_off:
    description: Turns OFF an input boolean

    fields:
      entity_id:
        description: Entity id of the input boolean to turn off
        example: 'input_boolean.notify_alerts'

  turn_on:
    description: Turns ON an input boolean

    fields:
      entity_id:
        description: Entity id of the input boolean to turn on
        example: 'input_boolean.notify_alerts'

homeassistant:
  check_config:
    description: Check the Home Assistant configuration files for errors. Errors will be displayed in the Home Assistant log.
  reload_core_config:
    description: Reload the core configuration.
  restart:
    description: Restart the Home Assistant service. It is normal to get a "Failed to call service homeassistant/restart" message.
  stop:
    description: Stop the Home Assistant service. It is normal to get a "Failed to call service homeassistant/stop" message.
  toggle:
    description: Generic service to toggle devices on/off under any domain. Same usage as the light.turn_on, switch.turn_on, etc. services.
    fields:
      entity_id:
        description: The entity_id of the device to toggle on/off
        example: light.living_room
  turn_on:
    description: Generic service to turn devices on under any domain. Same usage as the light.turn_on, switch.turn_on, etc. services.
    fields:
      entity_id:
        description: The entity_id of the device to turn on
        example: light.living_room
  turn_off:
    description: Generic service to turn devices off under any domain. Same usage as the light.turn_on, switch.turn_on, etc. services.
    fields:
      entity_id:
        description: The entity_id of the device to turn off
        example: light.living_room
