mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-04-25 07:37:19 -04:00
145 lines
4.1 KiB
Text
145 lines
4.1 KiB
Text
[[create-connector-api]]
|
|
=== Create connector API
|
|
++++
|
|
<titleabbrev>Create connector</titleabbrev>
|
|
++++
|
|
|
|
beta::[]
|
|
|
|
.New API reference
|
|
[sidebar]
|
|
--
|
|
For the most up-to-date API details, refer to {api-es}/group/endpoint-connector[Connector APIs].
|
|
--
|
|
|
|
Creates an Elastic connector.
|
|
Connectors are {es} integrations that bring content from third-party data sources, which can be deployed on {ecloud} or hosted on your own infrastructure:
|
|
|
|
* *Managed connectors* are a managed service on {ecloud}
|
|
* *Self-managed connectors* are self-hosted on your infrastructure
|
|
|
|
Find a list of all supported service types in the <<es-connectors,connectors documentation>>.
|
|
|
|
To get started with Connector APIs, check out <<es-connectors-tutorial-api, our tutorial>>.
|
|
|
|
|
|
[source,console]
|
|
--------------------------------------------------
|
|
PUT _connector/my-connector
|
|
{
|
|
"index_name": "search-google-drive",
|
|
"name": "My Connector",
|
|
"service_type": "google_drive"
|
|
}
|
|
--------------------------------------------------
|
|
////
|
|
[source,console]
|
|
----
|
|
DELETE _connector/my-connector
|
|
----
|
|
// TEST[continued]
|
|
////
|
|
|
|
[[create-connector-api-request]]
|
|
==== {api-request-title}
|
|
* `POST _connector`
|
|
|
|
* `PUT _connector/<connector_id>`
|
|
|
|
|
|
[[create-connector-api-prereqs]]
|
|
==== {api-prereq-title}
|
|
|
|
* To sync data using self-managed connectors, you need to deploy the <<es-connectors-deploy-connector-service,Elastic connector service>>. on your own infrastructure. This service runs automatically on Elastic Cloud for Elastic managed connectors.
|
|
* The `service_type` parameter should reference a supported third-party service. See the available service types for <<es-native-connectors,Elastic managed>> and <<es-build-connector,self-managed>> connectors. This can also reference the service type of your custom connector.
|
|
|
|
|
|
[[create-connector-api-desc]]
|
|
==== {api-description-title}
|
|
|
|
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.
|
|
|
|
[[create-connector-api-path-params]]
|
|
==== {api-path-parms-title}
|
|
|
|
`<connector_id>`::
|
|
(Optional, string) Unique identifier of a connector.
|
|
|
|
|
|
[role="child_attributes"]
|
|
[[create-connector-api-request-body]]
|
|
==== {api-request-body-title}
|
|
|
|
`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 {kib}.
|
|
|
|
`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 <<es-native-connectors,Elastic managed>> and <<es-build-connector,self-managed>> connectors.
|
|
|
|
|
|
[role="child_attributes"]
|
|
[[create-connector-api-response-body]]
|
|
==== {api-response-body-title}
|
|
|
|
`id`::
|
|
(string) The ID associated with the connector document. Returned when using a POST request.
|
|
|
|
`result`::
|
|
(string) The result of the indexing operation, `created` or `updated`. Returned when using a PUT request.
|
|
|
|
[[create-connector-api-response-codes]]
|
|
==== {api-response-codes-title}
|
|
|
|
`200`::
|
|
Indicates that an existing connector was updated successfully.
|
|
|
|
`201`::
|
|
Indicates that the connector was created successfully.
|
|
|
|
`400`::
|
|
Indicates that the request was malformed.
|
|
|
|
[[create-connector-api-example]]
|
|
==== {api-examples-title}
|
|
|
|
[source,console]
|
|
----
|
|
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:
|
|
|
|
[source,console-result]
|
|
----
|
|
{
|
|
"result": "created",
|
|
"id": "my-connector"
|
|
}
|
|
----
|
|
////
|
|
[source,console]
|
|
----
|
|
DELETE _connector/my-connector
|
|
----
|
|
// TEST[continued]
|
|
////
|