---
title: "Create a new plan"
method: POST
path: "/hub/plan"
tags: ["Plans"]
---

# Create a new plan

`POST /hub/plan`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/hub/plan`
- Auth: HTTP bearer

Create a new plan.

 <b>Rate limit:</b> 5 requests/sec (learn more about rate limits <a href="https://developers.samsara.com/docs/rate-limits" target="_blank">here</a>).

To use this endpoint, select **Write Routes** under the Driver Workflow category when creating or editing an API token. <a href="https://developers.samsara.com/docs/authentication#scopes-for-api-tokens" target="_blank">Learn More.</a>
 

 **Submit Feedback**: Likes, dislikes, and API feature requests should be filed as feedback in our <a href="https://forms.gle/zkD4NCH7HjKb7mm69" target="_blank">API feedback form</a>. If you encountered an issue or noticed inaccuracies in the API documentation, please <a href="https://www.samsara.com/help" target="_blank">submit a case</a> to our support team.

## Request body

- HubPlansCreateHubPlanRequestBody: Request body for creating a hub plan
  - `hubId` string, required: The ID of the hub the plan belongs to
  - `name` string, required: The name of the plan
  - `sessionConfigurationId` string: The ID of a saved session configuration (preset) to apply when creating the plan. When provided, the preset's optimization settings and route constructions are applied to the new plan, replacing any defaults.
  - `shiftStartTime` string, date-time: The shift start time for the plan in RFC 3339 format. If not provided, defaults to 9:00 AM on the next business day in the hub's timezone.

## Response `200`

OK response.

- HubPlansCreateHubPlanResponseBody
  - `data` PlanObjectResponseBody, required: Plan object
    - `createdAt` string, date-time, required: The timestamp (in UTC) when the plan was created
    - `hubId` string, required: The ID of the hub this plan belongs to
    - `id` string, required: The Samsara-generated unique identifier (UUID) for the plan
    - `name` string, required: The name of the plan
    - `shiftStartTime` string, date-time, required: The shift start time for the plan in RFC 3339 format
    - `updatedAt` string, date-time, required: The timestamp (in UTC) when the plan was last updated

## Other responses

- `401`: Unauthorized response.
- `404`: Not Found response.
- `405`: Method Not Allowed response.
- `413`: Content Too Large response.
- `429`: Too Many Requests response.
- `500`: Internal Server Error response.
- `501`: Not Implemented response.
- `502`: Bad Gateway response.
- `503`: Service Unavailable response.
- `504`: Gateway Timeout response.
- `default`: Bad Request response.

---

[API](https://skmtc.dev/samsara/apis/samsara-api.md) - [All operations](https://skmtc.dev/samsara/apis/samsara-api/llms.txt) - [OpenAPI document](https://skmtc.dev/samsara/apis/samsara-api/revisions/a9e35d4999be?raw)
