Update connector scheduling APIedit

This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features.

Updates the scheduling configuration of a connector.


PUT _connector/<connector_id>/_scheduling


  • To sync data using connectors, it’s essential to have the Elastic connectors service running.
  • The connector_id parameter should reference an existing connector.

Path parametersedit

(Required, string)

Request bodyedit

(Required, object) The scheduling configuration for the connector. This configuration determines frequency of synchronization operations for the connector.

The scheduling configuration includes the following attributes, each represented as a ScheduleConfig object:

  • access_control (Required, ScheduleConfig object) Defines the schedule for synchronizing access control settings of the connector.
  • full (Required, ScheduleConfig object) Defines the schedule for a full content syncs.
  • incremental (Required, ScheduleConfig object) Defines the schedule for incremental content syncs.

Each ScheduleConfig object includes the following sub-attributes:

  • enabled (Required, boolean) A flag that enables or disables the scheduling.
  • interval (Required, string) A CRON expression representing the sync schedule. This expression defines the grequency at which the sync operations should occur. It must be provided in a valid CRON format.

Response codesedit

Connector scheduling field was successfully updated.
The connector_id was not provided or the request payload was malformed.
404 (Missing resources)
No connector matching connector_id could be found.


The following example updates the scheduling property for the connector with ID my-connector:

response = client.connector.update_scheduling(
  connector_id: 'my-connector',
  body: {
    scheduling: {
      access_control: {
        enabled: true,
        interval: '0 10 0 * * ?'
      full: {
        enabled: true,
        interval: '0 20 0 * * ?'
      incremental: {
        enabled: false,
        interval: '0 30 0 * * ?'
puts response
PUT _connector/my-connector/_scheduling
    "scheduling": {
        "access_control": {
            "enabled": true,
            "interval": "0 10 0 * * ?"
        "full": {
            "enabled": true,
            "interval": "0 20 0 * * ?"
        "incremental": {
            "enabled": false,
            "interval": "0 30 0 * * ?"
    "result": "updated"