Create connector APIedit
This functionality is in beta and is subject to change. The design and code is less mature than official GA features and is being provided as-is with no warranties. Beta features are not subject to the support SLA of official GA features.
Creates an Elastic connector. Connectors are Elasticsearch integrations that bring content from third-party data sources, which can be deployed on Elastic Cloud or hosted on your own infrastructure:
- Native connectors are a managed service on Elastic Cloud
- Connector clients are self-managed on your infrastructure
Find a list of all supported service types in the connectors documentation.
To get started with Connector APIs, check out the tutorial.
response = client.connector.put( connector_id: 'my-connector', body: { index_name: 'search-google-drive', name: 'My Connector', service_type: 'google_drive' } ) puts response
PUT _connector/my-connector { "index_name": "search-google-drive", "name": "My Connector", "service_type": "google_drive" }
Prerequisitesedit
- 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 native connectors.
-
The
service_type
parameter should reference a supported third-party service. See the available service types for native and self-managed connectors. This can also reference the service type of your custom connector.
Descriptionedit
Creates a connector document in the internal index and initializes its configuration, filtering, and scheduling with default values. These values can be updated later as needed.
Path parametersedit
-
<connector_id>
- (Required, string) Unique identifier of a connector.
Request bodyedit
-
description
- (Optional, string) The description of the connector.
-
index_name
- (Optional, string) The target index to sync data. If the index doesn’t exist, it will be created upon the first sync.
-
name
- (Optional, string) The name of the connector. Setting the connector name is recommended when managing connectors in Kibana.
-
is_native
-
(Optional, boolean) Indicates if it’s a native connector. Defaults to
false
. -
language
- (Optional, string) Language analyzer for the data. Limited to supported languages.
-
service_type
- (Optional, string) Connector service type. Can reference Elastic-supported third-party services or a custom connector type. See the available service types for native and self-managed connectors.
Response bodyedit
-
id
- (string) The ID associated with the connector document. Returned when using a POST request.
-
result
-
(string) The result of the indexing operation,
created
orupdated
. Returned when using a PUT request.
Response codesedit
-
200
- Indicates that an existing connector was updated successfully.
-
201
- Indicates that the connector was created successfully.
-
400
- Indicates that the request was malformed.
Examplesedit
response = client.connector.put( connector_id: 'my-connector', body: { index_name: 'search-google-drive', name: 'My Connector', description: 'My Connector to sync data to Elastic index from Google Drive', service_type: 'google_drive', language: 'english' } ) puts response
PUT _connector/my-connector { "index_name": "search-google-drive", "name": "My Connector", "description": "My Connector to sync data to Elastic index from Google Drive", "service_type": "google_drive", "language": "english" }
The API returns the following result:
{ "result": "created" }