Mettre à jour partiellement une planification en fournissant uniquement les champs à modifier.
Cet endpoint vous permet de modifier des attributs spécifiques d’une planification sans affecter les autres champs. Les cas d’usage courants sont les suivants :
Modifier le statut de la planification entre actif et inactif
Mettre à jour les horaires des fenêtres de maintenance
Modifier la requête de filtre pour cibler des hosts différents
Ajuster la stratégie de version
Incluez uniquement les champs à mettre à jour dans le corps de la requête. Tous les champs sont optionnels dans une requête PATCH.
This endpoint requires the agent_upgrade_write permission.
Arguments
Paramètres du chemin
Nom
Type
Description
id [required]
string
The unique identifier of the schedule to update.
Requête
Body Data (required)
Charge utile de requête contenant les champs à mettre à jour.
Attributes for partially updating a schedule. All fields are optional.
name
string
Human-readable name for the schedule.
query
string
Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax.
rule
object
Defines the recurrence pattern for the schedule. Specifies when deployments should be
automatically triggered based on maintenance windows.
days_of_week [required]
[string]
List of days of the week when the schedule should trigger. Valid values are:
"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun".
maintenance_window_duration [required]
int64
Duration of the maintenance window in minutes.
start_maintenance_window [required]
string
Start time of the maintenance window in 24-hour clock format (HH:MM).
Deployments will be triggered at this time on the specified days.
timezone [required]
string
Timezone for the schedule in IANA Time Zone Database format (e.g., "America/New_York", "UTC").
status
enum
The status of the schedule.
active: The schedule is active and will create deployments according to its recurrence rule.
inactive: The schedule is inactive and will not create any deployments.
Allowed enum values: active,inactive
version_to_latest
int64
Number of major versions behind the latest to target for upgrades.
0: Always upgrade to the latest version
1: Upgrade to latest minus 1 major version
2: Upgrade to latest minus 2 major versions
Maximum value is 2.
type [required]
enum
The type of schedule resource.
Allowed enum values: schedule
default: schedule
{"data":{"attributes":{"name":"Weekly Production Agent Updates","query":"env:prod AND service:web","rule":{"days_of_week":["Mon","Wed","Fri"],"maintenance_window_duration":1200,"start_maintenance_window":"02:00","timezone":"America/New_York"},"status":"active","version_to_latest":0},"type":"schedule"}}
A schedule that automatically creates deployments based on a recurrence rule.
attributes [required]
object
Attributes of a schedule in the response.
created_at_unix
int64
Unix timestamp (seconds since epoch) when the schedule was created.
created_by
string
User handle of the person who created the schedule.
name
string
Human-readable name for the schedule.
query
string
Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax.
rule
object
Defines the recurrence pattern for the schedule. Specifies when deployments should be
automatically triggered based on maintenance windows.
days_of_week [required]
[string]
List of days of the week when the schedule should trigger. Valid values are:
"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun".
maintenance_window_duration [required]
int64
Duration of the maintenance window in minutes.
start_maintenance_window [required]
string
Start time of the maintenance window in 24-hour clock format (HH:MM).
Deployments will be triggered at this time on the specified days.
timezone [required]
string
Timezone for the schedule in IANA Time Zone Database format (e.g., "America/New_York", "UTC").
status
enum
The status of the schedule.
active: The schedule is active and will create deployments according to its recurrence rule.
inactive: The schedule is inactive and will not create any deployments.
Allowed enum values: active,inactive
updated_at_unix
int64
Unix timestamp (seconds since epoch) when the schedule was last updated.
updated_by
string
User handle of the person who last updated the schedule.
version_to_latest
int64
Number of major versions behind the latest to target for upgrades.
0: Always upgrade to the latest version
1: Upgrade to latest minus 1 major version
2: Upgrade to latest minus 2 major versions
Maximum value is 2.
id [required]
string
Unique identifier for the schedule.
type [required]
enum
The type of schedule resource.
Allowed enum values: schedule
default: schedule
{"data":{"attributes":{"created_at_unix":1699999999,"created_by":"[email protected]","name":"Weekly Production Agent Updates","query":"env:prod AND service:web","rule":{"days_of_week":["Mon","Wed","Fri"],"maintenance_window_duration":1200,"start_maintenance_window":"02:00","timezone":"America/New_York"},"status":"active","updated_at_unix":1699999999,"updated_by":"[email protected]","version_to_latest":0},"id":"abc-def-ghi-123","type":"schedule"}}
"""
Update a schedule returns "OK" response
"""fromdatadog_api_clientimportApiClient,Configurationfromdatadog_api_client.v2.api.fleet_automation_apiimportFleetAutomationApifromdatadog_api_client.v2.model.fleet_schedule_patchimportFleetSchedulePatchfromdatadog_api_client.v2.model.fleet_schedule_patch_attributesimportFleetSchedulePatchAttributesfromdatadog_api_client.v2.model.fleet_schedule_patch_requestimportFleetSchedulePatchRequestfromdatadog_api_client.v2.model.fleet_schedule_recurrence_ruleimportFleetScheduleRecurrenceRulefromdatadog_api_client.v2.model.fleet_schedule_resource_typeimportFleetScheduleResourceTypefromdatadog_api_client.v2.model.fleet_schedule_statusimportFleetScheduleStatusbody=FleetSchedulePatchRequest(data=FleetSchedulePatch(attributes=FleetSchedulePatchAttributes(name="Weekly Production Agent Updates",query="env:prod AND service:web",rule=FleetScheduleRecurrenceRule(days_of_week=["Mon","Wed","Fri",],maintenance_window_duration=1200,start_maintenance_window="02:00",timezone="America/New_York",),status=FleetScheduleStatus.ACTIVE,version_to_latest=0,),type=FleetScheduleResourceType.SCHEDULE,),)configuration=Configuration()configuration.unstable_operations["update_fleet_schedule"]=TruewithApiClient(configuration)asapi_client:api_instance=FleetAutomationApi(api_client)response=api_instance.update_fleet_schedule(id="id",body=body)print(response)
# Update a schedule returns "OK" responserequire"datadog_api_client"DatadogAPIClient.configuredo|config|config.unstable_operations["v2.update_fleet_schedule".to_sym]=trueendapi_instance=DatadogAPIClient::V2::FleetAutomationAPI.newbody=DatadogAPIClient::V2::FleetSchedulePatchRequest.new({data:DatadogAPIClient::V2::FleetSchedulePatch.new({attributes:DatadogAPIClient::V2::FleetSchedulePatchAttributes.new({name:"Weekly Production Agent Updates",query:"env:prod AND service:web",rule:DatadogAPIClient::V2::FleetScheduleRecurrenceRule.new({days_of_week:["Mon","Wed","Fri",],maintenance_window_duration:1200,start_maintenance_window:"02:00",timezone:"America/New_York",}),status:DatadogAPIClient::V2::FleetScheduleStatus::ACTIVE,version_to_latest:0,}),type:DatadogAPIClient::V2::FleetScheduleResourceType::SCHEDULE,}),})papi_instance.update_fleet_schedule("id",body)
// Update a schedule returns "OK" responsepackagemainimport("context""encoding/json""fmt""os""github.com/DataDog/datadog-api-client-go/v2/api/datadog""github.com/DataDog/datadog-api-client-go/v2/api/datadogV2")funcmain(){body:=datadogV2.FleetSchedulePatchRequest{Data:datadogV2.FleetSchedulePatch{Attributes:&datadogV2.FleetSchedulePatchAttributes{Name:datadog.PtrString("Weekly Production Agent Updates"),Query:datadog.PtrString("env:prod AND service:web"),Rule:&datadogV2.FleetScheduleRecurrenceRule{DaysOfWeek:[]string{"Mon","Wed","Fri",},MaintenanceWindowDuration:1200,StartMaintenanceWindow:"02:00",Timezone:"America/New_York",},Status:datadogV2.FLEETSCHEDULESTATUS_ACTIVE.Ptr(),VersionToLatest:datadog.PtrInt64(0),},Type:datadogV2.FLEETSCHEDULERESOURCETYPE_SCHEDULE,},}ctx:=datadog.NewDefaultContext(context.Background())configuration:=datadog.NewConfiguration()configuration.SetUnstableOperationEnabled("v2.UpdateFleetSchedule",true)apiClient:=datadog.NewAPIClient(configuration)api:=datadogV2.NewFleetAutomationApi(apiClient)resp,r,err:=api.UpdateFleetSchedule(ctx,"id",body)iferr!=nil{fmt.Fprintf(os.Stderr,"Error when calling `FleetAutomationApi.UpdateFleetSchedule`: %v\n",err)fmt.Fprintf(os.Stderr,"Full HTTP response: %v\n",r)}responseContent,_:=json.MarshalIndent(resp,""," ")fmt.Fprintf(os.Stdout,"Response from `FleetAutomationApi.UpdateFleetSchedule`:\n%s\n",responseContent)}
// Update a schedule returns "OK" responseimportcom.datadog.api.client.ApiClient;importcom.datadog.api.client.ApiException;importcom.datadog.api.client.v2.api.FleetAutomationApi;importcom.datadog.api.client.v2.model.FleetSchedulePatch;importcom.datadog.api.client.v2.model.FleetSchedulePatchAttributes;importcom.datadog.api.client.v2.model.FleetSchedulePatchRequest;importcom.datadog.api.client.v2.model.FleetScheduleRecurrenceRule;importcom.datadog.api.client.v2.model.FleetScheduleResourceType;importcom.datadog.api.client.v2.model.FleetScheduleResponse;importcom.datadog.api.client.v2.model.FleetScheduleStatus;importjava.util.Arrays;publicclassExample{publicstaticvoidmain(String[]args){ApiClientdefaultClient=ApiClient.getDefaultApiClient();defaultClient.setUnstableOperationEnabled("v2.updateFleetSchedule",true);FleetAutomationApiapiInstance=newFleetAutomationApi(defaultClient);FleetSchedulePatchRequestbody=newFleetSchedulePatchRequest().data(newFleetSchedulePatch().attributes(newFleetSchedulePatchAttributes().name("Weekly Production Agent Updates").query("env:prod AND service:web").rule(newFleetScheduleRecurrenceRule().daysOfWeek(Arrays.asList("Mon","Wed","Fri")).maintenanceWindowDuration(1200L).startMaintenanceWindow("02:00").timezone("America/New_York")).status(FleetScheduleStatus.ACTIVE).versionToLatest(0L)).type(FleetScheduleResourceType.SCHEDULE));try{FleetScheduleResponseresult=apiInstance.updateFleetSchedule("abc-def-ghi-123",body);System.out.println(result);}catch(ApiExceptione){System.err.println("Exception when calling FleetAutomationApi#updateFleetSchedule");System.err.println("Status code: "+e.getCode());System.err.println("Reason: "+e.getResponseBody());System.err.println("Response headers: "+e.getResponseHeaders());e.printStackTrace();}}}
// Update a schedule returns "OK" response
usedatadog_api_client::datadog;usedatadog_api_client::datadogV2::api_fleet_automation::FleetAutomationAPI;usedatadog_api_client::datadogV2::model::FleetSchedulePatch;usedatadog_api_client::datadogV2::model::FleetSchedulePatchAttributes;usedatadog_api_client::datadogV2::model::FleetSchedulePatchRequest;usedatadog_api_client::datadogV2::model::FleetScheduleRecurrenceRule;usedatadog_api_client::datadogV2::model::FleetScheduleResourceType;usedatadog_api_client::datadogV2::model::FleetScheduleStatus;#[tokio::main]asyncfnmain(){letbody=FleetSchedulePatchRequest::new(FleetSchedulePatch::new(FleetScheduleResourceType::SCHEDULE).attributes(FleetSchedulePatchAttributes::new().name("Weekly Production Agent Updates".to_string()).query("env:prod AND service:web".to_string()).rule(FleetScheduleRecurrenceRule::new(vec!["Mon".to_string(),"Wed".to_string(),"Fri".to_string()],1200,"02:00".to_string(),"America/New_York".to_string(),)).status(FleetScheduleStatus::ACTIVE).version_to_latest(0),),);letmutconfiguration=datadog::Configuration::new();configuration.set_unstable_operation_enabled("v2.UpdateFleetSchedule",true);letapi=FleetAutomationAPI::with_config(configuration);letresp=api.update_fleet_schedule("id".to_string(),body).await;ifletOk(value)=resp{println!("{:#?}",value);}else{println!("{:#?}",resp.unwrap_err());}}
DD_SITE="datadoghq.comus3.datadoghq.comus5.datadoghq.comdatadoghq.euap1.datadoghq.comap2.datadoghq.comuk1.datadoghq.comddog-gov.comus2.ddog-gov.com"DD_API_KEY="<DD_API_KEY>"DD_APP_KEY="<DD_APP_KEY>"cargo run
/**
* Update a schedule returns "OK" response
*/import{client,v2}from"@datadog/datadog-api-client";constconfiguration=client.createConfiguration();configuration.unstableOperations["v2.updateFleetSchedule"]=true;constapiInstance=newv2.FleetAutomationApi(configuration);constparams: v2.FleetAutomationApiUpdateFleetScheduleRequest={body:{data:{attributes:{name:"Weekly Production Agent Updates",query:"env:prod AND service:web",rule:{daysOfWeek:["Mon","Wed","Fri"],maintenanceWindowDuration: 1200,startMaintenanceWindow:"02:00",timezone:"America/New_York",},status:"active",versionToLatest: 0,},type:"schedule",},},id:"id",};apiInstance.updateFleetSchedule(params).then((data: v2.FleetScheduleResponse)=>{console.log("API called successfully. Returned data: "+JSON.stringify(data));}).catch((error: any)=>console.error(error));