---
title: "[beta] Create a job"
method: POST
path: "/beta/industrial/jobs"
tags: ["Beta APIs"]
---

# \[beta\] Create a job

`POST /beta/industrial/jobs`

## Request

- Base URL: `https://api.samsara.com`
- URL: `https://api.samsara.com/beta/industrial/jobs`
- Auth: HTTP bearer

Creates a new job and returns it.

To use this endpoint, select **Write Jobs** under the Equipment 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

- JobsCreateJobRequestBody: Job object to be created
  - `job` PostJobObjectRequestBody, required: Job object to be created
    - `address` PostJobObjectjobLocationRequestObjectRequestBody: A location object for the job
      - `address` string, required: Address of a location
      - `latitude` number, double, required: Latitude of a location
      - `longitude` number, double, required: Longitude of a location
      - `name` string, required: Name of the location
    - `customerName` string: Customer name for job
    - `endDate` string, required: End date of job in RFC 3339 format. Must be greater than or equal to the start date
    - `fleetDeviceIds` integer[]: Fleet devices to be added to this job (cannot have both industrial assets and fleet devices in the same job)
    - `id` string, required: Job Id
    - `industrialAssetIds` string[]: IndustrialAssets to be added to this job (cannot have both industrial assets and fleet devices in the same job)
    - `name` string, required: Job name
    - `notes` string: Notes for the upcoming job
    - `ontimeWindowAfterArrivalMs` integer: Specifies the time window (in milliseconds) after a stop's scheduled arrival time during which the stop is considered 'on-time'.
    - `ontimeWindowBeforeArrivalMs` integer: Specifies the time window (in milliseconds) before a stop's scheduled arrival time during which the stop is considered 'on-time'.
    - `startDate` string, required: Start date of job in RFC 3339 format.

## Response `200`

OK response.

- JobsCreateJobResponseBody
  - `data` JobResponseObjectResponseBody, required: Job object to be passed back
    - `address` JobLocationResponseObjectResponseBody, required: jobLocation object
      - `address` string, required: Address of a location
      - `latitude` number, double, required: Latitude of a location
      - `longitude` number, double, required: Longitude of a location
      - `name` string, required: Name of a location
    - `createdAt` string, required: When the job was created
    - `customerName` string, required: Customer name for job
    - `endDate` string, required: End date of job in RFC 3339 format
    - `fleetDevices` FleetDeviceObjectResponseBody[]: fleet devices in this job (cannot have both industrial assets and fleet devices in the same job)
      - `id` integer, required: Id of the device
      - `name` string, required: Name of the device
    - `id` string, required: Job id
    - `industrialAssets` IndustrialAssetObjectResponseBody[]: Industrial Assets in this job (cannot have both industrial assets and fleet devices in the same job)
      - `id` string, required: Id of the device
      - `name` string, required: Name of the industrial asset
    - `modifiedAt` string, required: When the job was last modified
    - `name` string, required: Job name
    - `notes` string, required: Notes for the upcoming job
    - `ontimeWindowAfterArrivalMs` integer: Specifies the time window (in milliseconds) after a stop's scheduled arrival time during which the stop is considered 'on-time'.
    - `ontimeWindowBeforeArrivalMs` integer: Specifies the time window (in milliseconds) before a stop's scheduled arrival time during which the stop is considered 'on-time'.
    - `startDate` string, required: Start date of job in RFC 3339 format
    - `status` 'active' | 'scheduled' | 'completed', required: The current job status Valid values: `active`, `scheduled`, `completed`
    - `uuid` string, required: Samsara uuid
  - `id` string: The job id of the failed request
  - `uuid` string: The uuid of the failed request

## 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)
