elasticsearch/docs/reference/connector/apis/delete-connector-api.asciidoc
Jedr Blaszyk 750a0ab846
[Connector API] Support soft-deletes of connectors (#118669)
* [Connector API] Add interface for soft-deletes

* Define connector deleted system index

* Got soft-delete logic working

* Add unit tests

* Add yaml e2e test and attempt to update permissions

* Fix permissions

* Update docs

* Fix docs

* Update docs/changelog/118282.yaml

* Change logic

* Fix tests

* Remove unnecessary privilege from yaml rest test

* Update changelog

* Update docs/changelog/118669.yaml

* Adapt yaml tests

* Undo changes to muted-tests.yml

* Fix compilation issue after other PR got merged

* Exclude soft-deleted connector from checks about index_name already in use

* Update docs/reference/connector/apis/get-connector-api.asciidoc

Co-authored-by: Tim Grein <tim@4greins.de>

* Update rest-api-spec/src/main/resources/rest-api-spec/api/connector.list.json

Co-authored-by: Tim Grein <tim@4greins.de>

* Adapt comments, add connector wire serializing test

* Introduce new transport versions for passing the delete flag

* Get rid of wire serialisation, use include_deleted instead of deleted flag

* Remove unused import

* Final tweaks

* Adapt variable name in rest layer

---------

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
Co-authored-by: Tim Grein <tim@4greins.de>
2025-01-09 12:20:28 +00:00

87 lines
2.1 KiB
Text

[[delete-connector-api]]
=== Delete connector API
++++
<titleabbrev>Delete connector</titleabbrev>
++++
beta::[]
.New API reference
[sidebar]
--
For the most up-to-date API details, refer to {api-es}/group/endpoint-connector[Connector APIs].
--
Soft-deletes a connector and removes associated sync jobs.
Note: this action doesn't delete any API key, ingest pipeline or data index associated with the connector. These need to be removed manually.
To get started with Connector APIs, check out <<es-connectors-tutorial-api, our tutorial>>.
[[delete-connector-api-request]]
==== {api-request-title}
`DELETE _connector/<connector_id>`
[[delete-connector-api-prereq]]
==== {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 `connector_id` parameter should reference an existing connector.
[[delete-connector-api-path-params]]
==== {api-path-parms-title}
`<connector_id>`::
(Required, string)
`delete_sync_jobs`::
(Optional, boolean) A flag indicating if associated sync jobs should be also removed. Defaults to `false`.
[[delete-connector-api-response-codes]]
==== {api-response-codes-title}
`400`::
The `connector_id` was not provided.
`404` (Missing resources)::
No connector matching `connector_id` could be found.
[[delete-connector-api-example]]
==== {api-examples-title}
The following example deletes the connector with ID `my-connector`:
////
[source, console]
--------------------------------------------------
PUT _connector/my-connector
{
"name": "My Connector",
"service_type": "google_drive"
}
PUT _connector/another-connector
{
"name": "My Connector",
"service_type": "google_drive"
}
--------------------------------------------------
// TESTSETUP
////
[source,console]
----
DELETE _connector/another-connector?delete_sync_jobs=true
----
[source,console-result]
----
{
"acknowledged": true
}
----
The following example deletes the connector with ID `another-connector` and its associated sync jobs.