sincecutoff.com
← all changes

bk api reads request bodies from stdin with --data -

Introduced 2026-09-27 · score 0.95

HOW TO USE IT

When a large JSON body exceeds command-line limits, use a CLI built with v3.58.0’s change and pipe the file to `bk api <endpoint> --data -`; supplying `--data` defaults the method to POST. [Release note](https://github.com/buildkite/cli/releases/tag/v3.58.0)

cat <body.json> | bk api <endpoint> --data -

WHY THIS HELPS

Send a large JSON request body to a Buildkite API endpoint when it exceeds command-line limits.

BEFORE THIS CHANGE

Before the change, `bk api --data -` sent the literal JSON string `"-"`; released versions still require inline data.

REQUIREMENTS AND LIMITATIONS

  • Version: v3.58.0
  • Requires Install a CLI built from this change; released versions still require inline data.
  • <endpoint> (required): API endpoint to call; required for this task. The command reference syntax marks it optional in general.
  • --data (required): Data to send in the request body; `-` reads the data from stdin. Supplying `--data` defaults the request method to POST, as stated in the v3.58.0 release note.
  • - (required): Value for `--data` that selects stdin as the request body source.
  • Prerequisite: Install a CLI built with the v3.58.0 change; the release note says stdin input is available only in such a CLI.
  • Prerequisite: The CLI requires configuration of a Buildkite API access token.
  • Stdin input is available only after installing a CLI built from this change.
  • Inline `--data` behavior remains unchanged.

FIRST-PARTY EVIDENCE

Check the installed version and the source before using it. Entry JSON

Report a problem with this card