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

whmcs.php

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

Методы API

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

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 "type=0" \
--data "profile_data[firstname]=John" \
--data "profile_data[lastname]=Doe" \
--data "profile_data[email]=user@example.com" \
--data "profile_data[password1]=Secret123!" \
--data "profile_data[password2]=Secret123!" \
--data "token=YOUR_API_TOKEN"
Пример успешного ответа
{
"result": "OK",
"clientid": 12345,
"firstname": "John",
"lastname": "Doe",
"email": "user@example.com"
}
Примеры ошибок

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

```

whmcs/apply_credit

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: apply_credit
invoice_id int ID инвойса для оплаты
amount number Сумма кредита для применения
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",
"message": "WHMCS ApplyCredit failed: {\"error\":\"...\"}"
}
Примеры ошибок

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

```

whmcs/create_addfunds

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: create_addfunds
amount number Сумма пополнения. Если не указана subscribe=true, минимальная сумма составляет 20.
description string Описание платежа
subscribe boolean Включить автоматическое списание (автопродление)
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"
},
"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 сервера (relid), для которого удаляется запрос на отмену
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",
"message": "Cancellation request removed"
}
Примеры ошибок

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

```

whmcs/delete_contact

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

HTTP-метод: POST

Параметры:

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

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

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

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

```

whmcs/download_invoice

Возвращает PDF-файл инвойса в формате base64 для скачивания или просмотра.

HTTP-метод: POST

Параметры:

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

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

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

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

```

whmcs/generate_due_invoice

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

HTTP-метод: POST

Параметры:

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

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

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": 105,
"amount": 49.99,
"status": "Unpaid",
"currency": "USD"
}
]
}
Примеры ошибок

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

```

whmcs/get_billing_data

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

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",
"customer_name": "string",
"eu_withdrawal": 0,
"location": "string"
}
Примеры ошибок

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

```

whmcs/get_cancellation_requests

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

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_cancellation_requests
id int ID сервера для получения запросов по конкретному ресурсу. Если не указан, поиск идет по пользователю.
user_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-токен аутентификации

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=get_cancellation_requests" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"message": [
{
"relid": 123,
"cr_date": "2024-05-20 14:30:00",
"cr_reason": "User requested cancellation",
"cr_type": "End of Billing Period",
"name_client": "John Doe",
"due_date": "2024-06-20",
"billing": "whmcs_ru",
"customer_id": 5,
"corporate": "N"
}
]
}
Примеры ошибок

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

```

whmcs/get_client

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

HTTP-метод: POST|GET

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_client
token string Токен авторизации
full boolean Если true, возвращает расширенный набор данных (включая группы и полные данные клиента)
client string Параметр client (обнаружен в коде)
billing_location string Параметр billing_location (обнаружен в коде)
groupdata string Параметр groupdata (обнаружен в коде)
internal string Параметр internal (обнаружен в коде)

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST|GET \
--data "action=get_client" \
--data "token=HOSTKEY_TOKEN" \
--data "client=VALUE" \
--data "billing_location=VALUE" \
--data "groupdata=VALUE" \
--data "internal=VALUE"
Пример успешного ответа
{
"result": "OK",
"action": "get_client",
"client": {
"id": 123,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"fullname": "John Doe",
"status": "Active",
"currency_code": "USD",
"countrycode": "US",
"phonenumber": "+1234567890",
"address1": "Main St 1",
"city": "New York",
"state": "NY",
"postcode": "10001",
"countryname": "United States",
"companyname": "John Corp",
"groupid": 5,
"corporate": 0
},
"billing_location": "whmcs_com",
"internal": {
"id": 123,
"email": "user@example.com",
"active_since": "2023-01-15",
"corporate": 0
},
"groupdata": {
"id": 5,
"groupname": "Premium Users"
}
}
Примеры ошибок

``` { "code": -1, "message": "Request failed for 123@whmcs_com: Client not found" }

```

whmcs/get_clientgroups

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

HTTP-метод: POST|GET

Параметры:

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

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

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

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

```

whmcs/get_contacts

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_contacts
email string Email для поиска конкретного контакта в списке связанных пользователей
full boolean Если true, возвращает полные данные из WHMCS вместе с метаданными API
token string API-токен аутентификации

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

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
invoice_id int ID инвойса
load_client_data boolean Загрузить данные клиента вместе с инвойсом
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,
"type": "Hosting"
}
]
},
"currencycode": "USD",
"billing": "whmcs",
"customer": {
"firstname": "John",
"lastname": "Doe",
"email": "john@example.com"
}
}
Примеры ошибок

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

```

whmcs/get_invoices

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: get_invoices
token string Токен авторизации
location string Локация биллинга (например, whmcs_ru)

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

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

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

```

Возвращает список инвойсов, связанных с конкретным сервером (order/service)

HTTP-метод: POST

Параметры:

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

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

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

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

```

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_ru, please contact support - error_details" }

```

whmcs/getpaymentgw

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

HTTP-метод: POST|GET

Параметры:

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

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=getpaymentgw" \
--data "token=YOUR_TOKEN" \
--data "invoice_id=123"
Пример успешного ответа
{
"result": "OK",
"methods": {
"paymaster": {
"call": "https://invapi.hostkey.com/modules/gateways/paymaster.php?id=123"
},
"bitpaycheckout": {
"call": "<input type=\"submit\" class=\"btn btn-xl btn-block btn-outline-dark rounded btn-sm\" value=\"Pay Now\" />"
},
"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<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[]=123" \
--data "invoices[]=456" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"result": "OK",
"invoiceid": 12345
}
Примеры ошибок

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

```

whmcs/request_cancellation

Отправляет запрос на отмену банковской подписки для сервера. Проверяет наличие активных лицензий, статус оплаты инвойсов и возможность автоматического возврата средств (EU withdrawal).

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
id int ID сервера для отмены подписки
cancellation_type int Тип отмены (1 - автоматическая)
cancellation_reason string Причина отмены
refund float Сумма возврата средств
currency string Валюта возврата
service_price float Цена сервиса для расчета
refund_message string Полное сообщение о возврате (RU/EN)
refund_message_short string Краткое сообщение о возврате
clientid int ID клиента WHMCS
billing string Локация биллинга (напр. whmcs_itb)
email string Email клиента для уведомления
last_invoice int ID последней оплаты (last_inv_id)
prev_invoice_id int ID предыдущего инвойса для частичного возврата
relid int Account ID сервера (service_relid)
tax float Сумма налога для корректировки возврата
vat_extra boolean Флаг наличия VAT extra (для COM локаций)
rec_before_tax float Сумма до вычета налога для корректного формирования инвойса
d_deploy_time string Дата деплоя сервера (для EU withdrawal)
d_bill_time string Текущее время выполнения запроса
d_reccuring float Рекуррентный платеж (recurring amount)
d_period string Текущий billing cycle
cbp_adjusted string Сообщение о корректировке CBP
token string API-токен аутентификации

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--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=1011" \
--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 Тип отмены (например, 1)
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-ID"
}
Примеры ошибок

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

```

whmcs/reset_password

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: reset_password
token string Auth token for API authorization
email string Email address for password reset or identification
reset_token string Token to confirm the reset operation (if not provided, email is sent)
pass string New password for the user
code string 2FA code required if 2FA is enabled for the account

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

curl -s "https://invapi.hostkey.ru/whmcs.php" -X POST \
--data "action=reset_password" \
--data "token=HOSTKEY_TOKEN"
Пример успешного ответа
{
"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

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

HTTP-метод: POST

Параметры:

Параметр Обязательный Тип Описание
action string Идентификатор метода: transactions
transaction_id string ID конкретной транзакции для фильтрации
invoice_id int 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,
"currency": "USD",
"date": "2024-05-20T10:30:00Z",
"status": "Completed",
"description": "Payment for invoice #123"
}
]
}
Примеры ошибок

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

```

whmcs/update_client

Обновляет профиль клиента в WHMCS, включая персональные данные (имя, email), контактную информацию, настройки 2FA и кастомные поля (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_country] string Страна проживания/регистрации
profile_data[co_secret] string Секретное слово (custom field)

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

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"
Пример успешного ответа
{
"result": "OK",
"clientid": 12345,
"message": "Profile updated successfully"
}
Примеры ошибок

``` { "code": -1, "message": "invalid profile data: billing_email can't be empty" }

```

whmcs/update_contact

Обновляет информацию о дополнительном контакте (имя, фамилия, email, телефон) в системе WHMCS. При изменении основного email или телефона может потребоваться повторная верификация.

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",
"contactid": 67890,
"clientid": 12345,
"email": "user@example.com",
"firstname": "John",
"lastname": "Doe",
"location": "whmcs_ru"
}
Примеры ошибок

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

```

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