DocumentDB Delete

DocumentDB Delete

Certified

Delete documents from DocumentDB

Remove one document (default) or every match when deleteMany is true. An empty filter with deleteMany can wipe the collection, so set filters carefully.

yaml
type: io.kestra.plugin.documentdb.Delete

Delete a single user document

yaml
id: delete_documentdb_user
namespace: company.documentdb

tasks:
  - id: delete_user
    type: io.kestra.plugin.documentdb.Delete
    host: "https://my-documentdb-instance.com"
    database: "myapp"
    collection: "users"
    username: "{{ secret('DOCUMENTDB_USERNAME') }}"
    password: "{{ secret('DOCUMENTDB_PASSWORD') }}"
    filter:
      email: "user.to.delete@example.com"
    deleteMany: false

Delete multiple inactive documents

yaml
id: cleanup_inactive_users
namespace: company.documentdb

tasks:
  - id: delete_inactive_users
    type: io.kestra.plugin.documentdb.Delete
    host: "https://my-documentdb-instance.com"
    database: "myapp"
    collection: "users"
    username: "{{ secret('DOCUMENTDB_USERNAME') }}"
    password: "{{ secret('DOCUMENTDB_PASSWORD') }}"
    filter:
      status: "inactive"
      last_login:
        $lt: "2022-01-01"
    deleteMany: true

Delete documents by age criteria

yaml
id: delete_old_logs
namespace: company.documentdb

tasks:
  - id: cleanup_old_logs
    type: io.kestra.plugin.documentdb.Delete
    host: "https://my-documentdb-instance.com"
    database: "logging"
    collection: "application_logs"
    username: "{{ secret('DOCUMENTDB_USERNAME') }}"
    password: "{{ secret('DOCUMENTDB_PASSWORD') }}"
    filter:
      created_at:
        $lt: "{{ now() | dateAdd(-30, 'DAYS') }}"
      level:
        $in: ["DEBUG", "INFO"]
    deleteMany: true
Properties

Target collection

Collection inside the database where the action is performed.

Target database

Database name used for the operation; expressions are rendered at runtime.

DocumentDB endpoint

Base HTTPS endpoint for the DocumentDB REST API; trailing slash is trimmed before calling /data/v1/action/*.

HTTP password

Basic-auth password for the DocumentDB API; prefer providing via secret.

HTTP username

Basic-auth username for the DocumentDB API; prefer providing via secret.

Defaultfalse

Delete all matches

Set to true to delete every document matching the filter; default false deletes only the first match.

Filter query

MongoDB-style filter that selects documents to delete. Rendered at runtime; an empty filter with deleteMany deletes every document. Example: {\"status\": \"inactive\", \"age\": {\"$gte\": 18}}

Reference (ref) of the pluginDefaults to apply to this task.

Deleted document count

Total number of documents removed by the operation.