Create connector API
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:
- Managed connectors are a managed service on Elastic Cloud
- Self-managed connectors are self-hosted on your infrastructure
Find a list of all supported service types in the connectors documentation.
To get started with Connector APIs, check out our tutorial.
resp = client.connector.put(
connector_id="my-connector",
index_name="search-google-drive",
name="My Connector",
service_type="google_drive",
)
print(resp) response = client.connector.put(
connector_id: 'my-connector',
body: {
index_name: 'search-google-drive',
name: 'My Connector',
service_type: 'google_drive'
}
)
puts response const response = await client.connector.put({
connector_id: "my-connector",
index_name: "search-google-drive",
name: "My Connector",
service_type: "google_drive",
});
console.log(response); PUT _connector/my-connector
{
"index_name": "search-google-drive",
"name": "My Connector",
"service_type": "google_drive"
} Request
-
POST _connector -
PUT _connector/<connector_id>
Prerequisites
- 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.
- The
service_typeparameter should reference a supported third-party service. See the available service types for Elastic managed and self-managed connectors. This can also reference the service type of your custom connector.
Description
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 parameters
-
<connector_id> - (Optional, string) Unique identifier of a connector.
Request body
-
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 managed 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 Elastic managed and self-managed connectors.
Response body
-
id - (string) The ID associated with the connector document. Returned when using a POST request.
-
result - (string) The result of the indexing operation,
createdorupdated. Returned when using a PUT request.
Response codes
-
200 - Indicates that an existing connector was updated successfully.
-
201 - Indicates that the connector was created successfully.
-
400 - Indicates that the request was malformed.
Examples
resp = client.connector.put(
connector_id="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="en",
)
print(resp) const response = await client.connector.put({
connector_id: "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: "en",
});
console.log(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": "en"
} The API returns the following result:
{
"result": "created",
"id": "my-connector"
}
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/create-connector-api.html