Heroku

Cloud infrastructure

Go to site
Explore
/
Apps
/
Heroku

Heroku API Integrations

Build and run workflows using the Heroku API. Use 1000s of source-available triggers and actions across 1000+ apps. Or write custom code to integrate any app or API in seconds.

Overview

Heroku is a cloud platform that you can use to deploy, manage, and scale your applications. You can use the Heroku API to manage your applications, add-ons, and dynos. You can also use the Heroku API to access your account data, create new apps, view your app logs, and more.

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: {
    heroku: {
      type: "app",
      app: "heroku",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.heroku.com/account`,
      headers: {
        Authorization: `Bearer ${this.heroku.$auth.oauth_access_token}`,
        "accept": `application/vnd.heroku+json; version=3`,
      },
    })
  },
})

Authentication

Heroku uses OAuth authentication. When you connect your Heroku account, Pipedream will open a popup window where you can sign into Heroku and grant Pipedream permission to connect to your account. Pipedream securely stores and automatically refreshes the OAuth tokens so you can easily authenticate any Heroku API.

Pipedream requests the following authorization scopes when you connect your account:

global
OAuth Request Configurations:
  1. authorization
    GEThttps://id.heroku.com/oauth/authorize?client_id={{oauth.client_id}}&redirect_uri={{oauth.redirect_uri}}&state={{oauth.state}}&response_type=code&scope={{oauth.space_separated_scopes}}
  2. accessToken
    POSThttps://id.heroku.com/oauth/tokencontent-type: application/x-www-form-urlencodedaccept: application/json
    client_id={{oauth.client_id}}&client_secret={{oauth.client_secret}}&redirect_uri={{oauth.redirect_uri}}&grant_type=authorization_code&code={{oauth.code}}
  3. refreshToken
    POSThttps://id.heroku.com/oauth/tokencontent-type: application/x-www-form-urlencodedaccept: application/json
    client_id={{oauth.client_id}}&client_secret={{oauth.client_secret}}&grant_type=refresh_token&refresh_token={{oauth.refresh_token}}