Skip to content

heroku/heroku-api-plugin

Repository files navigation

API Plugin for Heroku Toolbelt

npm version Node CI Suite Build status

How to install this plugin

$ heroku plugins:install @heroku-cli/plugin-api

Usage

heroku api METHOD [PATH]

make a manual API request

USAGE
  $ heroku api METHOD [PATH] [-v <value>] [-a <value>] [-b <value>]

ARGUMENTS
  METHOD  GET, POST, PUT, PATCH, or DELETE
  PATH    endpoint to call

FLAGS
  -a, --accept-inclusion=<value>  Accept-Inclusion header to use
  -b, --body=<value>              JSON input body
  -v, --version=<value>           version to use (e.g. 2, 3, or 3.variant)

DESCRIPTION
  make a manual API request
  The api command is a convenient but low-level way to send requests
  to the Heroku API. It sends an HTTP request to the Heroku API
  using the given method on the given path. For methods PUT, PATCH,
  and POST, it uses stdin unmodified as the request body. It prints
  the response unmodified on stdout.

  It is essentially like curl for the Heroku API.

  Method name input will be upcased, so both 'heroku api GET /apps' and
  'heroku api get /apps' are valid commands.

EXAMPLES
  $ heroku api GET /apps/myapp
  {
    created_at: "2011-11-11T04:17:13-00:00",
    id: "12345678-9abc-def0-1234-456789012345",
    name: "myapp",
    …
  }
  $ heroku api PATCH /apps/myapp/config-vars --body '{"FOO": "bar"}'
  {
    FOO: "bar"
    …
  }
  $ export HEROKU_HEADERS
  $ HEROKU_HEADERS='{
  "Content-Type": "application/x-www-form-urlencoded",
  "Accept": "application/json"
  }'
  $ printf 'type=web&qty=2' | heroku api POST /apps/myapp/ps/scale
  2

See code: src/commands/api.ts