passchn / digistore-api-wrapper
Digistore Api Wrapper PHP 插件
v0.2.0
2022-12-23 11:52 UTC
Requires
- php: >=7.4
- ext-curl: *
- nette/utils: ^3.2
README
无进一步开发
我不再使用 Digistore24,所以不太可能进一步开发这个包。
安装
您可以使用 composer 安装此插件。
安装 composer 包的推荐方法是
composer require passchn/digistore-api-wrapper
连接到 API
要连接到 API,请创建一个 DigistoreClient
实例,并传递来自 Digistore24.com 的 API 密钥
use DigistoreApi\DigistoreClient;
$api = new DigistoreClient($api_key);
测试连接
return $api->isConnected() // true or false
如果返回 false
,或者某些 API 调用出错,并收到 null
响应,请检查最后一条错误消息或所有发生的错误
$api->getLastError() // error message (string) or null
$api->getErrors() // array of Exceptions or null
从 API 获取数据
此插件是 Digistore24 API 的包装器。请在此处查看完整参考:dev.digistore24.com。
目标是拥有已知的返回类型(例如,具有定义字段的 Buyer
或 Purchase
),并提供更简单的访问。
然而,目前只支持少量可能的查询。一般来说,您始终可以使用此方法调用任何端点
$api->call($method, ...$arguments)
支持的包装器端点
购买
通过订单 ID / 购买 ID 获取一个 DigistoreApi\Purchases\Purchase
或 null
$api->Purchases->get($id);
通过传递一个订单 ID 数组获取一个 DigistoreApi\Purchases\Purchase[]
或 null
$api->Purchases->getMany([
'12345',
'67890',
'...'
]);
买家
通过 ID 或电子邮件获取一个 DigistoreApi\Buyers\Buyer
(或 null
)。
$api->Buyers->get($id_or_email);
通过传递电子邮件列表或 ID 列表获取一个 Buyers
数组或 null
。
$api->Buyers->getMany([$id_or_email, $other_email, $some_id]);
配送
计算尚未处理的配送数量。
$deliveries = $api->Deliveries->countOpen() // ?int
通过购买 ID / 订单 ID 查找配送。
$deliveries = $api->Deliveries->listForPurchase("ABC123") // ?array
通过指定时间范围查找配送(默认为过去 6 周)。
$deliveries = $api->Deliveries->listForTimeRange() // ?array
通过类型/状态,例如请求(尚未处理),配送(已发送),或已取消,查找配送。
$deliveries = $api->Deliveries->listByTypes([
DeliveryTypes::REQUEST,
DeliveryTypes::DELIVERY,
]) // ?array
贡献
您可以通过 Pull Requests 贡献此插件。