# Heroku integrations: apps, builds and releases

> Create an app, create a build and create a release in Heroku, and start a workflow when Heroku sends “App created”.

**Canonical page:** https://tray.ai/connectors/heroku-integrations/
**Categories:** Developer tools
**Connects through:** HTTP Connector

## Overview

Heroku is a cloud platform for deploying and running web apps, where teams manage apps, builds, releases, dynos, add-ons and pipelines. Tray.ai connects to Heroku through the HTTP Connector, so your workflows can call the Heroku API alongside the rest of your stack.

## Use cases

### Apps

Read, create, update, and delete apps in Heroku from any Tray.ai workflow. The Heroku API covers calls such as list apps and get an app.

- List apps
- Get an app
- Create an app

### Builds

Read, create, and delete builds in Heroku from any Tray.ai workflow. The Heroku API covers calls such as list builds and get a build.

- List builds
- Get a build
- Create a build

### Releases

Read and create releases in Heroku from any Tray.ai workflow. The Heroku API covers calls such as list releases and get a release.

- List releases
- Get a release
- Create a release

### Dynos

Read and create dynos in Heroku from any Tray.ai workflow. The Heroku API covers calls such as list dynos and create a dyno.

- List dynos
- Create a dyno
- Restart a dyno

### Config vars

Read and update config vars in Heroku from any Tray.ai workflow. The Heroku API covers calls such as get app config vars and update config vars.

- Get app config vars
- Update config vars

### Domains

Read, create, update, and delete domains in Heroku from any Tray.ai workflow. The Heroku API covers calls such as list domains and create a domain.

- List domains
- Create a domain
- Update a domain

## Challenges Tray.ai solves

### Keeping Heroku credentials out of logs

A raw API call usually means pasting a key or token into the request, where it ends up in step inputs, logs, and screenshots.

**How Tray.ai helps:** Store Heroku credentials once as a Tray.ai authentication and reference them from the HTTP Connector. Tray.ai masks authentication values in logs, so the secret never shows up in a step's input or output.

### Going from the Heroku API docs to a working call

Translating an example request from API docs into a workflow step means copying the method, URL, headers, and body by hand.

**How Tray.ai helps:** Paste a cURL example from the Heroku API docs into the HTTP Connector and Tray.ai fills in the method, URL, headers, and body for you.

### Handling files and non-JSON responses

Not every API answers in JSON. Some return XML, files, or binary data, or expect a multipart upload.

**How Tray.ai helps:** The HTTP Connector parses JSON and XML responses, returns files you can pass to the next step, and sends multipart form data for uploads.

## Frequently asked questions

### Does Tray.ai connect to Heroku?

Yes. Tray.ai connects to Heroku through the HTTP Connector, which calls the Heroku API directly. Any call the Heroku API documents can run as a step in a Tray.ai workflow.

### How does Tray.ai authenticate with Heroku?

The Heroku API uses OAuth 2.0 and a bearer token. You save it once as a Tray.ai authentication, and the HTTP Connector adds it to every request.

### Can I get a dedicated Heroku connector?

Heroku runs through the HTTP Connector rather than a dedicated connector. If your team wants one, the Tray.ai connector SDK can build a dedicated Heroku connector from the Heroku API.

## Learn more

- Intelligent Integration: https://tray.ai/platform/intelligent-ipaas/
- Merlin Agent Builder: https://tray.ai/platform/merlin-agent-builder/
- Agent Gateway for MCP: https://tray.ai/platform/agent-gateway/
- Book a demo: https://tray.ai/contact/
