View categories

Categories

Last updated January 31, 2025

Running heroku help displays a usage summary.

Usage: heroku COMMAND
Type heroku help TOPIC for more details.
 access manage user access to apps
 addons manage add-ons
 apps manage apps
 authorizations OAuth authorizations
 buildpacks manage the buildpacks for an app
 certs a topic for the ssl plugin
 ci run an application test suite on Heroku
 clients OAuth clients on the platform
 config manage app config vars
 domains manage the domains for an app
 drains list all log drains
 features manage optional features
 git manage local git repository for app
 keys manage ssh keys
 labs experimental features
 local run heroku app locally
 logs display recent log output
 maintenance manage maintenance mode for an app
 members manage organization members
 notifications display notifications
 orgs manage organizations
 pg manage postgresql databases
 pipelines manage collections of apps in pipelines
 plugins manage plugins
 ps manage dynos (dynos, workers)
 redis manage heroku redis instances
 regions list available regions
 releases manage app releases
 run run a one-off process inside a Heroku dyno
 sessions OAuth sessions
 spaces manage heroku private spaces
 status status of the Heroku platform
 teams manage teams

The commands are divided into two types: general commands and app commands.

General Commands

General commands operate on your Heroku account as a whole and aren’t specific to a particular app. For example, to get a list of apps that you created or are a collaborator on, run this command.

$ heroku apps
=== user@example.org Apps
example
example2
=== Collaborated Apps
collabapp owner@example.org

App Commands

App commands are typically executed from within an app’s local Git clone. The app name is automatically detected by scanning the Git remotes for the current working copy, so you don’t specify which app to operate on explicitly. For example, call the heroku apps:info command with --app or execute it without any arguments inside the working copy.

$ cd example
$ heroku apps:info
=== example-app-69977
Auto Cert Mgmt: false
Dynos:
Git URL: https://git.heroku.com/example-app-69977.git
Owner: your@emailaddress.com
Region: us
Repo Size: 0 B
Slug Size: 0 B
Stack: heroku-18
Web URL: https://example-app-69977.herokuapp.com/

If you have multiple remotes or want to execute an app command outside of a local working copy, you can specify the remote name or an explicit app name as follows.

$ heroku apps:info --app example
$ heroku apps:info --remote production

Alternatively, specify the app name by setting the HEROKU_APP environment variable.

Using an HTTP Proxy

If you’re behind a firewall that requires a proxy to connect with external HTTP/HTTPS services, you can set the HTTP_PROXY or HTTPS_PROXY environment variables in your local developer environment, before running the heroku command.

If you get the error UNABLE_TO_GET_ISSUER_CERT_LOCALLY or ECONNREFUSED, it’s likely that you need a proxy.

For example, on a Unix system, run this command:

$ export HTTP_PROXY=http://proxy.server.com:portnumber
or
$ export HTTPS_PROXY=https://proxy.server.com:portnumber
$ heroku login

On a Windows machine, set it in the Environment Variables within System Properties or from the terminal.

> set HTTP_PROXY=http://proxy.server.com:portnumber
or
> set HTTPS_PROXY=https://proxy.server.com:portnumber
> heroku login

This command can go in your ~/.bashrc (or equivalent) to prevent running this every time you open a new shell session.

If your company’s internet requires the use of a MITM proxy, you can get a SELF_SIGNED_CERT_IN_CHAIN error. To the file location of the proxy’s Certificate Authority (CA) certificate in pem format, set NODE_EXTRA_CA_CERTS. Or if issued the self-signed certificate directly, set SSL_CERT_FILE or SSL_CERT_DIR to a file/directory containing the MITM certificate.

$ export NODE_EXTRA_CA_CERTS=/path/to/ca_cert.pem
$ heroku whoami