topbroker / topbroker-php
TopBroker API 客户端
Requires
- php: >= 7.1
- ext-json: *
- guzzlehttp/guzzle: ^6.3
Requires (Dev)
- php-http/guzzle6-adapter: ^1.0 || ^2.0
README
PHP 对 TopBroker API 的绑定
安装
该库支持 PHP 7.1 及更高版本。推荐通过 Composer 安装。
composer require topbroker/topbroker-php php-http/guzzle6-adapter
使用
使用您的访问令牌初始化客户端
use TopBroker\TopBrokerApi; $topbroker = new TopBrokerApi('<insert_api_username_token_here>', '<insert_api_password_token_here>');
房地产
房地产列表
https://app.topbroker.lt/api-docs/#/estates/getEstates
/** Get Estate List */ $topbroker->estates->getList([]); /** Get Estate List Flat and Houses, * Minimum 50 sq. m area, sort by price from highest to lowest */ $topbroker->estates->getList([ 'estate_type' => ['house', 'flat'], 'area_min' => 50, 'sort_by' => 'price', 'sort_to' => 'desc', 'per_page' => 10, 'page' => 1 ]); /** Get Estate List By Custom Field */ $topbroker->estates->getList(['custom_fields' => [ 'c_f_e_zymos' => ['Discounted', 'Top']] ]);
按用户 ID 获取房地产数量
https://app.topbroker.lt/api-docs/#/estates/countEstate
$topbroker->estates->getCount(['user_id' => 123]);
获取所有可用的房地产自定义字段
https://app.topbroker.lt/api-docs/#/estates/getEstateCustomFields
$topbroker->estates->getCustomFields([]);
获取房地产自定义视图
https://app.topbroker.lt/api-docs/#/estates/getEstatesCustomViews
$topbroker->estates->getCustomViews([]);
获取房地产记录状态
https://app.topbroker.lt/api-docs/#/estates/getEstateRecordStatuses
$topbroker->estates->getRecordStatuses([]);
获取特定房地产类型的属性
https://app.topbroker.lt/api-docs/#/estates/getEstateCustomFields
$topbroker->estates->getAttributes('commercial'); $topbroker->estates->getAttributes('flat'); $topbroker->estates->getAttributes('site'); $topbroker->estates->getAttributes('house');
创建房地产
https://app.topbroker.lt/api-docs/#/estates/createEstate
$topbroker->estates->createItem([ 'estate_type' => 'flat', 'user_id' => 123, 'municipality_id' => 461, 'city_id' => 1, 'block_id' => 1, 'street_id' => 22189, 'area' => 68.2, 'sale_price' => 125000, 'floor' => 2, 'floor_count' => 5, 'room_count' => 3, 'custom_fields' => [ 'c_f_c_tags' => ['Good location'] ]);
按 ID 获取房地产
https://app.topbroker.lt/api-docs/#/estates/getEstate
$topbroker->estates->getItem(12345);
更新房地产
https://app.topbroker.lt/api-docs/#/estates/updateEstate
$topbroker->estates->updateItem(12345, [ 'name' => 'Johnny NewName', 'custom_fields' => ['c_f_c_company_name' => 'Company ABC'] ]);
获取房地产照片
https://app.topbroker.lt/api-docs/#/estates/getEstatePhotos
$topbroker->estates->getPhotos(12345);
获取房地产媒体(视频 && 3D 导览)
https://app.topbroker.lt/api-docs/#/estates/getEstateMedia
$topbroker->estates->getMedia(12345);
获取房地产附近的地点
https://app.topbroker.lt/api-docs/#/estates/getEstateNearbyPlaces
$topbroker->estates->getNearbyPlaces(12345);
更改房地产隐私
https://app.topbroker.lt/api-docs/#/estates/changeEstatePrivacy
$topbroker->estates->changePrivacy(12345, ['privacy_level' => 'public']);
更改房地产所有者
https://app.topbroker.lt/api-docs/#/estates/changeEstateOwner
$topbroker->estates->changeOwner(12345, ['user_id' => 1]);
删除房地产
软删除,记录将被存储在“设置”->“回收站”中,用户可以恢复记录
https://app.topbroker.lt/api-docs/#/estates/deleteEstate
$topbroker->estates->deleteItem(12345);
地点
与房地产和咨询记录直接相关的各种基于地点的记录。也可以用于任何记录中的自定义字段。
地点记录层次结构:市镇 -> 城市 -> 街区 -> 街道
市镇
https://app.topbroker.lt/api-docs/#/municipalities/getMunicipalities
$topbroker->locations->getMunicipalities([]);
城市
https://app.topbroker.lt/api-docs/#/cities/getCities
/** List of cities located in specific municipality */ $topbroker->locations->getCities(['municipality_id' => 123]);
街区(区)
https://app.topbroker.lt/api-docs/#/blocks/getBlocks
/** List of districts located in specific city */ $topbroker->locations->getBlocks(['city_id' => 123]);
街道
https://app.topbroker.lt/api-docs/#/streets/getStreets
/** List of street located in specific city, containing Flat type estates and minimum price 100K */ $topbroker->locations->getStreets([ 'city_id' => 123, 'for_sale ' => true, 'price_to' => 100000, 'estate_type' => ['flat'] ]);
地点
地点是市镇、城市、街区和街道的扁平化层次结构记录。主要用于咨询记录。也用于自定义字段“地点”类型的记录值
https://app.topbroker.lt/api-docs/#/locations/getLocations
$topbroker->locations->getList([]);
按 ID 获取地点项
https://app.topbroker.lt/api-docs/#/locations/getLocation
$topbroker->locations->getItem(1234);
联系人
获取联系人列表
https://app.topbroker.lt/api-docs/#/contacts/getContacts
/** Get Contact List */ $topbroker->contacts->getList([]); /** Get Contact List By User ID */ $topbroker->contacts->getList(['user_id' => 123]); /** Get Contact List By Custom Field */ $topbroker->contacts->getList(['custom_fields' => [ 'c_f_c_company_name' => 'Company XYZ', 'c_f_c_company_size' => '5-10'] ]);
按用户 ID 计数联系人
https://app.topbroker.lt/api-docs/#/contacts/countContacts
$topbroker->contacts->getCount(['user_id' => 123]);
联系人自定义字段列表
https://app.topbroker.lt/api-docs/#/contacts/getContactCustomFields
$topbroker->contacts->getCustomFields([]);
获取联系人记录状态
https://app.topbroker.lt/api-docs/#/contacts/getContactRecordStatuses
$topbroker->contacts->getRecordStatuses([]);
创建联系人
https://app.topbroker.lt/api-docs/#/contacts/createContact
$topbroker->contacts->createItem([ 'name' => 'John Doe', 'user_id' => 123, 'custom_fields' => [ 'c_f_c_company_name' => 'Company XYZ', 'c_f_c_company_size' => '5-10'] ]);
按 ID 获取联系人
https://app.topbroker.lt/api-docs/#/contacts/getContact
$topbroker->contacts->getItem(12345);
更新联系人
https://app.topbroker.lt/api-docs/#/contacts/updateContact
$topbroker->contacts->updateItem(12345, [ 'name' => 'Johnny NewName', 'custom_fields' => ['c_f_c_company_name' => 'Company ABC'] ]);
更改联系人所有者
https://app.topbroker.lt/api-docs/#/contacts/changeContactOwner
$topbroker->contacts->changeOwner(12345, ['user_id' => 1]);
更改联系人隐私
https://app.topbroker.lt/api-docs/#/contacts/changeContactPrivacy
$topbroker->contacts->changePrivacy(12345, ['privacy_level' => 'shared', 'user_ids' => [12, 34, 42]]);
删除联系人
软删除,记录将被存储在“设置”->“回收站”中,用户可以恢复记录
https://app.topbroker.lt/api-docs/#/contacts/deleteContact
$topbroker->contacts->deleteItem(12345);
咨询
获取咨询列表
https://app.topbroker.lt/api-docs/#/inquiries/getInquiries
/** Get Contact List */ $topbroker->inquiries->getList([]); /** Get Contact List By User ID */ $topbroker->inquiries->getList(['user_id' => 123]); /** Get Contact List By Custom Field */ $topbroker->inquiries->getList(['custom_fields' => [ 'c_f_i_special_needs' => 'Disco ball'] ]);
计数咨询
https://app.topbroker.lt/api-docs/#/inquiries/countInquiry
$topbroker->inquiries->getCount([]);
咨询自定义字段列表
https://app.topbroker.lt/api-docs/#/inquiries/getInquiriesCustomFields
$topbroker->inquiries->getCustomFields([]);
获取咨询记录状态
https://app.topbroker.lt/api-docs/#/inquiries/getInquiryRecordStatuses
$topbroker->inquiries->getRecordStatuses([]);
创建咨询
https://app.topbroker.lt/api-docs/#/inquiries/createInquiry
$topbroker->inquiries->createItem([ 'estate_type' => 'house', 'title' => 'Hub','user_id' => 123, 'custom_fields' => [ 'c_f_i_special_needs' => ['Disco ball', 'Unicorn'], 'c_f_c_company_size' => '1-5'] ]);
按 ID 获取咨询
https://app.topbroker.lt/api-docs/#/inquiries/getInquiry
$topbroker->inquiries->getItem(12345);
更新查询
https://app.topbroker.lt/api-docs/#/inquiries/updateInquiry
$topbroker->inquiries->updateItem(12345, [ 'title' => 'Dev Hub', 'custom_fields' => ['c_f_c_company_name' => 'Startup XYZ'] ]);
更改查询所有者
https://app.topbroker.lt/api-docs/#/inquiries/changeInquiryOwner
$topbroker->inquiries->changeOwner(12345, ['user_id' => 1]);
更改查询隐私
https://app.topbroker.lt/api-docs/#/inquiries/changeInquiryPrivacy
$topbroker->inquiries->changePrivacy(12345, ['privacy_level' => 'shared', 'user_ids' => [12, 34, 42]]);
删除查询
软删除,记录将被存储在“设置”->“回收站”中,用户可以恢复记录
https://app.topbroker.lt/api-docs/#/inquiries/deleteInquiry
$topbroker->inquiries->deleteItem(12345);
财务
使用财务功能,用户可以追踪与房产和客户相关的收入和支出。
返回过滤后的财务列表
https://app.topbroker.lt/api-docs/#/finances/getFinances
$topbroker->finances->getList(['user_id' => 12345]);
返回过滤后的财务记录总和
https://app.topbroker.lt/api-docs/#/finances/getFinancesSum
$topbroker->finances->getSum(['user_id' => 12345]);
返回财务收入分组
https://app.topbroker.lt/api-docs/#/finances/getFinanceGroupIncome
$topbroker->finances->getIncomeGroups();
返回财务支出分组
https://app.topbroker.lt/api-docs/#/finances/getFinanceGroupExpenses
$topbroker->finances->getExpensesGroups();
交易
已售/出租房产交易
获取交易列表
https://app.topbroker.lt/api-docs/#/deals/getDeals
$topbroker->deals->getList(['user_id' => 12345, 'finance_operation_type' => 'income']);
根据ID获取交易
https://app.topbroker.lt/api-docs/#/deals/getDeal
$topbroker->deals->getItem(12345);
计算交易数量
https://app.topbroker.lt/api-docs/#/deals/getDealsCount
$topbroker->deals->getCount(['estate_type' => ['flat']]);
平均计算交易
https://app.topbroker.lt/api-docs/#/deals/getDealsAverage
$topbroker->deals->getAverage(['for_sale' => true]);
用户
获取用户列表
https://app.topbroker.lt/api-docs/#/users/getUsers
$topbroker->users->getList(['custom_fields' => ['c_f_u_visible_in_homepage' => 'Yes']]);
根据ID获取用户
https://app.topbroker.lt/api-docs/#/users/getUser
$topbroker->users->getItem(12345);
计算用户数量
https://app.topbroker.lt/api-docs/#/users/countUsers
$topbroker->users->getCount([]);
用户自定义字段列表
https://app.topbroker.lt/api-docs/#/users/getUsersCustomFields
$topbroker->users->getCustomFields([]);