Skip to content
Latchkey

GitHub Actions "Input required and not supplied: token"

An action declared token as a required input, but it arrived empty - usually a secret that does not exist, is named wrong, or was not passed to a reusable workflow.

What this error means

An action fails at startup with "Input required and not supplied: token". The action never runs because its required token input resolved to an empty string.

Actions log
Error: Input required and not supplied: token

Common causes

Secret missing or misnamed

with: token: ${{ secrets.MY_TOKEN }} resolves to empty when the secret does not exist or is spelled differently than defined.

Secret not passed to a reusable workflow or fork

A reusable workflow only sees secrets explicitly passed (or inherited). On a fork pull_request, secrets are unavailable, so the token input is empty.

How to fix it

Supply a real token input

Pass a defined secret (or the built-in GITHUB_TOKEN) to the action’s token input.

.github/workflows/ci.yml
- uses: some/action@v1
  with:
    token: ${{ secrets.GITHUB_TOKEN }}

Make sure the secret reaches the job

  1. Confirm the secret name matches exactly what is stored in repo/org/environment settings.
  2. For reusable workflows, forward the secret via the secrets: block or secrets: inherit.
  3. Remember fork pull_request runs get no secrets - gate token-using steps accordingly.

How to prevent it

  • Reference secret names exactly as defined.
  • Forward secrets explicitly to reusable workflows.
  • Guard token-dependent steps so fork PRs do not run them with empty secrets.

Frequently asked questions

What causes ""token not supplied""?
with: token: ${{ secrets.MY_TOKEN }} resolves to empty when the secret does not exist or is spelled differently than defined.
How do I fix "token not supplied"?
Pass a defined secret (or the built-in GITHUB_TOKEN) to the action’s token input.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card