cPanel Passwords API

Accounts / Passwords

Operations 3

GET /forcepasswordchange Enable forced password update #
GET /get_password_strength Return password strength #
GET /passwd Update cPanel account password #

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/cpanel-passwords-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

cpanel-passwords-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: cs@cpanel.net
    name: WebPros International, LLC
    url: https://cpanel.net/support/
  description: WHM API.
  license:
    name: cPanel License
    url: https://cpanel.net/legal-notices/
  termsOfService: https://cpanel.net/legal-notices/
  title: WHM Passwords API
  version: 11.137.9999.106
  x-api-evangelist-provenance: 'Harvested verbatim from cPanel''s developer portal on 2026-09-05 via the MCP tool get-full-api-description at https://api.docs.cpanel.net/mcp. ONE mechanical change was made before storage: example values containing PEM private-key or certificate blocks, and AWS-access-key-shaped example strings, were replaced with REDACTED_* placeholders so the file can be stored in a public git repository without tripping secret scanning. No path, operation, parameter, schema or description was altered, added or removed.'
servers:
- description: A server running WHM.
  url: https://{host}:{port}/json-api
  variables:
    host:
      default: whm-server.tld
      description: The hostname of a server running WHM.
    port:
      default: '2087'
      description: The WHM port.
security:
- BasicAuth: []
tags:
- description: Accounts / Passwords
  name: Passwords
paths:
  /forcepasswordchange:
    get:
      description: This function forces a user to change the account password after the next login attempt.
      operationId: Accounts-forcepasswordchange
      parameters:
      - description: The list of users. The system will force each user that you specify to change their account's password the next time that they log in.
        in: query
        name: users_json
        required: true
        schema:
          example: '{"user1":1,"user2":1,"user3":1}'
          format: json
          type: string
      - description: 'Whether to halt the function if it experiences an error.

          * `1` - Halt on error.

          * `0` - Continue on error.'
        in: query
        name: stop_on_failure
        required: false
        schema:
          default: 0
          enum:
          - 0
          - 1
          example: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    properties:
                      updated:
                        description: A list of usernames that the system will force to change their passwords. One or more valid usernames.
                        items:
                          example: user
                          type: string
                        type: array
                    type: object
                  metadata:
                    properties:
                      command:
                        description: The method name called.
                        example: forcepasswordchange
                        type: string
                      reason:
                        description: The reason the API function failed when the `metadata.result` field is 0. This field may display a success message when a function succeeds.
                        example: OK
                        type: string
                      result:
                        description: '- `1` - Success

                          - `0` - Failed: Check the reason field for more details.'
                        enum:
                        - 0
                        - 1
                        example: 1
                        type: integer
                      version:
                        description: The version of the API function.
                        example: 1
                        type: integer
                type: object
          description: HTTP Request was successful.
      summary: Enable forced password update
      tags:
      - Passwords
      x-codeSamples:
      - label: CLI
        lang: Shell
        source: "whmapi1 --output=jsonpretty \\\n  forcepasswordchange \\\n  users_json='{\"user1\":1,\"user2\":1,\"user3\":1}'\n"
      - label: URL
        lang: HTTP
        source: https://hostname.example.com:2087/cpsess##########/json-api/forcepasswordchange?api.version=1&users_json=%7b%22user1%22%3a1%2c%22user2%22%3a1%2c%22user3%22%3a1%7d
      x-cpanel-api-version: WHM API 1
      x-cpanel-available-version: '11.32'
  /get_password_strength:
    get:
      description: This function measures the strength of a password.
      operationId: Accounts-get_password_strength
      parameters:
      - description: The password.
        in: query
        name: password
        required: true
        schema:
          example: 12345luggage
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    properties:
                      strength:
                        description: The password's strength.
                        example: 21
                        maximum: 100
                        minimum: 0
                        type: integer
                    type: object
                  metadata:
                    properties:
                      command:
                        description: The method name called.
                        example: get_password_strength
                        type: string
                      reason:
                        description: The reason the API function failed when the `metadata.result` field is 0. This field may display a success message when a function succeeds.
                        example: OK
                        type: string
                      result:
                        description: '- 1 - Success

                          - 0 - Failed: Check the reason field for more details.'
                        enum:
                        - 0
                        - 1
                        example: 1
                        type: integer
                      version:
                        description: The version of the API function.
                        example: 1
                        type: integer
                type: object
          description: HTTP Request was successful.
      summary: Return password strength
      tags:
      - Passwords
      x-codeSamples:
      - label: CLI
        lang: Shell
        source: "whmapi1 --output=jsonpretty \\\n  get_password_strength \\\n  password='12345luggage'\n"
      - label: URL
        lang: HTTP
        source: https://hostname.example.com:2087/cpsess##########/json-api/get_password_strength?api.version=1&password=12345luggage
      x-cpanel-api-version: WHM API 1
      x-cpanel-available-version: '11'
  /passwd:
    get:
      description: 'This function modifies a cPanel or reseller account''s password.


        **Note**


        * When modifying the root password, this will only update the password for the root system user, but not for the root MySQL user.

        * To update the MySQL root user''s password, use set_local_mysql_root_password.'
      operationId: Sys-passwd
      parameters:
      - description: The account's new password.
        in: query
        name: password
        required: true
        schema:
          example: 12345luggage
          type: string
      - description: The account's username.
        in: query
        name: user
        required: true
        schema:
          example: username
          type: string
      - description: 'Whether to also change the account''s MySQL® password.


          * `1` — Also update the account''s MySQL password to match the `password` value.

          * `0` — Do **not** update.'
        in: query
        name: db_pass_update
        required: false
        schema:
          default: 1
          enum:
          - 0
          - 1
          example: 0
          type: integer
      - description: 'Whether to enable Digest Authentication for the account. If you

          do **not** specify a value, the account retains its current Digest

          Authentication setting. This is an alias for the `enabledigest` parameter.


          * `1` — Enable.

          * `0` — Disable.'
        in: query
        name: digestauth
        required: false
        schema:
          enum:
          - 0
          - 1
          example: 1
          type: integer
      - description: 'Whether to enable Digest Authentication for the account. If you

          do **not** specify a value, the account retains its current Digest

          Authentication setting.


          * `1` — Enable.

          * `0` — Disable.'
        in: query
        name: enabledigest
        required: false
        schema:
          enum:
          - 0
          - 1
          example: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    properties:
                      app:
                        description: The services for which the system changed the password.
                        items:
                          example: ftp
                          type: string
                        type: array
                    type: object
                  metadata:
                    properties:
                      command:
                        description: The method name called.
                        example: passwd
                        type: string
                      reason:
                        description: The reason the API function failed when the `metadata.result` field is `0`. This field may display a success message when a function succeeds.
                        example: Password changed for user “username”.
                        type: string
                      result:
                        description: '* `1` — Success.

                          * `0` — Failed. Check the `reason` field for more details.'
                        enum:
                        - 0
                        - 1
                        example: 1
                        type: integer
                      version:
                        description: The version of the API function.
                        example: 1
                        type: integer
                type: object
          description: HTTP Request was successful.
      summary: Update cPanel account password
      tags:
      - Passwords
      x-codeSamples:
      - label: CLI
        lang: Shell
        source: "whmapi1 --output=jsonpretty \\\n  passwd \\\n  user='username' \\\n  password='12345luggage'\n"
      - label: URL
        lang: HTTP
        source: https://hostname.example.com:2087/cpsess##########/json-api/passwd?api.version=1&user=username&password=12345luggage
      x-cpanel-api-version: WHM API 1
      x-cpanel-available-version: '11'
components:
  securitySchemes:
    BasicAuth:
      scheme: basic
      type: http
externalDocs:
  url: https://cpanel.net/developers/
x-tagGroups:
- name: Account Restoration
  tags:
  - Restore Account
  - Restore Queue Management
  - Restore Queue Reporting
- name: Accounts
  tags:
  - Account Creation
  - Account Enhancements
  - Account Management
  - Bandwidth and Disk Quotas
  - Domain Information
  - Passwords
  - Styles
  - Suspensions
- name: API Development Tools
  tags:
  - API Execution
  - API Statistics
  - API Token Management
  - Applications
  - Session
- name: Authentication
  tags:
  - Authentication Providers
  - External Authentication
  - Login URL
  - SSH Keys and Connections
  - Two-Factor Authentication
- name: Backups
  tags:
  - Backup Destination
  - Backup or Restore
  - Backup Settings
  - Legacy Migration
- name: Commerce Integration
  tags:
  - Market Integration
  - Sitejet
- name: cPanel Market
  tags:
  - Product Management
  - Provider Management
- name: cPanel Support Tickets
  tags:
  - Support Access
  - Ticket Management
- name: Customizations
  tags:
  - Brand
  - Customizations
- name: Databases
  tags:
  - Manage MySQL Server
  - MySQL Databases
  - PostgreSQL Databases
  - Remote MySQL Databases
- name: DNS
  tags:
  - DNS Cluster Settings
  - DNS Security
  - DNS Zones
  - Domain Management
  - Domain Management
  - Resolvers
  - Service Records
- name: Hosting Plans
  tags:
  - Feature Access
  - Feature Lists
  - Hosting Plan Extensions
  - Hosting Plans
- name: InProductSurvey
  tags:
  - InProductSurvey
- name: Integrations
  tags:
  - API Authentication
  - Links
  - Scripts Hooks
- name: IP Address Management
  tags:
  - IPv4 Address Settings
  - IPv6 Address Settings
  - Network Address Translation
- name: Login Security (cPHulk)
  tags:
  - Management
  - Reporting
  - Settings
- name: Logs
  tags:
  - Web Log Retention
- name: Mail
  tags:
  - cPanel Account Mail Management
  - Mail DNS Settings
  - Mail Server Settings
  - Spam Management
  - Spam Protection (Greylisting)
- name: Monitoring
  tags:
  - 360 Monitoring
- name: NGINX Manager
  tags:
  - NGINX Manager
- name: Resellers
  tags:
  - Account Enhancement Limit
  - Account Limits
  - Account Permissions
  - Account Settings
  - Reseller Account Management
- name: Security
  tags:
  - WHM Access
- name: Server Administration
  tags:
  - Configuration Clusters
  - Configurations
  - Connected Applications
  - Connections
  - cPanel Analytics
  - License Management
  - Notifications
  - Plugin-Based Features
  - Security
  - Server Nodes
  - Server Profiles
  - Services
  - System Information
  - Updates
- name: SSL Certificates
  tags:
  - Auto-Generated Certificates
  - cPanel Account Settings
  - SSL Server Settings
- name: System Package Management
  tags:
  - Install or Uninstall Package
  - List Package Information
  - Package Manager Settings
- name: Transfers
  tags:
  - cPanel Account Transfer
  - Transfer Configuration
  - Transfer Monitoring
- name: UserData
  tags:
  - UserData
- name: Web Server Configuration
  tags:
  - EasyApache Settings
  - PHP
  - PHP-FPM
- name: Web Server Security (ModSecurity)
  tags:
  - Rule Settings
  - Rule Vendor Settings
  - Server Settings