eyefi/marketo

Marketo SOAP API 的 PHP 客户端。

v1.0.1 2016-07-01 03:44 UTC

This package is not auto-updated.

Last update: 2024-09-14 16:36:33 UTC


README

Marketo SOAP API 的 PHP 客户端。

安装

将以下行添加到您的 composer.json require 部分

"eyefi/marketo": "dev-master"

并将以下内容添加到您的 composer.json repositories 部分

{
  "type": "vcs",
  "url": "https://github.com/eyefi/marketo"
}

使用方法

身份验证

首先,您需要包含 marketo 类并创建客户端的一个新实例。

您需要您的 SOAP 用户 ID、SOAP 加密密钥以及 Marketo API 端点的主机名。这些可以在登录到 app.marketo.com 后,在“管理员 -> SOAP”部分找到。

如果您在环境中存储配置,则可以创建一个新实例,如下所示

<?php
use Marketo\Marketo;
$marketo_client = new Marketo($_ENV['MARKETO_USER_ID'], $_ENV['MARKETO_ENCRYPTION_KEY'], $_ENV['MARKETO_SOAP_HOST']);

凭证直接传递给类,而不是在超级全局变量中查找常量或键,因此您可以选择多个 Marketo 实例进行连接。

获取潜在客户

您可以使用 get_lead_by($type, $value) 方法获取潜在客户。

参数

$type - 您想通过哪种 ID 来查找潜在客户。可以是以下之一

  • idnum - Marketo 潜在客户 ID
  • cookie - 整个 _mkto_trk cookie
  • email - 潜在客户的电子邮件地址
  • sdfccontantid - Salesforce 联系人 ID
  • sfdcleadid - Salesforce 潜在客户 ID

$value - 键的值。例如,如果 $type 是 email,则 $value 应该是一个电子邮件地址

示例

<?php
$marketo_client->get_lead_by('email', 'ben@benubois.com');

这将返回一个潜在客户对象的数组或 FALSE(如果未找到)。无论找到多少潜在客户,结果始终是一个数组。

创建或更新潜在客户

您可以使用 sync_lead($lead, $lead_key = NULL, $cookie = NULL) 方法创建或更新潜在客户。

参数

$lead - 潜在客户属性的相关数组

$lead_key - 可选,用于识别潜在客户的键,可以是电子邮件或 Marketo ID

$cookie - 可选,潜在客户将关联的整个 _mkto_trk cookie

示例

如果没有提供 $lead_key 或 $cookie,将创建一个新的潜在客户

<?php
$marketo_client->sync_lead(array('Email' => 'ben@benubois.com'));

如果指定了 $lead_key 或 $cookie,Marketo 将尝试识别潜在客户并更新它。发送 _mkto_trk cookie 对于将同步的潜在客户与 Marketo 在匿名状态下收集的任何信息关联非常重要。

<?php
$marketo_client->sync_lead(array('Unsubscribed' => FALSE), 'ben@benubois.com', $_COOKIE['_mkto_trk']);

这将返回更新或创建的潜在客户对象。

将潜在客户添加到活动

您可以使用 add_to_campaign($campaign_key, $leads) 方法将潜在客户添加到活动。

参数

$campaign_key - 活动 ID 或活动名称。您可以从 get_campaigns() 获取这些信息。

$leads - 一个关联数组,键为潜在客户 ID 类型,值为对应值。这也可以是一个关联数组的数组。可用的 ID 类型包括

  • idnum - Marketo 潜在客户 ID
  • sdfccontantid - Salesforce 联系人 ID
  • sfdcleadid - Salesforce 潜在客户 ID

示例

将一个潜在客户添加到活动

<?php
$client->add_to_campaign(321, array('idnum' => '123456'));

将多个具有不同 ID 类型的潜在客户添加到活动

<?php
$leads = array(
   array('idnum' => '123456'),
   array('sfdcleadid' => '001d000000FXkBt')
);
	
$client->add_to_campaign(321, $leads);

如果成功返回 TRUE,如果失败返回 FALSE

获取活动

您可以使用 get_campaigns($campaign = NULL) 方法获取可用活动。

参数

$name - 可选,要获取的活动的确切名称

您通常会使用此功能在调用 add_to_campaign() 时确定可用的活动。

返回一个包含所有可供API使用的活动的对象。只有当活动具有“请求活动”触发器且来源为“Web服务API”时,这些活动才对API可用。

示例

<?php
$marketo_client->get_campaigns();