Update the connector features Technical preview

PUT /_connector/{connector_id}/_features

Update the connector features in the connector document. This API can be used to control the following aspects of a connector:

  • document-level security
  • incremental syncs
  • advanced sync rules
  • basic sync rules

Normally, the running connector service automatically manages these features. However, you can use this API to override the default behavior.

To sync data using self-managed connectors, you need to deploy the Elastic connector service on your own infrastructure. This service runs automatically on Elastic Cloud for Elastic managed connectors.

Path parameters

  • connector_id string Required

    The unique identifier of the connector to be updated.

application/json

Body Required

  • features object Required
    Hide features attributes Show features attributes object
    • document_level_security object
      Hide document_level_security attribute Show document_level_security attribute object
      • enabled boolean Required
    • incremental_sync object
      Hide incremental_sync attribute Show incremental_sync attribute object
      • enabled boolean Required
    • native_connector_api_keys object
      Hide native_connector_api_keys attribute Show native_connector_api_keys attribute object
      • enabled boolean Required
    • sync_rules object
      Hide sync_rules attributes Show sync_rules attributes object
      • advanced object
        Hide advanced attribute Show advanced attribute object
        • enabled boolean Required
      • basic object
        Hide basic attribute Show basic attribute object
        • enabled boolean Required

Responses

  • 200 application/json
    Hide response attribute Show response attribute object
    • result string Required

      Values are created, updated, deleted, not_found, or noop.

PUT /_connector/{connector_id}/_features
PUT _connector/my-connector/_features { "features": { "document_level_security": { "enabled": true }, "incremental_sync": { "enabled": true }, "sync_rules": { "advanced": { "enabled": false }, "basic": { "enabled": true } } } }
resp = client.connector.update_features( connector_id="my-connector", features={ "document_level_security": { "enabled": True }, "incremental_sync": { "enabled": True }, "sync_rules": { "advanced": { "enabled": False }, "basic": { "enabled": True } } }, )
const response = await client.connector.updateFeatures({ connector_id: "my-connector", features: { document_level_security: { enabled: true, }, incremental_sync: { enabled: true, }, sync_rules: { advanced: { enabled: false, }, basic: { enabled: true, }, }, }, });
response = client.connector.update_features( connector_id: "my-connector", body: { "features": { "document_level_security": { "enabled": true }, "incremental_sync": { "enabled": true }, "sync_rules": { "advanced": { "enabled": false }, "basic": { "enabled": true } } } } )
$resp = $client->connector()->updateFeatures([ "connector_id" => "my-connector", "body" => [ "features" => [ "document_level_security" => [ "enabled" => true, ], "incremental_sync" => [ "enabled" => true, ], "sync_rules" => [ "advanced" => [ "enabled" => false, ], "basic" => [ "enabled" => true, ], ], ], ], ]);
curl -X PUT -H "Authorization: ApiKey $ELASTIC_API_KEY" -H "Content-Type: application/json" -d '{"features":{"document_level_security":{"enabled":true},"incremental_sync":{"enabled":true},"sync_rules":{"advanced":{"enabled":false},"basic":{"enabled":true}}}}' "$ELASTICSEARCH_URL/_connector/my-connector/_features"
Request examples
{ "features": { "document_level_security": { "enabled": true }, "incremental_sync": { "enabled": true }, "sync_rules": { "advanced": { "enabled": false }, "basic": { "enabled": true } } } }
{ "features": { "document_level_security": { "enabled": true } } }
Response examples (200)
{ "result": "updated" }