dinhsan/laravel-mautic-api

免费开源营销自动化API

3.0.1 2023-05-15 03:36 UTC

This package is auto-updated.

Last update: 2024-09-15 10:48:46 UTC


README

免费开源营销自动化API

要求

  • Laravel ^9.0
  • PHP ^8.0.2 或更高版本
  • cURL 支持

Mautic 设置

必须在Mautic中启用API。

在Mautic中,转到配置页面(位于设置菜单中),然后在API设置下启用Mautic的API。您还可以在此处选择要使用的OAuth2协议。

保存配置后,转到API凭据页面(位于设置菜单中),并创建一个新的客户端。输入请求将从其中发送的 callback/redirect URI(必须是 https://your-app.com/mautic/application/register)。点击应用,然后复制 Client IDClient Secret 到将使用API的应用程序中。

安装

首先,您需要使用Composer要求该包

composer require dinhsan/laravel-mautic-api

然后,从命令行运行 composer update

然后,通过在服务提供程序中添加条目来更新 config/app.php

'providers' => [
	// ...
	Triibo\Mautic\MauticServiceProvider::class,
],

然后,通过在别名部分添加条目来注册类别名

'aliases' => [
    // ...
    'Mautic' => Triibo\Mautic\Facades\Mautic::class,
],

最后,从命令行运行 php artisan vendor:publish --provider="Triibo\Mautic\MauticServiceProvider" 以发布默认配置文件。这将发布一个名为 mautic.php 的配置文件、消费者迁移消费者模型

然后,运行 php artisan migrate 迁移命令以在您的数据库中创建消费者表。

配置

您需要在 config/mautic.php 中添加您的 client idclient secret 和 OAuth2 的 callback url,或添加 usernamepassword 以用于基本认证。或者将其放在您的 .env 文件中。

## OAuth2
MAUTIC_BASE_URL="https://your-mautic.com"
MAUTIC_PUBLIC_KEY="publicKey"
MAUTIC_SECRET_KEY="secretKey"
MAUTIC_CALLBACK="https://your-app.com/mautic/application/register"
## or BasicAuth
MAUTIC_BASE_URL="https://your-mautic.com"
MAUTIC_USERNAME="username"
MAUTIC_PASSWORD="password"

授权

此库仅支持 OAuth2BasicAuth 认证。对于OAuth2,您需要创建一个 OAuth2 客户端才能使用该API。

注册应用程序

为了将您的应用程序注册到Mautic,请ping此URL,这是一次性注册。

http://your-app.com/mautic/application/register

用法

在您的控制器中添加Mautic Facade。

use Triibo\Mautic\Facades\Mautic;

向Mautic发送请求(示例)

在Mautic中创建新的联系人。

$params = array(
    'firstname' => 'Prince',
    'lastname'  => 'Ali Khan',
    'email'     => 'princealikhan08@gmail.com'
);

Mautic::request('POST','contacts/new',$params);

获取所有联系人的列表

Mautic::request('GET','contacts');

获取唯一的联系人

Mautic::request('GET','contacts/1');
//where 1 is unique id for a contact.

删除联系人

Mautic::request('Delete','contacts/1/delete');
以及Mautic支持的更多端点。

Mautic支持的端点列表。

资产

[
    "assets",
    "assets/new",
    "assets/{asset_id}",
    "assets/{asset_id}/edit",
    "assets/{asset_id}/delete"
]

活动

[
    "campaigns",
    "campaigns/new",
    "campaigns/{campaign_id}",
    "campaigns/{campaign_id}/contacts",
    "campaigns/clone/{campaign_id}",
    "campaigns/{campaign_id}/edit",
    "campaigns/{campaign_id}/delete",
    "campaigns/{campaign_id}/contact/{contact_id}/add",
    "campaigns/{campaign_id}/contact/{contact_id}/remove"
]

类别

[
    "categories",
    "categories/new",
    "categories/{category_id}",
    "categories/{category_id}/edit",
    "categories/{category_id}/delete"
]

公司

[
    "companies",
    "companies/new",
    "companies/{company_id}",
    "companies/{company_id}/edit",
    "companies/{company_id}/delete",
    "companies/{company_id}/contact/{contact_id}/add",
    "companies/{company_id}/contact/{contact_id}/remove"
]

联系人

[
    "contacts",
    "contacts/batch/new",
    "contacts/batch/edit",
    "contacts/batch/delete",
    "contacts/new",
    "contacts/{contact_id}",
    "contacts/{contact_id}/edit",
    "contacts/{contact_id}/delete",
    "contacts/{contact_id}/dnc/{channel}/add",
    "contacts/{contact_id}/dnc/{channel}/remove",
    "contacts/{contact_id}/utm/add",
    "contacts/{contact_id}/utm/{utm_id}/remove",
    "contacts/{contact_id}/points/plus/{points}",
    "contacts/{contact_id}/points/minus/{points}",
    "contacts/list/owners",
    "contacts/list/fields",
    "contacts/{contact_id}/notes",
    "contacts/{contact_id}/segments",
    "contacts/{contact_id}/campaigns"
    "contacts/{contact_id}/events",
    "contacts/{contact_id}/activity",
    "contacts/activity",
    "contacts/{contact_id}/companies",
    "contacts/{contact_id}/devices"
]

数据

[
    "data",
    "data/{type}",
    "data/emails.in.time",
    "data/sent.email.to.contacts",
    "data/most.hit.email.redirects"
]

动态内容

[
    "dynamiccontents",
    "dynamiccontents/new",
    "dynamiccontents/{dynamiccontent_id}",
    "dynamiccontents/{dynamiccontent_id}/edit",
    "dynamiccontents/{dynamiccontent_id}/delete"
]

电子邮件

[
    "emails",
    "emails/new",
    "emails/{email_id}",
    "emails/{email_id}/edit",
    "emails/{email_id}/delete",
    "emails/{email_id}/send",
    "emails/reply/{tracking_hash}"
]

字段

[
    "fields/company",
    "fields/company/new",
    "fields/company/{company_id}",
    "fields/company/{company_id}/edit",
    "fields/company/{company_id}/delete",
    "fields/contact",
    "fields/contact/new",
    "fields/contact/{contact_id}",
    "fields/contact/{contact_id}/edit",
    "fields/contact/{contact_id}/delete"
]

文件

[
    "files/images",
    "files/{dir}/new",
    "files/{dir}/{file}/delete"
]

表单

[
    "forms",
    "forms/new",
    "forms/{form_id}",
    "forms/{form_id}/edit",
    "forms/{form_id}/delete",
    "forms/{form_id}/fields/delete",
    "forms/{form_id}/actions/delete",
    "forms/{form_id}/submissions",
    "forms/{form_id}/submissions/contact/{contact_id}",
    "forms/{form_id}/submissions/{submission_id}"
]

营销消息

[
    "messages",
    "messages/new",
    "messages/{message_id}",
    "messages/{message_id}/edit",
    "messages/{message_id}/delete"
]

备注

[
    "notes",
    "notes/new",
    "notes/{note_id}",
    "notes/{note_id}/edit",
    "notes/{note_id}/delete"
]

通知

[
    "notifications",
    "notifications/new",
    "notifications/{notification_id}",
    "notifications/{notification_id}/edit",
    "notifications/{notification_id}/delete"
]

页面

[
    "pages",
    "pages/new",
    "pages/{page_id}",
    "pages/{page_id}/edit",
    "pages/{page_id}/delete"
]

积分行为

[
    "points",
    "points/new",
    "points/{point_id}",
    "points/{point_id}/edit",
    "points/{point_id}/delete",
    "points/actions/types",
    "points/triggers",
    "points/triggers/new",
    "points/triggers/{point_id}",
    "points/triggers/{point_id}/edit",
    "points/triggers/{point_id}/delete",
    "points/triggers/{point_id}/events/delete",
    "points/triggers/events/types"
]

报告

[
    "reports",
    "reports/{report_id}"
]

角色

[
    "roles",
    "roles/new",
    "roles/{role_id}",
    "roles/{role_id}/edit",
    "roles/{role_id}/delete"
]

[
    "segments",
    "segments/new",
    "segments/{segment_id}",
    "segments/{segment_id}/edit",
    "segments/{segment_id}/delete",
    "segments/{segment_id}/contact/{contact_id}/add",
    "segments/{segment_id}/contact/{contact_id}/remove"
]

短信

[
    "smses",
    "smses/new",
    "smses/{sms_id}",
    "smses/{sms_id}/edit",
    "smses/{sms_id}/delete",
    "smses/{sms_id}/contact/{contact_id}/send"
]

阶段

[
    "stages",
    "stages/new",
    "stages/{stage_id}",
    "stages/{stage_id}/edit",
    "stages/{stage_id}/delete",
    "stages/{stage_id}/contact/{contact_id}/add",
    "stages/{stage_id}/contact/{contact_id}/remove"
]

统计

[
    "stats",
    "stats/{table}"
]

标签

[
    "tags",
    "tags/new",
    "tags/{tag_id}",
    "tags/{tag_id}/edit",
    "tags/{tag_id}/delete"
]

主题

[
    "themes",
    "themes/new",
    "themes/{theme_name}",
    "themes/{theme_name}/delete"
]

推文

[
    "tweets",
    "tweets/new",
    "tweets/{tweet_id}",
    "tweets/{tweet_id}/edit",
    "tweets/{tweet_id}/delete"
]

用户

[
    "users",
    "users/new",
    "users/{user_id}",
    "users/{user_id}/edit",
    "users/{user_id}/delete",
    "users/self",
    "users/{user_id}/permissioncheck"
]

Webhooks

[
    "hooks",
    "hooks/new",
    "hooks/{hook_id}",
    "hooks/{hook_id}/edit",
    "hooks/{hook_id}/delete",
    "hooks/triggers"
]

有关所有可自定义参数的详细信息,请参阅文档