Перейти к содержанию

whmcs.php

Модуль интеграции с WHMCS для управления клиентами, счетами, кредитом, отменами заказов и биллинговыми данными серверов.

Методы API

Метод Действие Описание
add_contact добавление контакта Создает новый контакт для клиента в системе WHMCS на основе переданных данных
apply_credit применение кредита к инвойсу Применяет доступный баланс клиента (кредит) для оплаты выбранного счета (invoice). Если счет оплачен полностью, может быть инициировано очищение оверюза трафика.
create_addfunds создание инвойса на пополнение баланса в WHMCS Создает инвойс для пополнения баланса клиента (Add Funds) в системе WHMCS. Поддерживает автоматическое включение подписки при определенных условиях.
delete_cancellation_request удаление запроса на отмену Удаляет запрос на отмену для конкретного сервера, если он существует. Позволяет восстановить отмененный инвойс или сгенерировать новый.
delete_contact удаление контакта Удаляет контакт клиента из WHMCS и удаляет связанные записи о пользователе в организации.
download_invoice скачивание инвойса Возвращает PDF-файл счета (инвойса) в формате base64 для указанного ID пользователя и локации биллинга.
generate_due_invoice генерация счета на оплату Генерирует следующий счет на оплату для сервера в WHMCS, если не нарушены условия (отсутствие неоплаченных счетов или наличие специфических тегов апгрейда).
get_billing_data получение данных о биллинге Возвращает подробную информацию о биллинговых данных сервера, включая данные клиента, статус EU-withdrawal и лицензионные расходы в валюте ЕС.
get_cancellation_requests получение списка запросов на отмену Возвращает список активных запросов на отмену услуг (из WHMCS и Prebill) с фильтрацией по датам, типу отмены и статусу биллинга.
get_client получение информации о клиенте Возвращает подробную информацию о авторизованном клиенте из WHMCS, включая данные профиля, группу, внутренние теги и кастомные поля.
get_clientgroups получение групп Возвращает список доступных групп клиентов из WHMCS для указанной локации.
get_contacts получение контактов клиента Возвращает список дополнительных контактов для клиента WHMCS с проверкой прав доступа к ним.
get_invoice получение данных инвойса Возвращает детальную информацию об инвойсе из WHMCS, включая данные клиента и валюту.
get_invoices получение списка инвойсов клиента Возвращает список счетов (инвойсов) для конкретного клиента из WHMCS. Если запрос сделан от лица клиента, возвращаются только его счета.
get_related_invoices получение связанных инвойсов Возвращает список инвойсов, связанных с конкретным сервером или аккаунтом пользователя
getcredits получение кредитов Возвращает историю транзакций и текущий баланс кредитов пользователя в WHMCS
getpaymentgw получение шлюзов оплаты Возвращает список доступных платежных шлюзов для конкретного инвойса с обработанными ссылками и формами оплаты.
mass_pay массовая оплата счетов Создает массовый платеж по списку указанных ID инвойсов в WHMCS.
request_cancellation запрос на отмену Инициирует процесс автоматической или ручной отмены услуги (сервера) в WHMCS с расчетом возврата средств, учетом трафика и проверкой условий контракта.
request_subscription_cancellation запрос на отмену подписки Инициирует процесс отмены банковской подписки через создание тикета в JIRA и уведомление биллинга. Проверяет статус подписки в WHMCS и наличие открытых тикетов.
reset_password сброс пароля Инициирует процесс сброса пароля. Если передан reset_token, проверяет его валидность и отправляет 2FA код или обновляет пароль. Если токен отсутствует, отправляет ссылку на сброс на email клиента.
transactions получение транзакций клиента Возвращает список транзакций пользователя на основе предоставленного ID транзакции или инвойса
update_client обновление данных клиента Обновляет персональные данные, контактную информацию, настройки 2FA и конфигурационные поля (custom fields) клиента в WHMCS.
update_contact обновление контактных данных клиента Обновляет информацию о контакте (имя, фамилия, email, телефон) в WHMCS. Включает проверку прав доступа и валидацию форматов.

whmcs/add_contact

Создает новый контакт для клиента в системе WHMCS на основе переданных данных

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: add_contact
params[firstname] string Имя контакта
params[lastname] string Фамилия контакта
params[email] string Электронная почта контакта
params[phonenumber] string Номер телефона
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=add_contact" \
--data "params[firstname]=Ivan" \
--data "params[lastname]=Ivanov" \
--data "params[email]=user@domain.tld" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "add_contact",
"data": {
"contact_id": 12345,
"client_id": 67890,
"firstname": "Ivan",
"lastname": "Ivanov",
"email": "user@domain.tld"
}
}
Примеры ошибок

``` { "code": -1, "message": "Ошибка при создании контакта в WHMCS" }

```

whmcs/apply_credit

Применяет доступный баланс клиента (кредит) для оплаты выбранного счета (invoice). Если счет оплачен полностью, может быть инициировано очищение оверюза трафика.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: apply_credit
token string Токен авторизации
invoice_id int ID инвойса для оплаты
amount number Сумма кредита для применения

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=apply_credit" \
--data "token=YOUR_TOKEN" \
--data "invoice_id=12345" \
--data "amount=10.0"
Пример успешного ответа
{
"result": "success",
"invoiceid": 12345,
"amount": 10.0,
"status": "Paid"
}
Примеры ошибок

``` { "code": -1, "message": "invalid invoice id" }

```

whmcs/create_addfunds

Создает инвойс для пополнения баланса клиента (Add Funds) в системе WHMCS. Поддерживает автоматическое включение подписки при определенных условиях.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: create_addfunds
amount number Сумма пополнения баланса
subscribe boolean Включить автоматические платежи банковской картой (автопродление)
description string Описание для инвойса
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=create_addfunds" \
--data "amount=100" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"invoice": {},
"message": "Invoice [id] created"
}
Примеры ошибок

``` { "code": -1, "message": "\(module/\)action: invalid amount" }

```

whmcs/delete_cancellation_request

Удаляет запрос на отмену для конкретного сервера, если он существует. Позволяет восстановить отмененный инвойс или сгенерировать новый.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: delete_cancellation_request
id int ID сервера для удаления запроса на отмену
token string Авторизационный токен

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=delete_cancellation_request" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "delete_cancellation_request",
"data": {
"result": "success"
}
}
Примеры ошибок

``` { "code": -1, "message": "\(module/\)action: server $id doesn't have a relid data" }

```

whmcs/delete_contact

Удаляет контакт клиента из WHMCS и удаляет связанные записи о пользователе в организации.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: delete_contact
contact_id int ID контакта для удаления
location string Локация биллинга (WHMCS location)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=delete_contact" \
--data "contact_id=VALUE" \
--data "location=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "delete_contact",
"data": {
"clientid": 12345,
"contacts": [
{
"id": 678,
"firstname": "John",
"lastname": "Doe",
"email": "john.doe@example.com"
}
]
}
}
Примеры ошибок

``` { "code": -1, "message": "verification failed, subcontact not found" }

```

whmcs/download_invoice

Возвращает PDF-файл счета (инвойса) в формате base64 для указанного ID пользователя и локации биллинга.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
invoice_id int ID инвойса для скачивания
user_id int ID пользователя в WHMCS
location string Локация биллинга (например, whmcs)
proforma_invoice boolean Флаг использования проформы счета
viewpdf int Режим отображения: 1 - inline (в браузере), иначе - attachment (скачивание)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=download_invoice" \
--data "invoice_id=123" \
--data "location=whmcs" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "success",
"message": "base64_encoded_pdf_content"
}
Примеры ошибок

``` { "code": -1, "message": "undefined billing location" }

```

whmcs/generate_due_invoice

Генерирует следующий счет на оплату для сервера в WHMCS, если не нарушены условия (отсутствие неоплаченных счетов или наличие специфических тегов апгрейда).

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: generate_due_invoice
token string API-токен аутентификации
addonids array<int> Список ID активных аддонов для генерации счета

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=generate_due_invoice" \
--data "token=HOSTKEY_TOKEN" \
--data "addonids[]=101" \
--data "addonids[]=102"
Пример успешного ответа
{
"result": "OK",
"invoices": [
{
"id": 12345,
"amount": 49.99,
"currency": "USD",
"status": "Unpaid",
"due_date": "2024-06-01"
}
]
}
Примеры ошибок

``` { "result": -1, "error": "next_invoice_blocked_by_upgrade" }

```

whmcs/get_billing_data

Возвращает подробную информацию о биллинговых данных сервера, включая данные клиента, статус EU-withdrawal и лицензионные расходы в валюте ЕС.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_billing_data
id int ID сервера для получения данных биллинга
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_billing_data" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"customer_name": "John Doe",
"billing_cycle": "monthly",
"eu_b2c": 1,
"eu_withdrawal": 0,
"eu_withdrawal_licenses": [
{
"name": "License A",
"amount": 49.99,
"currency": "EUR"
}
],
"customer": {
"id": 123,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"companyname": "Example Corp",
"status": "Active"
},
"location": "NL",
"ip": "192.168.1.1"
}
Примеры ошибок

``` { "code": -1, "message": "invalid request" }

```

whmcs/get_cancellation_requests

Возвращает список активных запросов на отмену услуг (из WHMCS и Prebill) с фильтрацией по датам, типу отмены и статусу биллинга.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_cancellation_requests
id int ID сервера для получения запросов по конкретному аккаунту. Если 0 или -1, запрос выполняется глобально или для пользователя.
period_from string Дата начала периода (формат даты)
period_to string Дата окончания периода (формат даты)
cancellation_type string Тип отмены. Значение 'All' игнорирует фильтр.
billing_status string Статус биллинга. Значение 'All' игнорирует фильтр.
full boolean Если true, возвращает расширенный результат (OK/Fail) в структуре WHMCS.
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_cancellation_requests" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "success",
"message": [
{
"account_id": 123,
"billing_status": "active",
"owner": "user@example.com",
"corporate": "Y",
"customer_id": 456,
"cr_date": "2024-05-20T10:00:00Z",
"cr_reason": "User requested cancellation",
"cr_type": "subscription",
"name_client": "John Doe",
"due_date": "2024-06-01",
"server_id": 789,
"cancellation_date": "2024-06-01"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "WHMCS service is not linked to this server" }

```

whmcs/get_client

Возвращает подробную информацию о авторизованном клиенте из WHMCS, включая данные профиля, группу, внутренние теги и кастомные поля.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_client
whmcs_id int ID клиента в WHMCS (используется для авторизации)
email string Email пользователя для идентификации
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_client" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"client": {
"id": 123,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"fullname": "John Doe",
"groupid": 5,
"corporate": false,
"currency_code": "USD",
"status": "active",
"ip": "192.168.1.1",
"location": "US",
"customfields": {}
},
"billing_location": "US",
"groupdata": {
"id": 5,
"name": "Premium Customers"
},
"internal": {
"id": 123,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"corporate": false,
"currency": "USD"
}
}
Примеры ошибок

``` { "code": 502, "message": "Request failed for 123@US: error_message" }

```

whmcs/get_clientgroups

Возвращает список доступных групп клиентов из WHMCS для указанной локации.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_clientgroups
location string Локация биллинга (например, whmcs или COM)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_clientgroups" \
--data "location=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "get_clientgroups",
"data": {
"groups": [
{
"id": 1,
"groupname": "VIP Clients"
},
{
"id": 2,
"groupname": "Standard Users"
}
]
}
}
Примеры ошибок

``` { "code": -1, "message": "invalid request" }

```

whmcs/get_contacts

Возвращает список дополнительных контактов для клиента WHMCS с проверкой прав доступа к ним.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_contacts
email string Email подсубсчета для фильтрации списка контактов
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_contacts" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "get_contacts",
"permission_contacts_granted": true,
"contacts": [
{
"id": 123,
"email": "user@example.com",
"permissions": "contacts,billing",
"name": "John Doe"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "\(module/\)action: fail to get contacts list" }

```

whmcs/get_invoice

Возвращает детальную информацию об инвойсе из WHMCS, включая данные клиента и валюту.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_invoice
invoice_id int ID инвойса
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_invoice" \
--data "invoice_id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"status": "success",
"items": {
"item": [
{
"relid": 123,
"inv_id": 456
}
]
},
"currencycode": "USD",
"billing": "us"
}
Примеры ошибок

``` { "code": -1, "message": "invalid invoice id 0 at US" }

```

whmcs/get_invoices

Возвращает список счетов (инвойсов) для конкретного клиента из WHMCS. Если запрос сделан от лица клиента, возвращаются только его счета.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_invoices
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_invoices" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"totalresults": 1,
"numreturned": 1,
"invoices": {
"invoice": [
{
"id": 12345,
"invoicenum": "INV-001",
"date": "2024-05-20",
"duedate": "2024-06-20",
"total": 49.99,
"status": "Unpaid",
"currency": {
"USD": 49.99,
"EUR": 45.5
}
}
]
}
}
Примеры ошибок

``` { "code": -1, "message": "WHMCS billing response error or incorrect structure" }

```

Возвращает список инвойсов, связанных с конкретным сервером или аккаунтом пользователя

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_related_invoices
account_id int ID аккаунта для получения инвойсов
id int ID сервера (если указан, используется его account_id)
token string API-токен аутентуации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_related_invoices" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"data": {
"invoices": [
{
"id": 12345,
"userid": 678,
"total": 50.0,
"status": "Unpaid",
"date": "2024-05-20T10:00:00Z"
}
]
}
}
Примеры ошибок

``` { "code": -1, "message": "$module/get_related_invoices: server 123 are not linked to the billing" }

```

whmcs/getcredits

Возвращает историю транзакций и текущий баланс кредитов пользователя в WHMCS

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: getcredits
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=getcredits" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"message": {
"balance": 150.5,
"transactions": [
{
"id": 12345,
"date": "2024-05-20T10:30:00Z",
"description": "Add Funds",
"amount": 150.5,
"status": "Completed"
}
]
}
}
Примеры ошибок

``` { "code": -1, "message": "failed to retrive account history at US, please contact support - error_details" }

```

whmcs/getpaymentgw

Возвращает список доступных платежных шлюзов для конкретного инвойса с обработанными ссылками и формами оплаты.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: getpaymentgw
invoice_id int ID инвойса в WHMCS
token string API-токен аутенции

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=getpaymentgw" \
--data "invoice_id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"methods": {
"stripe": {
"call": "https://invapi.hostkey.com/pay?gateway=stripe&id=123"
},
"bitpay": {
"call": "https://invapi.hostkey.com/pay?gateway=bitpay&id=123"
},
"banktransfer": {
"call": "<span style='text-align:left'><p data-intl='please_wire_funds_in_favor'>Please wire funds in favor of:&nbsp;</p>...</span>"
}
}
}
Примеры ошибок

``` { "code": -1, "message": "invalid invoice id" }

```

whmcs/mass_pay

Создает массовый платеж по списку указанных ID инвойсов в WHMCS.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: mass_pay
invoices[] array<int> Массив ID инвойсов для оплаты. Принимает несколько значений: invoices[]=1&invoices[]=2
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=mass_pay" \
--data "invoices[]=1" \
--data "invoices[]=2" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"invoiceid": 1050
}
Примеры ошибок

``` { "code": -1, "message": "mass_pay: failed to created masspay invoice - error_details" }

```

whmcs/request_cancellation

Инициирует процесс автоматической или ручной отмены услуги (сервера) в WHMCS с расчетом возврата средств, учетом трафика и проверкой условий контракта.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: request_cancellation
id int ID сервера для отмены
cancellation_type int Тип отмены (например, 1 для немедленной)
cancellation_reason string Причина отмены услуги
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=request_cancellation" \
--data "id=12345" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"action": "request_cancellation",
"data": {
"refund": 15.5,
"currency": "USD",
"service_price": 45.0,
"refund_message": "We credited back 15.5 USD (2 hours @ 7.75 USD/hour) for server 123 to the account balance...",
"clientid": 5678,
"billing": "whmcs",
"email": "user@example.com",
"invoice_id": 999,
"tax": 0.0,
"relid": 12345,
"withheld_amount": 15.5,
"period_start": "2024-01-01 00:00:00",
"d_deploy_time": "2024-01-01 12:00:00",
"d_bill_time": "2024-05-20 15:30:00"
}
}
Примеры ошибок

``` { "code": -1, "message": "server 123 are not linked to the billing" }

```

whmcs/request_subscription_cancellation

Инициирует процесс отмены банковской подписки через создание тикета в JIRA и уведомление биллинга. Проверяет статус подписки в WHMCS и наличие открытых тикетов.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: request_subscription_cancellation
id int ID сервера (eq server id)
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=request_subscription_cancellation" \
--data "id=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"ticket": "JIRA-12345"
}
Примеры ошибок

``` { "code": -1, "message": "sub_cancel_not_allowed_billing" }

```

whmcs/reset_password

Инициирует процесс сброса пароля. Если передан reset_token, проверяет его валидность и отправляет 2FA код или обновляет пароль. Если токен отсутствует, отправляет ссылку на сброс на email клиента.

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: reset_password
email string Email пользователя для сброса пароля или отправки 2FA
location string Локация (WHMCS location). По умолчанию 'Auto'
reset_token string Хеш токена для проверки существующей сессии сброса
pass string Новый пароль (используется при завершении процесса)
code string Код двухфакторной аутентификации (2FA)

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=reset_password" \
--data "email=user@example.com"
Пример успешного ответа
{
"result": "OK",
"message": "Password reset link was sent to the registred email.",
"2fa": 1,
"code": "123456"
}
Примеры ошибок

``` { "result": "-1", "message": "Invalid password reset token, please try again." }

```

whmcs/transactions

Возвращает список транзакций пользователя на основе предоставленного ID транзакции или инвойса

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: transactions
transaction_id string ID транзакции
invoice_id string ID инвойса
token string API-токен аутенции

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=transactions" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"transactions": [
{
"id": 12345,
"amount": 50.0,
"status": "Completed",
"date": "2024-01-15T10:30:00Z"
}
]
}
Примеры ошибок

``` { "code": -1, "message": "$module/transactions: failed to retrive transactions - error_details" }

```

whmcs/update_client

Обновляет персональные данные, контактную информацию, настройки 2FA и конфигурационные поля (custom fields) клиента в WHMCS.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: update_client
params[billing_email] string Электронная почта клиента (автоматически проверяется на уникальность и валидность)
params[billing_firstname] string Имя клиента
params[billing_lastname] string Фамилия клиента
params[co_smsnum] string Номер телефона для SMS-верификации (требует верификации)
params[tg_username] string Имя пользователя Telegram (@username)
params[ips] string Список IP-адресов для ACL (через пробел)
params[co_secret] string Секретное слово профиля
params[billing_twofaenabled] boolean Включение/выключение двухфакторной аутентификации (2FA)
params[co_customertype] string Тип клиента (Individual / Company)
params[billing_address1] string Адрес проживания/регистрации
params[billing_city] string Город
params[billing_postcode] string Постовый индекс
params[billing_country] string Код страны (например, RU, US)
params[co_inn] string ИНН компании (для юридических лиц)
params[co_kpp] string КПП компании
token string API-токен аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=update_client" \
--data "token=HOSTKEY_TOKEN" \
--data "params[billing_email]=new@example.com" \
--data "params[billing_firstname]=John"
Пример успешного ответа
{
"result": "success",
"action": "update_client",
"data": {
"billing_email": "user@example.com",
"billing_firstname": "John",
"billing_lastname": "Doe",
"co_smsnum": "+79001234567",
"customfields": "base64_encoded_serialized_data"
}
}
Примеры ошибок

``` { "code": -1, "message": "Account type change is not allowed" }

```

whmcs/update_contact

Обновляет информацию о контакте (имя, фамилия, email, телефон) в WHMCS. Включает проверку прав доступа и валидацию форматов.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: update_contact
params[contact_id] int ID контакта для обновления
params[email] string Email клиента (обязателен)
params[firstname] string Имя контакта
params[lastname] string Фамилия контакта
params[phonenumber] string Номер телефона (проходит валидацию и транслитерацию)
params[password1] string Новый пароль
params[password2] string Подтверждение пароля
token string API-token аутентификации

Пример запроса

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=update_contact" \
--data "params[contact_id]=67890" \
--data "params[email]=ivan@example.com" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "success",
"clientid": 12345,
"contact_id": 67890,
"firstname": "Ivan",
"lastname": "Ivanov",
"email": "ivan@example.com",
"phonenumber": "+79281234567",
"permissions": "contacts,profile"
}
Примеры ошибок

``` { "code": -1, "message": "fill_required_fields" }

```

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×