NC
HomeGuidesMechanics

KB article

Progression V2 Projects API: start, fund, and labor semantics

Reference for nation projects API endpoints, labor spending flow, start semantics, and common reason-code fixes.

Read 1 minGetting Started#progression#projects#api#labor#reason-codes

Updated February 26, 2026

What this covers

This guide explains the Progression V2 nation projects endpoints:

  • GET /api/nations/[id]/projects
  • POST /api/nations/[id]/projects/start
  • POST /api/nations/[id]/projects/fund

Shared behavior

  • Auth required (session cookie).
  • You must own the nation in [id].
  • Tick timing is authoritative server-side.

`GET /api/nations/[id]/projects`

Returns project state in progression-config order.

Data includes:

  • nationId, worldId, currentTick
  • laborCurrent, laborMax
  • projects[] with:
  • projectKey, name
  • status: ACTIVE | COMPLETE | CANCELLED | MISSING
  • progressMilli, requiredWorkMilli, percentComplete
  • funding.laborStartCost
  • isFunded (whether the project builder has been started)
  • startedAtTick, completedAtTick

`POST /api/nations/[id]/projects/start`

Starts the next eligible project in progression order.

  • No request body required.
  • Server selects the next startable project.
  • New/started project gets status=ACTIVE and startedAtTick=currentTick.

Typical failures:

  • PROJECT_PREREQ_NOT_MET
  • NO_ELIGIBLE_PROJECT

`POST /api/nations/[id]/projects/fund`

Starts the active project builder by spending labor once.

Request body:

``json { "projectKey": "era_project_state" } ``

Success returns:

  • projectKey
  • laborStartCost
  • laborCurrentBefore, laborCurrentAfter

Common blockers:

  • PROJECT_KEY_INVALID
  • PROJECT_NOT_FOUND
  • PROJECT_NOT_ACTIVE
  • PROJECT_ALREADY_FUNDED
  • INSUFFICIENT_LABOR

Labor semantics

Funding is an **upfront start cost**, not a recurring per-day spend.

  • First successful fund call starts the builder.
  • Re-funding the same active project returns PROJECT_ALREADY_FUNDED.
  • Progress then advances each tick until completion.