meowto16 / profitbase
Обертка для работы с запросами к ProfitBase API
2.0
2023-11-03 08:53 UTC
Requires
- php: ^8.0
- ext-curl: *
- ext-json: *
This package is auto-updated.
Last update: 2024-11-03 10:48:35 UTC
README
ProfitBase API Wrapper
Мини-обертка с методами для обращения к API ProfitBase, без необходимости писать свои cURL запросы.
Начало работы
Перед использованием обёртки, нужно подключить файл от composer для автозагрузки классов 'autoload.php'.
Пример подключения autoload.php composer'a
if (file_exists($_SERVER["DOCUMENT_ROOT"] . "/vendor/autoload.php"))
require $_SERVER["DOCUMENT_ROOT"] . "/vendor/autoload.php";
Пример использования
Все запросы идут через одну точку входа $handler
<?php // Подключаем autoload.php composer if (file_exists($_SERVER["DOCUMENT_ROOT"] . "/vendor/autoload.php")) require $_SERVER["DOCUMENT_ROOT"] . "/vendor/autoload.php"; // https://developer.profitbase.ru/ $handler = new \Meowto16\ProfitBase\Handler([ "API_KEY" => "app-2s2sfc46x7jd5", // Ваш API-KEY, можно получить в личном кабинете "API_URL" => "https://pbXXX.profitbase.ru/api/v4/json", // API EndPoint, где pbXXX - ваш sub.домен // Файл, куда будем кэшировать данные для авторизации, для последующих запросов. Важно, чтобы на него нельзя было зайти напрямую. "AUTH_JSON_PATH" => $_SERVER["DOCUMENT_ROOT"] . "/data/profitbase/authorize-data.json" ]); // Задаем фильтр, если он необходим. $filter = [ "status" => ["AVAILABLE"], // Получить только со статусом "В продаже" "price" => [ "min" => 2000000, // От 2 млн. "max" => 6000000 // До 6 млн. ], "projectIds" => [15562], // ID Проекта '15562' "propertyTypeAliases" => ["office"] // Только офисы ]; // Делаем запрос $properties = $handler->getProperties($filter); // Смотрим на данные, которые пришли от ProfitBase echo '<pre>'; var_dump($properties); echo '</pre>';
Доступные методы
Общие
$handler->lastResponse
- последний ответ от ProfitBase$handler->lastCode
- последний код ответа от ProfitBase
Шахматка
$handler->getBoard($params)
- метод получения шахматки дома
Фасады
$handler->getFacade($params)
- метод получения списка фасадов дома
Этажи
$handler->getFloors($params)
- метод получения планировок этажей дома
Дома
$handler->getHouses($params)
- метод получения списка домов с возможностью фильтрации$handler->getCountFloors($params)
- метод получения количества этажей в конкретном доме$handler->getCountPropertiesOnFloor($params)
- метод получения количества помещений в конкретном доме на конкретном этаже$handler->createHouse($params)
- метод создания дома в существующем ЖК
Акции и специальные предложения
$handler->getSpecialOffers($params)
- метод получения списка активных акции со списком помещений по каждой акции
Планировки
$handler->getPlan($params)
- метод получения планировок помещений с возможностью фильтрации
Проекты
$handler->getProjects()
- метод получения списка ЖК$handler->createProject($params)
- метод создания ЖК
Квартиры
$handler->getProperties($params)
- метод получения списка помещений с возможностью фильтрации$handler->getPropertyTypes()
- метод получения списка типов помещений и их дополнительных полей$handler->getPropertiesFromDeal($dealId)
- метод получения списка помещений привязанных к конкретной сделке$handler->getPropertyHistory($propertyId)
- метод получения истории изменения статусов по конкретному помещению