martincamen/laravel-getanewsletter

Laravel 对 Get A Newsletter API 的封装

dev-master 2021-03-03 08:57 UTC

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);

待办事项

  • 添加所有端点(包括导出)
  • 错误处理
  • ...等等。