Update campaign
Changed onPartially updates a campaign. Omitted fields are left unchanged. configuration.query and configuration.reviewer_assignment_policy cannot be updated after create; including either field returns 400. configuration.cron_expression and configuration.recurring_duration_days may only be set on template campaigns; setting them on a one-off campaign returns 400. configuration.is_template is immutable and not accepted on update. Configuration updates on a stopped or ended (non-template) campaign return 400. Name-only updates are still allowed.
Request
- Base URLhttps://api.opal.dev/v1
- AuthHTTP bearer
Path parameters
The ID of the campaign.
Request body
Example request
{
"name": "Q3 Access Review (Updated)",
"configuration": {
"end_date": "2026-09-30T00:00:00Z",
"timezone": "America/Los_Angeles"
}
}Response
The updated Campaign.
Example response
{
"campaign_id": "f454d283-ca87-4a8a-bdbb-df212eca5353",
"name": "Q3 Access Review",
"status": "DRAFT",
"is_template": false,
"created_at": "2026-07-01T00:00:00Z",
"updated_at": "2026-07-01T00:00:00Z",
"created_by_user_id": "32acc112-21ff-4669-91c2-21e27683eaa1",
"configuration": null,
"started_at": null,
"started_by_user_id": null,
"stopped_at": null,
"stopped_by_user_id": null,
"ended_at": null,
"ended_by_user_id": null
}Changes
- info
added the optional property
////////////to the response with the status - info
added the optional property
////////////to the response with the status - info
added the optional property
///////////to the response with the status - info
added the optional property
////////////to the response with the status - info
added the optional property
////////////to the response with the status - info
added the optional property
///////////to the response with the status
- info
- info
added the new optional request property
///// - info
added the required property
/////to the response with the status
- info