---
title: "List Event Subscriptions"
method: GET
path: "/groups/{groupId}/apps/{appId}/event_subscriptions"
tags: ["event-subscriptions"]
---

# List Event Subscriptions

`GET /groups/{groupId}/apps/{appId}/event_subscriptions`

Get all event subscriptions.

## Response `200`

Success.

- EventSubscription[] — A list of all event subscriptions for the app. To see Device Sync translator subscriptions, call this endpoint with the query parameter `?type=SYNCTRANSLATOR`.
  - union — A subscription to a change event stream.
    - union
      - object
        - `_id` string — The trigger's unique ID.
        - `name` string, required — The trigger's name.
        - `type` 'DATABASE', required — The trigger type. For database triggers, this value is always `"DATABASE"`.
        - `disabled` boolean — If `true`, the trigger is disabled and does not listen for events or execute.
        - `config` object, required — An object that defines configuration values for the trigger.
          - `service_id` string, required — The `_id` value of a linked MongoDB data source that contains the watched collection. You can list services with the [Get all services endpoint](#operation/adminListServices). Data sources are services whose `type` is "mongodb-atlas". Use the `_id` value for the data source you want to link to the Trigger.
          - `database` string — The name of a database in the linked data source. If you omit this parameter, the Source Type changes to "Deployment." However, shared tier infrastructure does not support deployment changestreams. If you omit the 'database' parameter, you receive the 'deployment changestreams are not supported on shared tier clusters' error. Supply the database parameter to resolve this error.
          - `collection` string — The name of a collection in the specified database. The trigger listens to events from this collection. If you omit this parameter, the Source Type changes to "Database."
          - `operation_types` string[], required — The types of MongoDB change event that the trigger listens for. Valid operation types for all triggers include: - `"INSERT"` - `"UPDATE"` - `"REPLACE"` - `"DELETE"` Additional valid operation types for database and deployment triggers include: - `"CREATE_COLLECTION"` - `"MODIFY_COLLECTION"` - `"RENAME_COLLECTION"` - `"DROP_COLLECTION"` - `"SHARD_COLLECTION"` - `"RESHARD_COLLECTION"` - `"REFINE_COLLECTION_SHARD_KEY"` Additional valid operation types for deployment triggers include: - `"DROP_DATABASE"` For more information, refer to [Trigger Configuration](https://www.mongodb.com/docs/atlas/app-services/triggers/database-triggers/#configuration).
          - `match` object — A [$match](https://www.mongodb.com/docs/manual/reference/operator/aggregation/match) expression filters change events. The trigger will only fire if the expression evaluates to true for a given change event.
          - `project` object — A [$project](https://www.mongodb.com/docs/manual/reference/operator/aggregation/project/) expression returns only the specified fields. You can include or exclude specific fields, or include newly-computed fields.
          - `full_document` boolean — If `true`, indicates that `UPDATE` change events should include the most current [majority-committed](https://www.mongodb.com/docs/manual/reference/read-concern-majority/) version of the modified document in the `fullDocument` field.
          - `full_document_before_change` boolean — If true, indicates that `UPDATE` change events should include a snapshot of the modified document from immediately before the update was applied. You must enable [document preimages](https://www.mongodb.com/docs/atlas/app-services/mongodb/preimages/) for your cluster to include these snapshots.
          - `skip_catchup_events` boolean — If `true`, enabling the Trigger after it was disabled will not invoke events that occurred while the Trigger was disabled.
          - `tolerate_resume_errors` boolean — If `true`, when this Trigger's resume token cannot be found in the cluster's oplog, the Trigger automatically resumes processing events at the next relevant change stream event. All change stream events from when the Trigger was suspended until the Trigger resumes execution do not have the Trigger fire for them.
          - `maximum_throughput` boolean — If `true`, the trigger will use the [maximize throughput](https://www.mongodb.com/docs/atlas/app-services/triggers/database-triggers/#std-label-triggers-maximum-throughput) option.
          - `unordered` boolean — If `true`, event ordering is disabled and this Trigger can process events in parallel. If `false`, event ordering is enabled and the Trigger executes events serially.
        - `function_id` string — The ID of the function that the trigger calls when it fires. This value is the same as `event_processors.FUNCTION.function_id`. You can either define the value here or in `event_processors.FUNCTION.function_id`. The App Services backend duplicates the value to the configuration location where you did not define it. For example, if you define `function_id`, the backend duplicates it to `event_processors.FUNCTION.function_id`. If you define `function_id`, `event_processors` is not required. You must provide either `function_id` or `event_processors` when updating a trigger.
        - `function_name` string — The name of the function that the trigger calls when it fires, i.e. the function described by `function_id`. This value is the same as `event_processors.FUNCTION.function_name`. You can either define the value here or in `event_processors.FUNCTION.function_name`. The App Services backend duplicates the value to the configuration location where you did not define it. For example, if you define `function_name`, the backend duplicates it to `event_processors.FUNCTION.function_name`. If you define `function_name`, `event_processors` is not required. You must provide either `function_name` or `event_processors` when updating a trigger.
        - `event_processors` object, required — An object where each field name is an event processor ID and each value is an object that configures its corresponding event processor. For an example configuration object, see [Send Trigger Events to AWS EventBridge](https://www.mongodb.com/docs/atlas/app-services/triggers/aws-eventbridge#std-label-event_processor_example).
          - `FUNCTION` object
            - `config` object
              - …
          - `AWS_EVENTBRIDGE` object
            - `config` object
              - …
        - `error_handler` object — An object that defines custom error handling for an AWS EventBridge trigger. Valid only for `"DATABASE"` type triggers with `"AWS_EVENTBRIDGE"` event processors.
          - `config` object
            - `enabled` boolean — If 'true', custom error handling is enabled for the AWS EventBridge trigger.
            - `function_id` string — The ID of the function invoked when the AWS EventBridge trigger fails and cannot be successfully retried.
      - object
        - `_id` string — The trigger's unique ID.
        - `name` string, required — The trigger's name.
        - `type` 'AUTHENTICATION', required — The trigger type. For authentication triggers, this value is always `"AUTHENTICATION"`.
        - `disabled` boolean — If `true`, the trigger is disabled and does not listen for events or execute.
        - `config` object, required — An object that defines configuration values for the trigger.
          - `operation_type` 'LOGIN' | 'CREATE' | 'DELETE', required — The type of authentication event that the trigger listens for.
          - `providers` 'anon-user' | 'api-key' | 'custom-token' | 'custom-function' | 'local-userpass' | 'oauth2-apple' | 'oauth2-facebook' | 'oauth2-google', required — The type(s) of authentication provider that the trigger listens to.
        - `function_id` string — The ID of the function that the trigger calls when it fires. This value is the same as `event_processors.FUNCTION.function_id`. You can either define the value here or in `event_processors.FUNCTION.function_id`. The App Services backend duplicates the value to the configuration location where you did not define it. For example, if you define `function_id`, the backend duplicates it to `event_processors.FUNCTION.function_id`. If you define `function_id`, `event_processors` is not required. You must provide either `function_id` or `event_processors` when updating a trigger.
        - `function_name` string — The name of the function that the trigger calls when it fires, i.e. the function described by `function_id`. This value is the same as `event_processors.FUNCTION.function_name`. You can either define the value here or in `event_processors.FUNCTION.function_name`. The App Services backend duplicates the value to the configuration location where you did not define it. For example, if you define `function_name`, the backend duplicates it to `event_processors.FUNCTION.function_name`. If you define `function_name`, `event_processors` is not required. You must provide either `function_name` or `event_processors` when updating a trigger.
        - `event_processors` object, required — An object where each field name is an event processor ID and each value is an object that configures its corresponding event processor. For an example configuration object, see [Send Trigger Events to AWS EventBridge](https://www.mongodb.com/docs/atlas/app-services/triggers/aws-eventbridge#std-label-event_processor_example).
          - `FUNCTION` object
            - `config` object
              - …
          - `AWS_EVENTBRIDGE` object
            - `config` object
              - …
      - object
        - `_id` string — The trigger's unique ID.
        - `name` string, required — The trigger's name.
        - `type` 'SCHEDULED', required — The trigger type. For scheduled triggers, this value is always `"SCHEDULED"`.
        - `disabled` boolean — If `true`, the trigger is disabled and does not listen for events or execute.
        - `config` object, required — An object that defines configuration values for the trigger.
          - `schedule` string, required — A [cron expression](https://www.mongodb.com/docs/atlas/app-services/triggers/scheduled-triggers/#cron-expressions) that specifies when the trigger executes.
          - `skip_catchup_events` boolean — If `true`, enabling the trigger after it was disabled will not invoke events that occurred while the trigger was disabled.
        - `function_id` string — The ID of the function that the trigger calls when it fires. This value is the same as `event_processors.FUNCTION.function_id`. You can either define the value here or in `event_processors.FUNCTION.function_id`. The App Services backend duplicates the value to the configuration location where you did not define it. For example, if you define `function_id`, the backend duplicates it to `event_processors.FUNCTION.function_id`. If you define `function_id`, `event_processors` is not required. You must provide either `function_id` or `event_processors` when updating a trigger.
        - `function_name` string — The name of the function that the trigger calls when it fires, i.e. the function described by `function_id`. This value is the same as `event_processors.FUNCTION.function_name`. You can either define the value here or in `event_processors.FUNCTION.function_name`. The App Services backend duplicates the value to the configuration location where you did not define it. For example, if you define `function_name`, the backend duplicates it to `event_processors.FUNCTION.function_name`. If you define `function_name`, `event_processors` is not required. You must provide either `function_name` or `event_processors` when updating a trigger.
        - `event_processors` object, required — An object where each field name is an event processor ID and each value is an object that configures its corresponding event processor. For an example configuration object, see [Send Trigger Events to AWS EventBridge](https://www.mongodb.com/docs/atlas/app-services/triggers/aws-eventbridge#std-label-event_processor_example).
          - `FUNCTION` object
            - `config` object
              - …
          - `AWS_EVENTBRIDGE` object
            - `config` object
              - …
    - object
      - `_id` string
      - `name` string
      - `type` 'SYNCTRANSLATOR'
      - `function_id` string
      - `disabled` boolean
      - `config` unknown
      - `last_modified` number

---

[API](https://skmtc.net/mongodb/apis/mongodb-atlas-app-services-admin-api.md) · [All operations](https://skmtc.net/mongodb/apis/mongodb-atlas-app-services-admin-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mongodb/mongodb-atlas-app-services-admin-api/revisions/1365ab72bc03/schema)
