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

whmcs.php

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

Методы API

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

whmcs/add_contact

Добавляет нового дополнительного контакта к существующему клиенту WHMCS или создает новый контакт для владельца аккаунта.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: add_contact
type integer Тип операции (0 - создание нового контакта)
profile_data[firstname] string Имя контакта
profile_data[lastname] string Фамилия контакта
profile_data[email] string Email контакта (должен быть уникальным)
profile_data[password1] string Пароль для нового контакта
profile_data[password2] string Подтверждение пароля
profile_data[phonenumber] string Номер телефона (проверяется на поддержку SMS)
token string API-токен аутентификации

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=add_contact" \
--data "profile_data[firstname]=VALUE" \
--data "profile_data[email]=VALUE" \
--data "profile_data[password1]=VALUE" \
--data "profile_data[password2]=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"clientid": 123,
"contact_id": 456,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe"
}
Примеры ошибок

``` { "fill_required_fields": { "result": -1, "error": "fill_required_fields", "message": "Заполните обязательные поля" }, "email_registered": { "result": -1, "state": "fail", "error": "email_registered" }, "sms_number_not_supported": { "result": -1, "error": "sms_number_not_supported" } }

```

whmcs/apply_credit

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

HTTP-метод: POST

Параметры:

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

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

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

``` { "code": -1, "message": "WHMCS ApplyCredit failed: {\"result\":\"error\",\"error\":\"...\"}" }

```

whmcs/create_addfunds

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

HTTP-метод: POST

Параметры:

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

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

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

``` { "code": -1, "message": "minimal payment amount is 20." }

```

whmcs/delete_cancellation_request

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: delete_cancellation_request
id integer 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": {
"productid": 12345,
"userid": 56789,
"status": "active"
}
}
Примеры ошибок

``` { "code": -1, "message": "server $id doesn't have a relid data" }

```

whmcs/delete_contact

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

HTTP-метод: POST

Параметры:

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

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

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

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

```

whmcs/download_invoice

Возвращает PDF-файл инвойса в формате base64. Параметр viewpdf определяет способ открытия: inline (просмотр) или attachment (скачивание).

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: download_invoice
invoice_id int ID инвойса для скачивания
proforma_invoice int Флаг использования проформы-инвойса (0 или 1)
viewpdf string Способ открытия: 1 — inline (просмотр), 0 — attachment (скачивание)
token string API-токен аутентификации

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

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

``` { "code": -1, "message": "Invalid invoice id or billing location error" }

```

whmcs/generate_due_invoice

Генерирует следующий счет для сервера в WHMCS, учитывая текущий цикл оплаты и наличие активных аддонов. Блокируется, если у пользователя есть неоплаченные счета или если сервер находится в процессе апгрейда.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
id int ID сервера (eq_id)
token string Токен авторизации

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

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

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

```

whmcs/get_billing_data

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

HTTP-метод: POST

Параметры:

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

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

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

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

```

whmcs/get_cancellation_requests

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_cancellation_requests
id int ID сервера для получения запросов по конкретному ресурсу. Если не указан, поиск идет по пользователю.
period_from string Дата начала периода (формат Y-m-d)
period_to string Дата окончания периода (формат Y-m-d)
cancellation_type string Тип отмены для фильтрации
billing_status string Статус оплаты (например, Paid, Unpaid)
token string API-token аутентификации

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_cancellation_requests" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"message": [
{
"relid": 123,
"date": "2024-01-15",
"reason": "User requested cancellation",
"type": "End of Billing Period",
"name_client": "John Doe",
"company": "Example Corp",
"billing": "whmcs_ru",
"account_id": 456,
"status": "Active",
"due_date": "2024-02-15",
"corporate": "N"
}
]
}
Примеры ошибок

``` { "code": -3, "message": "server $id doesn't have a relid data" }

```

whmcs/get_client

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

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_client
token string Токен авторизации
email string Email клиента для поиска (используется в функции whmcs_get_client)
full boolean Флаг получения полных данных (включая пароли и расширенные поля)

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_client" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"client": {
"id": 123,
"userid": 456,
"firstname": "John",
"lastname": "Doe",
"email": "user@example.com",
"companyname": "Example Corp",
"countrycode": "US",
"currency_code": "USD",
"groupid": 1,
"status": "Active",
"corporate": 0,
"inn": null,
"contractnum": null,
"twofaenabled": true,
"twofa_method": "totp"
},
"billing_location": "whmcs_itb",
"internal": {
"id": 789,
"email": "user@example.com",
"corporate": 0,
"active_since": "2023-01-15"
},
"groupdata": null
}
Примеры ошибок

``` { "code": -1, "message": "Request failed for client@location: error message" }

```

whmcs/get_clientgroups

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

HTTP-метод: POST|GET

Параметры:

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

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

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

``` { "code": -1, "message": "Billing error: ..." }

```

whmcs/get_contacts

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_contacts
token string Токен авторизации
email string Email subaccount для фильтрации контактов (если не указан, возвращаются все контакты клиента)

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

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

``` { "code": -1, "message": "fail to get contacts list" }

```

whmcs/get_invoice

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

HTTP-метод: POST|GET

Параметры:

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

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

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

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

```

whmcs/get_invoices

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

HTTP-метод: POST

Параметры:

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

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_invoices" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"totalresults": 12,
"invoices": {
"invoice": [
{
"id": 1024,
"userid": 55,
"status": "Paid",
"date": "2023-10-01",
"total": 29.99,
"currency_code": "USD"
}
]
}
}
Примеры ошибок

``` { "result": "-1", "error": "Invalid client id" }

```

Возвращает список всех инвойсов, связанных с конкретным сервером (product_id) в указанной локации WHMCS.

HTTP-метод: POST|GET

Параметры:

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

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

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

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

```

whmcs/getcredits

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

HTTP-метод: POST

Параметры:

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

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

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

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

```

whmcs/getpaymentgw

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

HTTP-метод: POST

Параметры:

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

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=getpaymentgw" \
--data "token=HOSTKEY_TOKEN" \
--data "invoice_id=VALUE"
Пример успешного ответа
{
"result": "OK",
"methods": {
"paymaster": {
"call": "https://bill.hostkey.com/modules/gateways/paymaster.php?..."
},
"bitpaycheckout": {
"call": "<button class='btn btn-xl ...'>Pay Now</button>"
},
"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": "failed to retrive payment gw list: error message" }

```

whmcs/mass_pay

Позволяет произвести массовую оплату нескольких инвойсов одним платежом. Требуется минимум 2 инвойса.

HTTP-метод: POST

Параметры:

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

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

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

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

```

whmcs/request_cancellation

Отправляет запрос на отмену подписки (bank card subscription) для сервера. Проверяет наличие активных лицензий, статус заказа и связанные инвойсы.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: request_cancellation
id int ID сервера
cancellation_type string Тип отмены (1 для немедленной)
cancellation_reason string Причина отмены
refund float Сумма возврата
currency string Валюта возврата
service_price float Цена сервиса для расчета
refund_message string Текст сообщения о возврате (EN)
refund_message_short string Краткий текст сообщения о возврате
clientid int ID клиента WHMCS
billing string Локация биллинга (например, whmcs_itb)
email string Email клиента для уведомления
last_invoice int ID последнего инвойса
prev_invoice_id int ID предыдущего инвойса для частичного возврата
relid int Account ID (Relid)
vat_msg string Сообщение о налоге/VAT
rec_before_tax float Сумма до налогов
total_with_tax float Итоговая сумма с налогом
d_deploy_time string Дата деплоя (для логов)
d_bill_time string Время биллинга
d_reccuring string Рекуррентный платеж
d_period string Период биллинга
cbp_adjusted string Сообщение о корректировке CBP
token string API-токен аутентификации

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=request_cancellation" \
--data "id=123" \
--data "refund=50.00" \
--data "currency=USD" \
--data "refund_message=Refund processed successfully" \
--data "refund_message_short=Refunded" \
--data "clientid=456" \
--data "billing=whmcs_itb" \
--data "email=user@example.com" \
--data "last_invoice=789" \
--data "relid=101" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK"
}
Примеры ошибок

``` { "code": -3, "message": "whmcs_immediate_cancellation_no_invoices" }

```

whmcs/request_subscription_cancellation

Отправляет запрос на отмену банковской подписки для сервера. Проверяет наличие активной подписки, статус оплаты и создает JIRA-тикет для обработки.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: request_subscription_cancellation
id int ID сервера
cancellation_type string Тип отмены (например, End of Billing Period)
cancellation_reason string Причина отмены
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_no_active_subscription" }

```

whmcs/reset_password

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

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: reset_password
token string Токен авторизации API
email string Email пользователя для сброса пароля
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.",
"debug": {}
}
Примеры ошибок

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

```

whmcs/transactions

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

HTTP-метод: POST

Параметры:

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

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

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

``` { "code": -1, "message": "failed to retrive transactions - error message" }

```

whmcs/update_client

Обновляет профиль клиента в WHMCS, включая персональные данные (имя, email), контактную информацию, настройки двухфакторной аутентификации и кастомные поля (custom fields). Поддерживает обновление юридических данных для компаний.

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: update_client
token string Токен авторизации
profile_data[client_id] integer ID клиента в WHMCS
profile_data[location] string Локация биллинга (например, whmcs_ru)
profile_data[billing_email] string Новый адрес электронной почты клиента
profile_data[billing_firstname] string Имя в биллинге
profile_data[billing_lastname] string Фамилия в биллинге
profile_data[co_customertype] string Тип клиента (Individual / Company)
profile_data[ips] string Список IP-адресов для ACL через запятую/пробел
profile_data[co_smsnum] string Номер телефона (с верификацией)
profile_data[billing_twofaenabled] boolean Включение/выключение 2FA в WHMCS

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=update_client" \
--data "token=HOSTKEY_TOKEN" \
--data "profile_data[client_id]=12345" \
--data "profile_data[location]=whmcs_ru" \
--data "profile_data[billing_email]=user@example.com"
Пример успешного ответа
{
"result": "OK",
"clientid": 12345,
"location": "whmcs_ru",
"billing_email": "user@example.com",
"status": "updated"
}
Примеры ошибок

``` { "code": -1, "message": "invalid profile data: first name contain incorrect symbols" }

```

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 Новый пароль 1
params[password2] string Новый пароль 2 (для смены пароля)
token string API-токен аутентификации

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=update_contact" \
--data "params[contact_id]=VALUE" \
--data "params[email]=VALUE" \
--data "params[firstname]=VALUE" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"contact_id": 67890,
"clientid": 12345,
"location": "whmcs_ru",
"billing_email_changed": true
}
Примеры ошибок

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

```

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