Skip to content
Latchkey

CircleCI "Error calling workflow" - Fix Workflow Job Refs

A workflow references a job that CircleCI cannot find, or a requires: points at a job not in the same workflow. The workflow definition does not line up with the jobs: map.

What this error means

Validation fails with "Error calling workflow" naming the job it could not resolve. The pipeline is rejected because the workflow graph references something that does not exist.

CircleCI UI
Error calling workflow: "ci"
Error calling job: "deploy"
Job not defined: "build-and-test"
Error: Config is invalid

Common causes

Workflow references an undefined job

A job name under workflows.<name>.jobs has no matching entry in the top-level jobs: map (or an orb job), usually a typo or a renamed job.

A requires dependency names a missing job

requires: [build-and-test] must reference a job present in the same workflow. A mismatch breaks the dependency graph.

Matrix or alias name mismatch

When a job is invoked with a name: alias or via a matrix, requires: must use that alias, not the underlying job name.

How to fix it

Align workflow job names with the jobs map

.circleci/config.yml
jobs:
  build-and-test:
    docker: [{ image: cimg/node:20.11 }]
    steps: [checkout, { run: npm test }]
  deploy:
    docker: [{ image: cimg/node:20.11 }]
    steps: [checkout, { run: ./deploy.sh }]

workflows:
  ci:
    jobs:
      - build-and-test
      - deploy:
          requires: [build-and-test]

Use the alias in requires when you rename a job

  1. If you give a job a name: in the workflow, reference that name in requires:.
  2. For matrix jobs, reference the generated alias, not the base job name.
  3. Run circleci config validate to confirm the graph resolves.

How to prevent it

  • Keep workflow job names identical to the jobs: keys, or use explicit aliases consistently.
  • Validate config on every PR so a broken graph fails before merge.
  • Avoid copy-pasting requires: without updating the referenced names.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →