- release_tracks: [ALPHA, BETA]
  help_text:
    brief: List notification channels.
    description: |
      List notification channels.

      This operation supports both --filter and --sort-by arguments.

      ## EXAMPLES
      The following command lists all notification channels where the user label "team" has
      value "foo" and where the notification channel is of an "email" type:

        $ {command} --filter='type="email" AND userLabels.team="foo"'

      The following command lists all of the email addresses alphabetically:

        $ {command} \
          --filter='type="email"' \
          --sort-by=labels.email_address \
          --format="value(labels.email_address)"

  request:
    collection: monitoring.projects.notificationChannels
    modify_request_hooks:
    - googlecloudsdk.command_lib.monitoring.hooks:ModifyListNotificationChannelsRequest
    - googlecloudsdk.command_lib.monitoring.hooks:AddOrderByToListRequest

  response:
    id_field: name

  arguments:
    resource:
      help_text: The project to list notification channels from.
      spec: !REF googlecloudsdk.command_lib.monitoring.resources:project
    params:
    - arg_name: type
      help_text: List only notification channels of this type.

  output:
    format: yaml
