martincamen / laravel-getanewsletter
Laravel 对 Get A Newsletter API 的封装
Requires
- php: 7.*
- guzzlehttp/guzzle: 6.*|^7.0.1
This package is auto-updated.
Last update: 2024-09-29 06:02:35 UTC
README
此包使用 Get A Newsletter 的 API 版本 3.0。有关 API 和可能的参数/参数的详细信息,请参阅官方文档:https://api.getanewsletter.com/v3/docs/。
安装
目前,由于尚未添加到 Packagist,可以通过将以下内容添加到您的 composer.json
来安装:
"repositories": [ { "type": "vcs", "url": "https://github.com/MartinCamen/laravel-getanewsletter" } ],
并添加到 require 部分
"martincamen/laravel-getanewsletter": "dev-master"
通过运行以下命令发布配置文件:
php artisan vendor:publish --provider="MartinCamen\GetANewsletter\GetANewsletterServiceProvider" --tag="config"
从 Get A Newsletter 获取认证令牌并在配置文件或 .env
文件中设置它,然后即可使用!
方法
几乎所有 下面的模块的 get()
方法都处理相同。
该方法接受两个参数
获取特定模块的所有结果
GetANewsletter::contacts()->get(); GetANewsletter::lists()->get(); // ...and so on.
带有参数
GetANewsletter::contacts()->get(['page' => 1], false); GetANewsletter::lists()->get(['page' => 1], false); // ...and so on.
例外情况 包括(例如)Reports
的子方法,它将 $reportId
作为其第一个参数,有时还会将另一个相关的 id
字段作为其第二个参数。上述参数随后被推送到第二个或第三个位置,然后遵循相同的标准。
联系人
获取所有联系人
GetANewsletter::contacts()->get();
创建新的联系人
GetANewsletter::contacts()->create($email, $additionalData, false);
更新联系人
GetANewsletter::contacts()->update($email, $additionalData, false);
删除联系人(传递要删除的电子邮件 (string)
)
GetANewsletter::contacts()->delete($email);
电子邮件
获取所有电子邮件(已发送和草稿)
GetANewsletter::emails()->get();
草稿和已发送电子邮件
获取所有草稿/已发送
GetANewsletter::drafts()->get(); GetANewsletter::sent()->get();
要获取特定电子邮件,请使用带有适当 ID 的 find()
方法(将返回为集合,如果您想获取原始响应,请将第二个参数传递为 false
)
GetANewsletter::drafts()->find($id); GetANewsletter::sent()->find($id, false);
删除草稿/已发送(传递要删除的项目 ID (int)
)
GetANewsletter::drafts()->delete($id); GetANewsletter::sent()->delete($id);
创建新的草稿
GetANewsletter::drafts()->create($data, false);
更新草稿
GetANewsletter::drafts()->update($id, $additionalData, false);
复制草稿(传递要复制的草稿 ID (int)
,第二个参数是指结果是否应为集合)
GetANewsletter::drafts()->copy($id, false);
列表
获取所有列表
GetANewsletter::lists()->get();
创建新的列表
GetANewsletter::lists()->create($data, false);
更新列表
GetANewsletter::lists()->update($hash, $additionalData, false);
删除列表(传递要删除的列表哈希 (string)
)
GetANewsletter::lists()->delete($hash);
属性
获取所有属性
GetANewsletter::attributes()->get();
创建新的属性
GetANewsletter::attributes()->create($name, $data, false);
更新属性
GetANewsletter::attributes()->update($name, $code, false);
删除属性(传递要删除的属性代码 (string)
)
GetANewsletter::attributes()->delete($code);
订阅
获取所有订阅
GetANewsletter::subscriptions()->get();
报告
获取所有报告
GetANewsletter::reports()->get();
要获取特定报告,请使用带有适当 ID 的 find()
方法(将返回为集合,如果您想获取原始响应,请将第二个参数传递为 false
)
GetANewsletter::reports()->find($id); GetANewsletter::reports()->find($id, false);
已打开
获取特定报告的所有已打开
GetANewsletter::opened()->get($reportId);
获取有关特定报告的特定打开的信息(如果您想获取原始响应,请将第三个参数传递为 false
)
GetANewsletter::opened()->find($reportId, $openId);
获取有关特定报告的聚合报告
GetANewsletter::opened()->aggregated($reportId);
未打开
获取特定报告的所有未打开项
GetANewsletter::nonOpened()->get($reportId);
获取有关特定报告的特定未打开项的信息(如果您想获取原始响应,将 false
作为第三个参数传递)
GetANewsletter::nonOpened()->find($reportId, $nonOpenedId);
退信
获取特定报告的所有退信
GetANewsletter::bounces()->get($reportId);
获取有关特定报告的特定退信的信息(如果您想获取原始响应,将 false
作为第三个参数传递)
GetANewsletter::bounces()->find($reportId, $bounceId);
链接
获取有关特定报告的所有链接和点击数据的信息
GetANewsletter::links()->get($reportId);
获取有关特定报告的特定链接的信息(如果您想获取原始响应,将 false
作为第三个参数传递)
GetANewsletter::links()->find($reportId, $linkId);
点击
获取有关特定报告和链接的点击信息
GetANewsletter::links()->get($reportId, $linkId);
获取有关特定报告和链接的特定点击的信息(如果您想获取原始响应,将 false
作为第四个参数传递)
GetANewsletter::links()->find($reportId, $linkId, $clickId);
退订
获取有关特定报告的所有退订信息
GetANewsletter::unsubscriptions()->get($reportId);
获取有关特定报告的特定退订的信息(如果您想获取原始响应,将 false
作为第二个参数传递)
GetANewsletter::unsubscriptions()->find($reportId);
待办事项
- 添加所有端点(包括导出)
- 错误处理
- ...等等。