Помимо прямого интерфейсного решения мы предоставляем возможность использования наших ресурсов через API, это позволит вам предоставлять услугу по аренде игровых консолей под своим собственным брендом. Для начала работы вам понадобится токен, который можно получить у технической поддержки t.me/fourcloudpro

Обращения к API 4Cloud происходят путем отправки https запросов на адрес
api.4cloud.pro/api.php

Авторизация: происходит путем передачи GET-параметра ‘token’. Данный параметр должен передаваться первым.
Пример: api.4cloud.pro/api.php?token=4a5wAuMtpAu0T6J9pdudbiYv44QfDa4p3SZcJ8xagxy1igmKgQw1an5QNAvIXUSw
Ответ, если вы успешно авторизовались: OK
Ответ, если авторизация прошла неудачно: NO {$error_code}

Веб методы: взаимодействие разработчиков с веб частью сервиса (регистрация пользователя, получение данных об активной подписке и др) происходит на основе методов (GET-параметр ‘method’).

API Документация к методам

Метод: checkuser

Описание: Проверка зарегистрирован ли пользователь в БД

Входные данные:

  • id: User ID

Возвращаемое значение:

  • “0” if the user already exists
  • “1” if the user is new

Метод: get-date-exp

Описание: Проверка даты окончания подписки

Входные данные:

  • id: User ID

Возвращаемое значение:

  • Date and hour of expiration in the format “date|hour”

Метод: get-psn

Описание: Получение данных PSN

Входные данные:

  • id: User ID

Возвращаемое значение:

  • PSN and PS_pass in the format “psn ps_pass”

Метод: add-qiwi

Описание: Изменение почты оплаты в БД

Входные данные:

  • id: User ID

Возвращаемое значение:

  • “1” if successful

Метод: delete-email

Описание: Удаление пользователя из БД

Входные данные:

  • id: User ID

Возвращаемое значение:

  • None

Метод: adduser

Описание: Регистрация пользователя в БД

Входные данные:

  • id: User ID

Возвращаемое значение:

  • “0” if the user already exists
  • “1” if the user is new

Метод: get-email

Описание: Получение привязанной почты к боту из БД

Входные данные:

  • id: User ID

Возвращаемое значение:

  • Email address

Метод: get-emailtodisc

Описание: Получение сведений о системных номерах консолей, где стоит запрашиваемая игра

Входные данные:

  • id: User ID
  • disc: Game to change to

Возвращаемое значение:

  • Email address and NPS4 запрашивающего and disc (Номера консолей, где стоят игры)

Метод: get-stat

Описание: Получение количества запущенных игр

Входные данные:

  • id: User ID

Возвращаемое значение:

  • Number of games played

Метод: get-stath

Описание: Проверка наличия активной подписки у пользователя

Входные данные:

  • id: User ID

Возвращаемое значение:

  • 0 – if not
  • 1 – if active

Метод: get-rep

Описание: Получение репутации пользователя

Входные данные:

  • id: User ID

Возвращаемое значение:

  • Reputation

Метод: plus-rep

Описание: Увеличение репутации пользователя

Входные данные:

  • id: User ID
  • tick: Increment value

Возвращаемое значение:

  • None

Метод: minus-rep

Описание: Уменьшение репутации пользователя

Входные данные:

  • id: User ID
  • tick: Increment value

Возвращаемое значение:

  • None

Метод: get-moderators

Описание: Получение списка активных модераторов и админов

Входные данные:

  • None

Возвращаемое значение:

  • List of moderator IDs, separated by spaces

Метод: get-id

Описание: Проверка ID пользователя для формирования рассылки

Входные данные:

  • id: User ID

Возвращаемое значение:

  • User ID

Метод: change-discfromlibrary

Описание: Поставка игры в консоль из свободных

Входные данные:

  • id: User ID
  • disc: Game to change to

Возвращаемое значение:

  • None

Метод: change-discfromanother

Описание: Поставка игры в консоль из другой консоли с указанием системного номера консоли откуда забрали

Входные данные:

  • id: User ID
  • disc: Game to change to
  • from: NPS4 of the user to change from

Возвращаемое значение:

  • None

Метод: get-game

Описание: Получение ID запрашиваемой игры из каталога

Входные данные:

  • disc: Game name

Возвращаемое значение:

  • Game ID

Метод: getstatforaday

Описание: Получение статистики запрошенных игр за день

Входные данные:

  • None

Возвращаемое значение:

  • List of games played and their counts, separated by “^”, followed by the total number of games played

Метод: getstatforamonth

Описание: Получение статистики запрошенных игр за месяц

Входные данные:

  • None

Возвращаемое значение:

  • List of games played and their counts, separated by “^”, followed by the total number of games played

Метод: getstatforayear

Описание: Получение статистики запрошенных игр за год

Входные данные:

  • None

Возвращаемое значение:

  • List of games played and their counts, separated by “^”, followed by the total number of games played

Метод: getstatforall

Описание: Получение статистики запрошенных игр за все время

Входные данные:

  • None

Возвращаемое значение:

  • List of games played and their counts, separated by “^”, followed by the total number of games played

Метод: getstatusing

Описание: Получение списка и количества находящихся в консолях игр

Входные данные:

  • None

Возвращаемое значение:

  • List of games being hosted and their counts, separated by “^”

Метод: get-stat-games

Описание: Получение топ запрашиваемых пользователям игр

Входные данные:

  • id: User ID

Возвращаемое значение:

  • List of games played and their counts, separated by “|”, with the first item being a placeholder

Метод: get-all-id

Описание: Получение списка всех ID пользователей из БД для формирования рассылки

Входные данные:

  • None

Возвращаемое значение:

  • List of user IDs, separated by spaces

Метод: get-notif-ps4slim

Описание: Получение списка пользователей, подписавшихся на уведомление об освобождении Ps4slim

Входные данные:

  • None

Возвращаемое значение:

  • List of user IDs, separated by spaces

Метод: get-notif-ps5

Описание: Получение списка пользователей, подписавшихся на уведомление об освобождении Ps5

Входные данные:

  • None

Возвращаемое значение:

  • List of user IDs, separated by spaces

Метод: get-notif-ps4pro

Описание: Получение списка пользователей, подписавшихся на уведомление об освобождении Ps4pro

Входные данные:

  • None

Возвращаемое значение:

  • List of user IDs, separated by spaces

Метод: get-all-id-without-email

Описание: Получение списка всех ID пользователей без привязанной почты из БД для формирования рассылки

Входные данные:

  • None

Возвращаемое значение:

  • List of user IDs, separated by spaces

Метод: get-same-games

Описание: Получение списка похожих игр

Входные данные:

  • disc: Game name

Возвращаемое значение:

  • List of games from the database that have the same Same field value, separated by “|”

Метод: get-only-psn

Описание: Получение email PSN без пароля

Входные данные:

  • id: User ID

Возвращаемое значение:

  • PSN

Метод: getrpaurl

Описание: Получение адреса хранения файла конфигурации для repl4y

Входные данные:

  • email: Email address

Возвращаемое значение:

  • RPA URL

Метод: gettestperiod

Описание: Получение статуса использования тестового периода по ID

Входные данные:

  • id: User ID

Возвращаемое значение:

  • 1 if active, 0 if not

Метод: gettestperiodwithemail

Описание: Получение статуса использования тестового периода по Email

Входные данные:

  • email: Email address

Возвращаемое значение:

  • 1 if active, 0 if not

Метод: usingtest

Описание: Состояние туннеля для тестового периода

Входные данные:

  • None

Возвращаемое значение:

  • 1 if busy, 0 if not

Метод: getactivethreaded

Описание: Проверка играет ли пользователь в данный момент

Входные данные:

  • email: Email address

Возвращаемое значение:

  • 1 if playing, 0 if not

Метод: getfreethread

Описание: Получение ID свободного обработчика для создания туннеля

Входные данные:

  • None

Возвращаемое значение:

  • Port from the tunnelthreads table where active is 0

Метод: getfreethread2

Описание: Получение IP и ID свободного и готового к настройке туннеля

Входные данные:

  • None

Возвращаемое значение:

  • Reglet_Ip and Reglet_Id from the tunnels table where Status is ‘+’

Метод: getfreeperiod

Описание: Проверка наличия свободных консолей для пробного периода

Входные данные:

  • None

Возвращаемое значение:

  • “not enough consoles” if there are no rows in the tablen table where Status is ‘t’, otherwise “ok”

Метод: gettestdata

Описание: Формирование хешей для пробного периода

Входные данные:

  • email

Возвращаемое значение:

  • None

Метод: setdataabouttunnel

Описание: Добавление записи о созданном туннеле

Входные данные:

  • email: Email address
  • ip: IP address

Возвращаемое значение:

  • None

Метод: sda8bcc

Описание: Изменение статуса созданного туннеля, когда он настроен под конкретного игрока

Входные данные:

  • email: Email address
  • ip: IP address
  • port987: Port 987
  • port9295: Port 9295
  • port9296: Port 9296
  • port9297: Port 9297
  • port9302: Port 9302

Возвращаемое значение:

  • None

Метод: b1143cfoi

Описание: Изменение статуса созданного туннеля, когда он настроен под конкретного игрока для пробного периода

Входные данные:

  • email: Email address
  • ip: IP address
  • port987: Port 987
  • port9295: Port 9295
  • port9296: Port 9296
  • port9297: Port 9297
  • port9302: Port 9302

Возвращаемое значение:

  • None

Метод: notificationaboutfree

Описание: Добавление в БД записи о подписавшимся на освобождение консоли пользователи

Входные данные:

  • id: User ID
  • platform: Platform

Возвращаемое значение:

  • None

Метод: get-notif

Описание: Получения списка пользователей, подписавшихся на освобождение конкретного вида PS

Входные данные:

  • platform: Platform

Возвращаемое значение:

  • List of user IDs with the specified platform, separated by spaces

Метод: del-notif

Описание: Удаление из БД ID пользователя, которому пришло сообщение об освобождении консоли

Входные данные:

  • platform: Platform

Возвращаемое значение:

  • None

Метод: get-notif-count

Описание: Получение списка пользователей, подписавшихся на уведомление об освобождении консоли

Входные данные:

  • platform: Platform

Возвращаемое значение:

  • Count of user IDs with the specified platform

Метод: get-votegame

Описание: Получение списка игр, за которых прогосовал пользователь в рассылке

Входные данные:

  • id: User ID

Возвращаемое значение:

  • List of games voted for by the user, separated by “, “

Метод: get-plan

Описание: Получение типа арендованной пользователем консоли

Входные данные:

  • id: User ID

Возвращаемое значение:

  • Plan (“PS4” or “PS5”)

Метод checkopcode2

Описание: Отправка на сервер сообщения о необходимости настроить туннель пользователю

Входные данные: opcode
Возвращаемое значение: Строка "Reglet_ip|Reglet_Id|пароль", где Reglet_Ip – IP-адрес виртуального сервера, Reglet_Id – его идентификатор, а пароль – пароль для доступа к серверу

Метод checkopcodefortest

Описание: Отправка на сервер сообщения о необходимости настроить тестовый туннель пользователю

  • Входящие данные: opcode
  • Возвращаемое значение: Строка "Reglet_ip|Reglet_Id|пароль", где Reglet_Ip – IP-адрес виртуального сервера, Reglet_Id – его идентификатор, а пароль – пароль для доступа к серверу

Метод get-ip

Описание: Получение количества привязанных IP-адресов пользователя

Входные данные: opcode
Возвращаемое значение: Количество привязанных IP-адресов пользователя.

Метод show-ip

Описание: Получение IP-адреса пользователя, который привязан к прямому подключению и IP адреса для подключения к консоли

Входные данные: opcode
Возвращаемое значение: Строка "IP-адрес пользователя|IP", где IP-адрес пользователя – его текущий IP-адрес, а IP – IP-адрес виртуального сервера, привязанного к пользователю.

Метод send-ip

Описание: Отправка запроса на привязку IP адреса

Входные данные: opcode, ip
Возвращаемое значение: Сообщение в чат Telegram-бота с подтверждением отправки запроса на привязку IP-адреса.

Метод delete-ip

Описание: Отправка запроса на удаление IP адреса

Входные данные: opcode
Возвращаемое значение: Отправка сообщения на сервер о необходимости деактивировать IP-адрес пользователя в CDN.