---
title: "Update a recurring series on a job"
method: PUT
path: "/v1/jobs/{jobId}/recurrence"
tags: ["Jobs"]
---

# Update a recurring series on a job

`PUT /v1/jobs/{jobId}/recurrence`

## Request

- Base URL: `https://api.bigchange.com`
- URL: `https://api.bigchange.com/v1/jobs/{jobId}/recurrence`
- Auth: HTTP bearer

Updates the recurring series on an existing job. (required scope jobs:write)

## Path parameters

- `jobId` integer, required

## Headers

- `Customer-Id` integer, required

## Request body

- UpdateJobRecurrenceModel: Represents a model for updating the recurring series on an existing job
  - `cronExpression` string, required: A standard 5-field CRON expression (minute hour dayOfMonth month dayOfWeek) describing the recurrence schedule.<br/>Only a limited subset is supported: minute must be '0', month must be '*', and at most one of<br/>dayOfMonth/dayOfWeek may be a specific value (the other must be '*')
  - `recurTo` 'unallocatedJobs' | 'resourceOnceScheduled': Determines how future occurrences of a recurring job are resourced.<p>Possible values:</p><ul><li><b>unallocatedJobs</b>: Future occurrences are created as unallocated jobs.</li><li><b>resourceOnceScheduled</b>: Future occurrences keep the resource from the job that was scheduled once.</li></ul>
  - `startDateAt` string, date-time, required: The date and time the recurrence series starts
  - `endDateAt` string, date-time, nullable: The date the recurrence series stops. Must not be provided together with BigChange.BO.RestApi.Application.JobRecurrences.Models.UpdateJobRecurrenceModel.OccurrenceCount
  - `occurrenceCount` integer, nullable: The number of occurrences after which the recurrence series stops. Must not be provided together with BigChange.BO.RestApi.Application.JobRecurrences.Models.UpdateJobRecurrenceModel.EndDateAt

## Response `200`

OK

- CreateJobRecurrenceResponseModel: Represents the outcome of creating a recurring series on a job
  - `recurrenceId` integer: The unique identifier of the newly created recurrence series
  - `jobId` integer: The unique identifier of the job the recurrence was created on
  - `recurrenceType` string: The recurrence pattern resolved from the CRON expression
  - `cronExpression` string: The CRON expression that was provided
  - `startDateAt` string, date-time: The date and time the recurrence series starts
  - `endCondition` string: A description of when the recurrence series stops — an end date, a number of occurrences, or "None" if it recurs indefinitely
  - `upcomingOccurrences` string[]: The calculated schedule of upcoming occurrences, within the platform's configured "months ahead" window. This<br/>reflects the calculated schedule, not already-created job records

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `422`: Unprocessable Content
- `500`: Internal Server Error

## Changes

- **2026-09-03** `553de7d50a1c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/bigchange/apis/bigchange-dx/changes/v1/jobs/:jobId/recurrence/put.md)

---

[API](https://skmtc.dev/bigchange/apis/bigchange-dx.md) - [All operations](https://skmtc.dev/bigchange/apis/bigchange-dx/llms.txt) - [OpenAPI document](https://skmtc.dev/bigchange/apis/bigchange-dx/revisions/b262bfdb1dd0?raw)
