Home Assistant

Home assistant software

Integrate the Home Assistant API with the Formatting API

Setup the Home Assistant API trigger to run a workflow which integrates with the Formatting API. Pipedream's integration platform allows you to integrate Home Assistant and Formatting remarkably fast. Free for developers.

[Data] Convert JSON to String with the Formatting API

Convert an object to a JSON format string

 
Try it
[Data] Parse JSON with the Formatting API

Parse a JSON string

 
Try it
[Date/Time] Add/Subtract Time with the Formatting API

Add or subtract time from a given input

 
Try it
[Date/Time] Compare Dates with the Formatting API

Get the duration between two dates in days, hours, minutes, and seconds along with checking if they are the same.

 
Try it
[Date/Time] Format with the Formatting API

Format a date string to another date string

 
Try it

Overview of Home Assistant

The Home Assistant API unlocks the potential to automate and interact with your smart home devices programmatically. With Pipedream, you can tap into this power, triggering workflows based on events in your home, such as motion detection or door openings, and controlling devices based on external data sources or schedules. This integration allows for the creation of personalized, complex scenarios that can enhance security, energy efficiency, and convenience within your smart home.

Connect Home Assistant

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    home_assistant: {
      type: "app",
      app: "home_assistant",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://${this.home_assistant.$auth.hostname}/api`,
      headers: {
        Authorization: `Bearer ${this.home_assistant.$auth.token}`,
        "Content-Type": `application/json`,
      },
    })
  },
})

Connect Formatting

1
2
3
4
5
6
export default defineComponent({
  async run({ steps, $ }) {
    const text = ' Hello world! ';
    return text.trim()
  },
})