Heap

Fuel product growth and team agility. Heap automatically captures web and mobile app behavioral data. Retroactively analyze behavioral data without writing code.

Integrate the Heap API with the Formatting API

Setup the Heap API trigger to run a workflow which integrates with the Formatting API. Pipedream's integration platform allows you to integrate Heap 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 Heap

The Heap API enables you to automate and integrate your user analytics data with other applications. With Heap, you can extract insights on how users interact with your product, track events without code, and funnel this data into your CRM, marketing tools, or custom dashboards. It's about connecting the dots between user actions and your strategic moves. Heap's API lets you push or pull data, so you're always up-to-date on user behavior and can personalize user experiences at scale.

Connect Heap

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    heap: {
      type: "app",
      app: "heap",
    }
  },
  async run({steps, $}) {
    // From the docs: https://docs.heap.io/reference#track-1
    // "Requests are limited to 30 requests per 30 seconds per identity per app_id"
    return await axios($, {
      method: "POST",
      url: `https://heapanalytics.com/api/track`,
      headers: {
        "Content-Type": "application/json",
      },
      data: {
        app_id: this.heap.$auth.app_id,
        identity: params.identity,
        event: params.event,
        timestamp: params.timestamp || (new Date()).toISOString(),
        properties: params.properties,
      }
    })
  },
})

Connect Formatting

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