Extreme Networks Configuration - User Management API

User Group/End User/PCG/PPSK Classification

Operations 23

GET /email-templates List Email templates #
GET /sms-templates List SMS templates #
GET /endusers List end users #
POST /endusers Create an end user #
PUT /endusers/{id} Update an end user #
DELETE /endusers/{id} Delete end user by ID #
POST /endusers/{id}/:regenerate-password Regenerate a new password for the end user #
GET /usergroups List user groups #
POST /usergroups Create user group #
PUT /usergroups/{id} Update user group #
DELETE /usergroups/{id} Delete user group by ID #
GET /pcgs/key-based List Key-based Private Client Groups #
POST /pcgs/key-based [LRO] Create a Key-based Private Client Group #
POST /pcgs/key-based/network-policy-{policyId}/:onboard [LRO] Create Key-based PCG in network policy #
DELETE /pcgs/key-based/network-policy-{policyId} Delete Private Client Group from a network policy #
GET /pcgs/key-based/network-policy-{policyId}/users Get users for a PCG-enabled network policy #
POST /pcgs/key-based/network-policy-{policyId}/users [LRO] Add users to a PCG-enabled network policy #
PUT /pcgs/key-based/network-policy-{policyId}/users Replace all users in a PCG-enabled network policy #
DELETE /pcgs/key-based/network-policy-{policyId}/users Delete users from a PCG-enabled network policy #
GET /pcgs/key-based/network-policy-{policyId}/port-assignments Get device port assignments in network policy #
POST /pcgs/key-based/network-policy-{policyId}/port-assignments Assign ports to devices in network policy #
POST /pcgs/key-based/network-policy-{policyId}/keys/:generate Generate shared keys for users in network policy #
POST /pcgs/key-based/network-policy-{policyId}/keys/:email Send keys to users in network policy via Email #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/extreme-networks-configuration-user-management-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

extreme-networks-configuration-user-management-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: ExtremeCloud IQ Account Configuration - User Management API
  description: 'ExtremeCloud IQ™ API allows customers and partners to create solutions for the management, monitoring, and provisioning

    of any ExtremeCloud IQ™ environment.


    All related resources and documentation are available at [ExtremeCloud IQ Developer Portal](https://developer.extremecloudiq.com/).

    Please check [Get Started and Tutorial](https://developer.extremecloudiq.com/documentation/) to understand how to use the APIs.


    Get the [latest OpenAPI definition](https://github.com/extremenetworks/ExtremeCloudIQ-OpenAPI/blob/main/xcloudiq-openapi.yaml)

    from [ExtremeCloud IQ OpenAPI GitHub repository](https://github.com/extremenetworks/ExtremeCloudIQ-OpenAPI).


    Please have a valid [ExtremeCloud IQ](https://extremecloudiq.com/) account before getting started.

    If you don''t have one, please [register a new account](https://www.extremenetworks.com/cloud-networking/).'
  termsOfService: https://www.extremenetworks.com/company/legal/terms-of-use/
  contact:
    name: Extreme Networks Support
    url: https://www.extremenetworks.com/support
    email: support@extremenetworks.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 25.9.0-36
servers:
- url: https://api.extremecloudiq.com
  description: ExtremeCloud IQ REST API Server
tags:
- name: Configuration - User Management
  description: User Group/End User/PCG/PPSK Classification
paths:
  /email-templates:
    get:
      tags:
      - Configuration - User Management
      summary: List Email templates
      description: List all Email notification templates.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_list_email_templates
      operationId: listEmailTemplates
      parameters:
      - name: passwordType
        in: query
        description: The password type
        required: false
        schema:
          $ref: '#/components/schemas/XiqPasswordType'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/XiqEmailTemplate'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /sms-templates:
    get:
      tags:
      - Configuration - User Management
      summary: List SMS templates
      description: List all SMS notification templates.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_list_sms_templates
      operationId: listSmsTemplates
      parameters:
      - name: passwordType
        in: query
        description: The password type
        required: false
        schema:
          $ref: '#/components/schemas/XiqPasswordType'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/XiqSmsTemplate'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /endusers:
    get:
      tags:
      - Configuration - User Management
      summary: List end users
      description: List a page of end users.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_list_end_users
      operationId: listEndUsers
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/limit'
      - name: user_group_ids
        in: query
        description: The user group IDs
        required: false
        schema:
          type: array
          items:
            type: integer
            format: int64
      - name: usernames
        in: query
        description: The list of username
        required: false
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedXiqEndUser'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    post:
      tags:
      - Configuration - User Management
      summary: Create an end user
      description: Create a new end user.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_create_end_user
      operationId: createEndUser
      requestBody:
        description: Create end user request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqCreateEndUserRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqEndUser'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /endusers/{id}:
    put:
      tags:
      - Configuration - User Management
      summary: Update an end user
      description: Update a specific end user.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_update_end_user
      operationId: updateEndUser
      parameters:
      - $ref: '#/components/parameters/id'
      requestBody:
        description: Update end user request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqUpdateEndUserRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqEndUser'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    delete:
      tags:
      - Configuration - User Management
      summary: Delete end user by ID
      description: Delete a specific end user.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_delete_end_user
      operationId: deleteSsidUser
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: OK
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /endusers/{id}/:regenerate-password:
    post:
      tags:
      - Configuration - User Management
      summary: Regenerate a new password for the end user
      description: Update the end user's password with a system generated password.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_regenerate_end_user_password
      operationId: regenerateEndUserPassword
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqRegenerateEndUserPasswordResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /usergroups:
    get:
      tags:
      - Configuration - User Management
      summary: List user groups
      description: List a page of user groups.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_list_user_groups
      operationId: listUserGroups
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/limit'
      - name: password_db_location
        in: query
        description: The password DB location
        required: false
        schema:
          $ref: '#/components/schemas/XiqPasswordDbLocation'
      - name: password_type
        in: query
        description: The password type
        required: false
        schema:
          $ref: '#/components/schemas/XiqPasswordType'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedXiqUserGroup'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    post:
      tags:
      - Configuration - User Management
      summary: Create user group
      description: Create a new user group.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_create_user_group
      operationId: createUserGroup
      requestBody:
        description: Create user group request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqCreateUserGroupRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqUserGroup'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /usergroups/{id}:
    put:
      tags:
      - Configuration - User Management
      summary: Update user group
      description: Update existing user group information.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_update_user_group
      operationId: updateUserGroup
      parameters:
      - $ref: '#/components/parameters/id'
      requestBody:
        description: Update user-group request body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqUpdateUserGroupRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqUserGroup'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    delete:
      tags:
      - Configuration - User Management
      summary: Delete user group by ID
      description: Delete the user-group for the specified ID.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_delete_user_group
      operationId: deleteUserGroup
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: OK
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based:
    get:
      tags:
      - Configuration - User Management
      summary: List Key-based Private Client Groups
      description: List all Key-based Private Client Groups.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_list_all_key_based_pcg_entries
      operationId: listKeyBasedPrivateClientGroups
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/XiqKeyBasedPcg'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    post:
      tags:
      - Configuration - User Management
      summary: ' [LRO] Create a Key-based Private Client Group'
      description: Setup a Key-based Private Client Group, including network policy, user, user group, SSID, etc.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_initiate_key_based_pcg
      operationId: setupKeyBasedPrivateClientGroupNetworkPolicy
      parameters:
      - $ref: '#/components/parameters/async'
      requestBody:
        description: The request to setup Key-based PCG network policy
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqCreateKeyBasedPcgNetworkPolicyRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqCreateKeyBasedPcgNetworkPolicyResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based/network-policy-{policyId}/:onboard:
    post:
      tags:
      - Configuration - User Management
      summary: ' [LRO] Create Key-based PCG in network policy'
      description: Create a Key-based Private Client Group for a specific network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_create_key_based_pcg_data
      operationId: onboardKeyBasedPrivateClientGroup
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      - $ref: '#/components/parameters/async'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqOnboardKeyBasedPcgRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqOnboardKeyBasedPcgResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based/network-policy-{policyId}:
    delete:
      tags:
      - Configuration - User Management
      summary: Delete Private Client Group from a network policy
      description: Delete Private Client Group settings from a network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_delete_key_based_pcg
      operationId: deletePcg
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      - name: ids
        in: query
        description: The IDs of the Key-based PCG entity to be deleted from network policy
        required: true
        schema:
          type: array
          items:
            type: integer
            format: int64
      responses:
        '202':
          description: Accepted
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based/network-policy-{policyId}/users:
    get:
      tags:
      - Configuration - User Management
      summary: Get users for a PCG-enabled network policy
      description: Get users for a specific PCG-enabled network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_get_key_based_pcg_users_from_given_network_policy_id
      operationId: getKeyBasedPcgUsers
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/XiqKeyBasedPcgUser'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    post:
      tags:
      - Configuration - User Management
      summary: ' [LRO] Add users to a PCG-enabled network policy'
      description: Add users to a PCG-enabled network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_add_key_based_pcg_users_to_an_exists_key_based_pcg
      operationId: addKeyBasedPcgUsers
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      - $ref: '#/components/parameters/async'
      requestBody:
        description: The payload of add users to PCG-enabled network policy
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqCreateKeyBasedPcgUsersRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqAddKeyBasedPcgUsersToNetworkPolicyResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    put:
      tags:
      - Configuration - User Management
      summary: Replace all users in a PCG-enabled network policy
      description: Replace all users in a specific PCG-enabled network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_replace_all_key_based_pcg_users
      operationId: updateKeyBasedPcgUsers
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: The payload of update Key-based PCG users request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqUpdateKeyBasedPcgUsersRequest'
        required: true
      responses:
        '202':
          description: Accepted
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    delete:
      tags:
      - Configuration - User Management
      summary: Delete users from a PCG-enabled network policy
      description: Delete users from a PCG-enabled network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_delete_key_based_pcg_users
      operationId: deleteKeyBasedPcgUsers
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: The payload of delete Key-based PCG users request
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqDeleteKeyBasedPcgUsersRequest'
        required: true
      responses:
        '202':
          description: Accepted
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based/network-policy-{policyId}/port-assignments:
    get:
      tags:
      - Configuration - User Management
      summary: Get device port assignments in network policy
      description: Get port assignments for devices (only support AP150W now) in a network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_get_port_assignment_details_of_ap150w
      operationId: getPortAssignments
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqGetPortAssignmentDetailsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    post:
      tags:
      - Configuration - User Management
      summary: Assign ports to devices in network policy
      description: Assign ports for devices (only support AP150W now) in a network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_assign_ports_for_ap150w
      operationId: assignPorts
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: The payload of assign ports for devices
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/XiqPcgAssignPortsRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqPcgAssignPortsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based/network-policy-{policyId}/keys/:generate:
    post:
      tags:
      - Configuration - User Management
      summary: Generate shared keys for users in network policy
      description: Generate/regenerate shared keys for specified users in a specific PCG-enable network policy.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_generate_keys
      operationId: generateKeys
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      - name: userIds
        in: query
        description: The user IDs
        required: true
        schema:
          type: array
          items:
            type: integer
            format: int64
      responses:
        '202':
          description: Accepted
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /pcgs/key-based/network-policy-{policyId}/keys/:email:
    post:
      tags:
      - Configuration - User Management
      summary: Send keys to users in network policy via Email
      description: Send keys to specified users in PCG-enabled network policy via Email.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_email_keys
      operationId: emailKeys
      parameters:
      - name: policyId
        in: path
        description: The network policy ID
        required: true
        schema:
          type: integer
          format: int64
      - name: userIds
        in: query
        description: The user IDs
        required: true
        schema:
          type: array
          items:
            type: integer
            format: int64
      responses:
        '202':
          description: Accepted
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
components:
  schemas:
    XiqPostExpirationAction:
      type: object
      description: The type of action to take after the account expiration.
      properties:
        enable_credentials_renewal:
          type: boolean
          description: The renew user credentials option or null for other option.
        enable_delete_immediately:
          type: boolean
          description: The immediate delete option or null to schedule the delete.
        delete_after_value:
          type: integer
          description: The after expiration scheduled time to delete or null to not delete..
          format: int32
        delete_after_unit:
          $ref: '#/components/schemas/XiqDateTimeUnitType'
    XiqKeyBasedPcgUserBaseInfo:
      required:
      - email
      - name
      - user_group_name
      type: object
      properties:
        name:
          type: string
          description: The user name of key based PCG, which could not share with other exist key based PCG
        email:
          type: string
          description: The email for deliver key based PCG user password
        user_group_name:
          type: string
          description: The user group name
      description: The user's base info
    XiqPcgPortAssignmentEntryEthUserMeta:
      allOf:
      - $ref: '#/components/schemas/XiqViqEntity'
      - type: object
        description: The PCG port assignment entry of eth user info
        required:
        - name
        - password
        - user_type
        - user_group_name
        - ssids
        properties:
          name:
            type: string
            description: The user name
          password:
            type: string
            description: The user password
          user_type:
            type: string
            description: The user type
          user_group_name:
            type: string
            description: The user group name
          ssids:
            type: array
            description: The SSIDs
            items:
              type: string
              description: The SSIDs
    XiqUserGroup:
      allOf:
      - $ref: '#/components/schemas/XiqViqEntity'
      - type: object
        description: The password or PPSK notification template for user groups.
        required:
        - name
        - predefined
        - password_db_location
        - password_type
        - delivery_settings
        - password_settings
        - expiration_settings
        properties:
          name:
            type: string
            description: The user group name
          description:
            type: string
            description: The user group description
          predefined:
            type: boolean
            description: Whether it is predefined
          password_db_location:
            $ref: '#/components/schemas/XiqPasswordDbLocation'
          password_type:
            $ref: '#/components/schemas/XiqPasswordType'
          pcg_use_only:
            type: boolean
            description: Whether it's for PCG use only
          pcg_type:
            $ref: '#/components/schemas/XiqPcgType'
          ppsk_use_only:
            type: boolean
            description: Whether it's for PPSK use only
          enable_cwp_reg:
            type: boolean
            description: Whether to enable CWP registration setting
          password_settings:
            $ref: '#/components/schemas/XiqPasswordSettings'
          expiration_settings:
            $ref: '#/components/schemas/XiqExpirationSettings'
          delivery_settings:
            $ref: '#/components/schemas/XiqDeliverySettings'
    XiqPage:
      required:
      - count
      - page
      - total_count
      - total_pages
      type: object
      properties:
        page:
          type: integer
          description: The current page number
          format: int32
        count:
          type: integer
          description: The element count of the current page
          format: int32
        total_pages:
          type: integer
          description: The total page number based on request page size
          format: int32
        total_count:
          type: integer
          description: The total element count
          format: int64
    XiqCreateEndUserRequest:
      type: object
      required:
      - user_group_id
      - user_name
      properties:
        user_group_id:
          type: integer
          description: The user group ID
          format: int64
        name:
          type: string
          description: The user common name
        user_name:
          type: string
          description: The designated username, must match either the user's name, emailAddress, or phoneNumber
        organization:
          type: string
          description: The organization name
        visit_purpose:
          type: string
          description: The purpose of visit
        description:
          type: string
          description: The user description
        email_address:
          type: string
          description: The user email
        phone_number:
          type: string
          description: The user phone number
        password:
          type: string
          description: The user password, if null a random password will be generated base on the user group rule
        email_password_delivery:
          type: string
          description: The password delivery Email
        sms_password_delivery:
          type: string
          description: The password delivery SMS
        vlan_override:
          type: integer
          minimum: 1
          maximum: 4094
          description: VLAN ID override assigned to the user (range 1-4094, Optional)
          format: int32
    XiqDateTimeType:
      type: object
      description: The end date and time
      required:
      - day_of_month
      - month
      - year
      - hour_of_day
      - minute_of_hour
      properties:
        day_of_month:
          type: integer
          description: The day of month
          format: int32
        month:
          type: integer
          description: The month
          format: int32
        year:
          type: integer
          description: The year
          format: int32
        hour_of_day:
          type: integer
          description: The 24-hour format hour of day
          format: int32
        minute_of_hour:
          type: integer
          description: The minute of the hour
          format: int32
    XiqValidTimePeriodAfterType:
      type: string
      description: The valid time period after Id creation or first login.
      enum:
      - ID_CREATION
      - FIRST_LOGIN
    XiqUpdateUserGroupRequest:
      type: object
      required:
      - name
      - password_db_location
      - password_type
      - delivery_settings
      - password_settings
      - expiration_settings
      properties:
        name:
          type: string
          description: The user group name
        description:
          type: string
          description: The user group description
        password_db_location:
          $ref: '#/components/schemas/XiqPasswordDbLocation'
        ppsk_use_only:
          type: boolean
          description: Whether it's for PPSK use only
        password_type:
          $ref: '#/components/schemas/XiqPasswordType'
        enable_max_clients_per_ppsk:
          type: boolean
          description: The enablement for the maximum number of clients per private PSK
        max_clients_per_ppsk:
          type: integer
          description: The maximum number of clients per private PSK
          format: int32
        pcg_use_only:
          type: boolean
          description: Whether it's for PCG use only
        pcg_type:
          $ref: '#/components/schemas/XiqPcgType'
        enable_cwp_reg:
          type: boolean
          description: Whether to enable CWP registration setting
        password_settings:
          $ref: '#/components/schemas/XiqPasswordSettings'
        expiration_settings:
          $ref: '#/components/schemas/XiqExpirationSettings'
        delivery_settings:
          $ref: '#/components/schemas/XiqDeliverySettings'
    XiqPcgPortAssignment:
      type: object
      description: The PCG port assignment entry
      required:
      - device_id
      properties:
        device_id:
          type: integer
          description: The device ID of AP150W
          format: int64
        eth1_user_id:
          type: integer
          description: The eth1 user ID, get available users from "/pcgs/key-based/network-policy-{policyId}/users"
          format: int64
        eth2_user_id:
          type: integer
          description: The eth2 user ID, get available users from "/pcgs/key-based/network-policy-{policyId}/users"
          format: int64
        eth3_user_id:
          type: integer
          description: The eth3 user ID, get available users from "/pcgs/key-based/network-policy-{policyId}/users"
          format: int64
    XiqGetPortAssignmentDetailsResponse:
      type: object
      description: The response of port assignment details for AP150W
      required:
      - policy_id
      - policy_name
      properties:
        policy_id:
   

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/extreme-networks/refs/heads/main/openapi/extreme-networks-configuration-user-management-api-openapi.yml