Skip to main content

WHMCS API

Project description

whmcs-api-client

Python client for the WHMCS API.

WHMCS (Web Host Manager Complete Solution) provides a single API endpoint that handles multiple operations through different 'action' parameters. This specification presents each action as an independent path while routing all requests to the /api.php endpoint.

This Python package is automatically generated by the OpenAPI Generator project:

  • API version: 1.0.0
  • Package version: 1.0.18
  • Generator version: 7.21.0-SNAPSHOT
  • Build package: org.openapitools.codegen.languages.PythonClientCodegen

Requirements.

Python 3.9+

Installation & Usage

pip install

If the python package is hosted on a repository, you can install directly using:

pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git

(you may need to run pip with root permission: sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git)

Then import the package:

import whmcs_client

Setuptools

Install via Setuptools.

python setup.py install --user

(or sudo python setup.py install to install the package for all users)

Then import the package:

import whmcs_client

Tests

Execute pytest to run the tests.

Getting Started

Please follow the installation procedure and then run the following:

import whmcs_client
from whmcs_client.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://your-whmcs-instance.com/includes
# See configuration.py for a list of all supported configuration parameters.
configuration = whmcs_client.Configuration(
    host = "https://your-whmcs-instance.com/includes"
)



# Enter a context with an instance of the API client
with whmcs_client.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = whmcs_client.DefaultApi(api_client)
    username = 'username_example' # str | Admin username/API identifier
    password = 'password_example' # str | Admin password/API secret
    firstname = 'firstname_example' # str | First name of the client
    lastname = 'lastname_example' # str | Last name of the client
    email = 'email_example' # str | Email address of the client
    address1 = 'address1_example' # str | Address line 1
    city = 'city_example' # str | City
    state = 'state_example' # str | State
    postcode = 'postcode_example' # str | Postal code
    country = 'country_example' # str | 2 character ISO country code
    phonenumber = 'phonenumber_example' # str | Phone number
    accesskey = 'accesskey_example' # str | Optional API access key (optional)
    responsetype = json # str | Response format (optional) (default to json)
    owner_user_id = 56 # int | The ID of the user that should own the client (optional)
    companyname = 'companyname_example' # str | Company name (optional)
    address2 = 'address2_example' # str | Address line 2 (optional)
    tax_id = 'tax_id_example' # str | Client's tax ID (optional)
    password2 = 'password2_example' # str | Password for the new user account (optional)
    securityqid = 56 # int | Security question ID (optional)
    securityqans = 'securityqans_example' # str | Security question answer (optional)
    currency = 56 # int | Currency ID (optional)
    groupid = 56 # int | Client group ID (optional)
    customfields = 'customfields_example' # str | Base64 encoded serialized array of custom field values (optional)
    language = 'language_example' # str | Default language setting (optional)
    clientip = 'clientip_example' # str | Originating IP address (optional)
    notes = 'notes_example' # str | Admin only notes (optional)
    marketingoptin = True # bool | Opt-in to marketing emails (optional)
    noemail = True # bool | Set to true to suppress the Order Confirmation email being sent (optional)
    skipvalidation = True # bool | Ignore required field validation (optional)

    try:
        # Add a new client
        api_response = api_instance.add_client(username, password, firstname, lastname, email, address1, city, state, postcode, country, phonenumber, accesskey=accesskey, responsetype=responsetype, owner_user_id=owner_user_id, companyname=companyname, address2=address2, tax_id=tax_id, password2=password2, securityqid=securityqid, securityqans=securityqans, currency=currency, groupid=groupid, customfields=customfields, language=language, clientip=clientip, notes=notes, marketingoptin=marketingoptin, noemail=noemail, skipvalidation=skipvalidation)
        print("The response of DefaultApi->add_client:\n")
        pprint(api_response)
    except ApiException as e:
        print("Exception when calling DefaultApi->add_client: %s\n" % e)

Documentation for API Endpoints

All URIs are relative to https://your-whmcs-instance.com/includes

Class Method HTTP request Description
DefaultApi add_client POST /api.php?action=AddClient Add a new client
DefaultApi add_order POST /api.php?action=AddOrder Create a new order
DefaultApi get_clients POST /api.php?action=GetClients Get clients
DefaultApi get_clients_details POST /api.php?action=GetClientsDetails Get client details
DefaultApi get_clients_products POST /api.php?action=GetClientsProducts Get client products
DefaultApi get_currencies POST /api.php?action=GetCurrencies Get currencies
DefaultApi get_invoices POST /api.php?action=GetInvoices Get invoices
DefaultApi get_invoices_details POST /api.php?action=GetInvoicesDetails Get invoices with line item details
DefaultApi get_orders POST /api.php?action=GetOrders Get orders
DefaultApi update_client POST /api.php?action=UpdateClient Update client details

Documentation For Models

Documentation For Authorization

Endpoints do not require authorization.

Author

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

whmcs_api_client-1.0.18.tar.gz (50.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

whmcs_api_client-1.0.18-py3-none-any.whl (81.3 kB view details)

Uploaded Python 3

File details

Details for the file whmcs_api_client-1.0.18.tar.gz.

File metadata

  • Download URL: whmcs_api_client-1.0.18.tar.gz
  • Upload date:
  • Size: 50.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for whmcs_api_client-1.0.18.tar.gz
Algorithm Hash digest
SHA256 9c342cf4269c537daa26c3e027370bff3f79692b87af089301da9d36b37da354
MD5 fbd8743101e123ee9ed595cdaa13f2d1
BLAKE2b-256 ddbd3f8d211371b2c84732556cfd9a3aa7a2f7da9eca97a5b8ae96d5e658ca3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for whmcs_api_client-1.0.18.tar.gz:

Publisher: python-publish.yml on truehostcloud/whmcs-python-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file whmcs_api_client-1.0.18-py3-none-any.whl.

File metadata

File hashes

Hashes for whmcs_api_client-1.0.18-py3-none-any.whl
Algorithm Hash digest
SHA256 2222ac5929f3017dfa44cf97bb672f992762afcd2d04eb1ace093145b4c09e3e
MD5 f42f65a9dc5a45d266c3f54be82a9afa
BLAKE2b-256 8b73c36de0314638ffd21c16b4fa4308ebe3d983252707ec5762cde438937654

See more details on using hashes here.

Provenance

The following attestation bundles were made for whmcs_api_client-1.0.18-py3-none-any.whl:

Publisher: python-publish.yml on truehostcloud/whmcs-python-client

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page