> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plane.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a workforce plan

> Create a persistent workforce planning scenario.

### Parameters

Workforce plans are created as drafts. Use the approval flow when a plan is
ready to lock.

<ParamField body="name" type="string" required>
  Human-readable plan name.
</ParamField>

<ParamField body="starts" type="string" required>
  Start date for the planning window.
</ParamField>

<ParamField body="ends" type="string" required>
  End date for the planning window.
</ParamField>

<ParamField body="currency" type="string">
  Three-letter ISO currency code for calculation rollups. Defaults to the
  workspace currency.
</ParamField>

<ParamField body="frequency" type="string">
  Planning frequency. Currently `monthly`.
</ParamField>

<ParamField body="metadata" type="object">
  Set of key-value pairs attached to the plan.
</ParamField>

### Returns

Returns the created [Workforce plan object](/reference/workforce-plans/object).

<ResponseExample>
  ```json Request theme={null}
  {
    "name": "FY27 hiring plan",
    "starts": "2026-07-01",
    "ends": "2027-06-30",
    "currency": "USD"
  }
  ```

  ```json Response theme={null}
  {
    "id": "wfp_R8mK2pQ9xL4s",
    "object": "workforce.plan",
    "name": "FY27 hiring plan",
    "status": "draft",
    "starts": "2026-07-01",
    "ends": "2027-06-30",
    "frequency": "monthly",
    "currency": "USD",
    "positions": [],
    "calculation": null,
    "metadata": {},
    "created": "2026-05-27T12:00:00Z",
    "updated": "2026-05-27T12:00:00Z"
  }
  ```
</ResponseExample>
