marketscan / mscan
MarketScan mScan API 包装器和示例代码
Requires
- guzzlehttp/guzzle: ~6.0
README
这是一个 MarketScan mScan API 的 PHP 客户端。
这个库由 MarketScan 客户编写、维护和使用。如有关于此客户端库的帮助,请打开问题或拉取请求。如果您遇到凭证或其他 MarketScan 问题,请联系他们的优秀 API 支持团队,邮箱为 mscanapi@marketscan.com
入门指南
您可以通过 Composer 安装此库
composer require marketscan/mscan
在您的代码中,通过将您的合作伙伴 ID 和账号号码传递给构造函数来实例化 API 客户端。您可以选择将根 URL 作为第三个参数传递。
$mscan = new \MarketScan\MScan( 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', '000000', 'http://integration.marketscan.com/mscanservice/rest/mscanservice.rst/?' );
命令
查找车辆
查找车辆最强大的方式是使用 GetVehiclesByVINParams
。
您可以通过 VIN 查找特定的车辆,只需将其作为唯一参数传递
$mscan->GetVehiclesByVINParams('1G1YB2D73G5121725');
您也可以传递一个更详细的查询对象,该对象使用 MarketScan VIN 解析器搜索您的库存。 请参阅文档以获取详细信息。
$mscan->GetVehiclesByVINParams([ 'Vin' => '1G1YB2D73G5', 'IsNew' => true ]);
您可以获取完整的制造商和型号列表。每次调用需要一个参数,如果为 true,则返回当前新的制造商或型号,如果为 false,则返回可能可用的制造商和型号(例如,DMC、Plymouth)。
$mscan->GetMakes(true); $mscan->GetModels(true);
获取制造商信息
您可以获取支持的制造商的完整列表。这些信息很少改变,可以缓存。
$mscan->GetManufacturers();
您还可以获取特定车辆(通过 MarketScan 车辆 ID)的制造商
$mscan->GetManufacturer($vehicle_id);
关于您的经销商信息
您可以通过查找您的经销商的 ZIP 码来查找 MarketScan 用于描述您地区的代码
$mscan->GetMarketByZIP(68123);
等等。
API 的整个 API 尚未映射到 PHP 方法。(欢迎拉取请求!)如果您需要尚未直接实现的 API 方法,API 调用的通用形式为
$mscan->api_request( 'api method name', 'GET or POST', 'string to append to the URL', 'data to JSON encode and POST in the request body' );
其中一些 API 操作,尤其是 RunScan
,提供了极其细致的控制。如果您需要了解可以传递哪些选项,请查看 MarketScan 的 API 文档。
演示页面
该库包含用于获取 VIN 并返回租赁和零售贷款付款矩阵的演示代码。要运行演示
- 克隆此存储库
- 在存储库文件夹中,运行
composer install
以加载依赖项并设置自动加载器。 cp demo/credentials-sample.php demo/credentials.php
然后使用您的账号团队的 MarketScan 凭据更新 credentials.php。(如果您对拉取请求进行更改,git 将忽略此新文件。)- 启动 PHP 本地服务器:
php -S localhost:4242 -t demo
- 在浏览器中打开 https://:4242
运行 RunScan
MarketScan API 中有很多好的功能,但最好的功能在 RunScan
结果中。
为车辆(假设您从其 VIN 开始)构建要传递给 RunScan 的 请求对象
- 将
Vehicle.ID
设置为从$mscan->GetVehiclesByVINParams($vin)
收到的值 - 将
AutoRebateParams.ZIP
设置为客户所在的邮编 - 将
AutoRebateParams.DealerZIP
设置为经销商的邮编 - 将
Market
设置为您从$mscan->GetMarketByZIP($zip)
接收到的经销商市场ID(市场ID可以无限期缓存)