get:
  tags:
    - Clients and Tunnels
  summary: >-
    List all active and disconnected client connections. 
    By default sorted by IDin asc order
  operationId: ClientsGet
  parameters:
    - name: sort
      in: query
      description: >-
        Sort option `-<field>`(desc) or `<field>`(asc). `<field>` can be one of
        `'id', 'name', 'os', 'hostname', 'version'`. For example, `&sort=-name`
        or `&sort=hostname`, etc
      schema:
        type: string
    - name: filter
      in: query
      description: >-
        Filter option `filter[<FIELD>]=<VALUE>` or
        `filter[<FIELD>|<FIELD>]=<VALUE>,<VALUE>` for OR conditions.
         `<FIELD>` can be one of `'id', 'name', 'os', 'os_arch', 'os_family', 'os_kernel', 'os_full_name', 'os_version', 'os_virtualization_system', 'os_virtualization_role', 'cpu_family', 'cpu_model', 'cpu_model_name', 'cpu_vendor', 'num_cpus', 'timezone', 'hostname', 'ipv4', 'ipv6', 'tags', 'version', 'address' 'client_auth_id', 'connection_state', 'allowed_user_groups' and 'groups'`. You can use `*` to filter on any field.
         Multiple filters are possible. You can use `*` wildcards for partial matches. Text matching is case insensitive.
         Examples:
         `filter[os_full_name]=Ubuntu 20.04`
         `filter[os_full_name]=Ubuntu 20.04,Ubuntu 18.04`
         `filter[os_full_name|os]=Ubuntu*`
         `filter[*]=*Ubuntu*,*10.10.*,*Redhat*`
      schema:
        type: string
    - name: fields[<RESOURCE>]
      in: query
      description: >-
        Fields to be returned. It should be provided in the format as
        `fields[<RESOURCE>]=<FIELDS>`, where `<RESOURCE>` is `clients` and
        `<FIELDS>` is a comma separated list of fields. Example:
        `fields[clients]=id,name`. If no fields are specified, only id, name and
        hostname will be returned.
      schema:
        type: string
    - name: page
      in: query
      description: >-
        Pagination options `page[limit]` and `page[offset]` can be used to get
        more than the first page of results. Default limit is 50 and maximum is
        500. The `count` property in meta shows the total number of results.
      schema:
        type: integer
  responses:
    '200':
      description: success response
      content:
        application/json:
          schema:
            type: object
            properties:
              data:
                type: array
                items:
                  $ref: ../components/schemas/Client.yaml
              meta:
                type: object
                properties:
                  count:
                    type: integer
    '400':
      description: invalid request parameters
      content:
        application/json:
          schema:
            $ref: ../components/schemas/ErrorPayload.yaml
    '500':
      description: invalid operation
      content:
        application/json:
          schema:
            $ref: ../components/schemas/ErrorPayload.yaml
