- release_tracks: [BETA]
  help_text:
    brief: Create a new Beyondcorp AppConnector Gateway.
    description: Create a new Beyondcorp AppConnector Gateway.
    examples: |
      The following command creates a Gateway with ID ``my-gateway'' in the default user project:

        $ {command} my-gateway \
            --location=us-central1 \
            --host-type=regional-mig

      The following command creates a Gateway with ID ``my-gateway'' with explicit project value
      for all required and optional parameters:

        $ {command} my-gateway \
            --project=projectId \
            --location=us-central1 \
            --host-type=regional-mig \
            --type=tcp \
            --labels='foo=bar' \
            --display-name=gateway-display-name
            --async

  request:
    collection: beyondcorp.projects.locations.appGateways
    BETA:
      api_version: v1

  async:
    collection: beyondcorp.projects.locations.operations

  arguments:
    resource:
      spec: !REF googlecloudsdk.command_lib.beyondcorp.app.resources:appgateway
      help_text: The Beyondcorp appconnector gateway you want to create.

    params:
    - _REF_: googlecloudsdk.command_lib.beyondcorp.app.gateways.flags:host_type
    - _REF_: googlecloudsdk.command_lib.beyondcorp.app.gateways.flags:gateway_type
    - _REF_: googlecloudsdk.command_lib.beyondcorp.app.gateways.flags:display_name

    labels:
      api_field: appGateway.labels
