Skip to content
Latchkey

CircleCI "Workflow halted" - Job Requires Approval

An approval job (type: approval) is a manual gate. The workflow shows On Hold and halts until a person approves it; jobs that require the approval will not run beforehand.

What this error means

The workflow status is on hold, and downstream jobs never start because they require an approval job that nobody has approved.

circleci
Workflow halted: job 'hold-deploy' requires manual approval.
Downstream jobs (deploy) are pending until approval is granted.

Common causes

Approval job not yet approved

A type: approval job blocks downstream jobs that require it.

Approval job placed too early

A gate before most of the pipeline pauses everything behind it.

How to fix it

Approve the gate, or reposition it

Approve the job in the UI, or move the approval gate later so earlier jobs run first.

.circleci/config.yml
workflows:
  release:
    jobs:
      - build
      - hold-deploy:
          type: approval
          requires: [build]
      - deploy:
          requires: [hold-deploy]

Approve from the app

  1. Open the on-hold workflow in the CircleCI app.
  2. Click the approval job and approve it.
  3. Confirm downstream jobs start.

How to prevent it

  • Place approval gates late, after build/test jobs.
  • Document who is responsible for approving releases.
  • Use contexts and restrictions instead of approvals where automation is preferred.

Frequently asked questions

What causes ""workflow halted""?
A type: approval job blocks downstream jobs that require it.
How do I fix "workflow halted"?
Approve the job in the UI, or move the approval gate later so earlier jobs run first.

Related guides

References

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