Metadata-Version: 2.4
Name: whmcs-api-client
Version: 1.0.17
Summary: WHMCS API
Home-page: https://github.com/truehostcloud/whmcs-python-client
Author: OpenAPI Generator community
Author-email: OpenAPI Generator Community <team@openapitools.org>
Project-URL: Repository, https://github.com/GIT_USER_ID/GIT_REPO_ID
Keywords: OpenAPI,OpenAPI-Generator,WHMCS API
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: urllib3<3.0.0,>=2.1.0
Requires-Dist: python-dateutil>=2.8.2
Requires-Dist: pydantic>=2.11
Requires-Dist: typing-extensions>=4.7.1
Dynamic: author
Dynamic: home-page
Dynamic: license-file

# 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](https://openapi-generator.tech) project:

- API version: 1.0.0
- Package version: 1.0.17
- 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:

```sh
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:
```python
import whmcs_client
```

### Setuptools

Install via [Setuptools](http://pypi.python.org/pypi/setuptools).

```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)

Then import the package:
```python
import whmcs_client
```

### Tests

Execute `pytest` to run the tests.

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python

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**](docs/DefaultApi.md#add_client) | **POST** /api.php?action&#x3D;AddClient | Add a new client
*DefaultApi* | [**add_order**](docs/DefaultApi.md#add_order) | **POST** /api.php?action&#x3D;AddOrder | Create a new order
*DefaultApi* | [**get_clients**](docs/DefaultApi.md#get_clients) | **POST** /api.php?action&#x3D;GetClients | Get clients
*DefaultApi* | [**get_clients_details**](docs/DefaultApi.md#get_clients_details) | **POST** /api.php?action&#x3D;GetClientsDetails | Get client details
*DefaultApi* | [**get_clients_products**](docs/DefaultApi.md#get_clients_products) | **POST** /api.php?action&#x3D;GetClientsProducts | Get client products
*DefaultApi* | [**get_currencies**](docs/DefaultApi.md#get_currencies) | **POST** /api.php?action&#x3D;GetCurrencies | Get currencies
*DefaultApi* | [**get_invoices**](docs/DefaultApi.md#get_invoices) | **POST** /api.php?action&#x3D;GetInvoices | Get invoices
*DefaultApi* | [**get_invoices_details**](docs/DefaultApi.md#get_invoices_details) | **POST** /api.php?action&#x3D;GetInvoicesDetails | Get invoices with line item details
*DefaultApi* | [**update_client**](docs/DefaultApi.md#update_client) | **POST** /api.php?action&#x3D;UpdateClient | Update client details


## Documentation For Models

 - [AddClientResponse](docs/AddClientResponse.md)
 - [AddOrderResponse](docs/AddOrderResponse.md)
 - [ClientDetailsInfo](docs/ClientDetailsInfo.md)
 - [ClientInfo](docs/ClientInfo.md)
 - [CurrencyInfo](docs/CurrencyInfo.md)
 - [GetClientsDetailsResponse](docs/GetClientsDetailsResponse.md)
 - [GetClientsProductsResponse](docs/GetClientsProductsResponse.md)
 - [GetClientsResponse](docs/GetClientsResponse.md)
 - [GetClientsResponseAllOfClients](docs/GetClientsResponseAllOfClients.md)
 - [GetCurrenciesResponse](docs/GetCurrenciesResponse.md)
 - [GetCurrenciesResponseAllOfCurrencies](docs/GetCurrenciesResponseAllOfCurrencies.md)
 - [GetInvoicesDetailsResponse](docs/GetInvoicesDetailsResponse.md)
 - [GetInvoicesResponse](docs/GetInvoicesResponse.md)
 - [InvoiceDetailInfo](docs/InvoiceDetailInfo.md)
 - [InvoiceInfo](docs/InvoiceInfo.md)
 - [InvoiceItem](docs/InvoiceItem.md)
 - [ProductInfo](docs/ProductInfo.md)
 - [UpdateClientResponse](docs/UpdateClientResponse.md)
 - [WHMCSBaseResponse](docs/WHMCSBaseResponse.md)
 - [WHMCSErrorResponse](docs/WHMCSErrorResponse.md)
 - [WHMCSSuccessResponse](docs/WHMCSSuccessResponse.md)


<a id="documentation-for-authorization"></a>
## Documentation For Authorization

Endpoints do not require authorization.


## Author




