Как добавить преимущество (адрес электронной почты, имя) в список в Marketo через API - PullRequest
0 голосов
/ 05 сентября 2018

API Marketo так запутывает нового пользователя, как я. У меня есть адрес электронной почты и имя, и я хотел бы передать это в Marketo. Как мне это сделать?

1 Ответ

0 голосов
/ 26 сентября 2018

Чтобы отправить ведущую запись в Marketo через REST API, есть несколько конечных точек, которые вы можете выбрать:

Из этих трех, Sync Leads может быть самым простым в использовании, так как для этого требуется наименьшее количество дополнительных параметров.
По сути, вы должны сделать запрос POST к
https://<MUNCHKIN_ID>.mktorest.com/rest/v1/leads.json?access_token=<ACCESS_TOKEN> URL с вашими данными, отправленными в теле запроса.

Вы найдете MUNCHKIN_ID в Admin> Интеграция> Munchkin вкладка в вашем экземпляре. Находясь в области администрирования, вы также должны создать пользователя API (или разрешить доступ к API для вашего собственного пользователя), настроить службу LaunchPoint с этим пользователем для API REST и, наконец, запросить - временный, действительный в течение 1 часа - доступ токен для проверки соединения. Весь процесс подробно описан в главе Аутентификация документации REST API.

Получив токен доступа «все еще действительный», вы можете совершить вызов выше, указав информацию о своем лиде в следующей структуре данных:

{  
   "action":"createOrUpdate",
   "lookupField":"email",
   "input":[  
        {  
            "email":"collizo@4sky.com",
            "firstName":"Collizo4sky"
        },
        // …more leads (up to 300) if needed
    ]
}

Если вы используете php, вот пример кода:

$munchkinId = '123-ABC-456';
$accessToken = 'abcdefgh-1234-5678-abcd-12345678abcd:lon';

$url = "https://{$munchkinId}.mktorest.com/rest/v1/leads.json?access_token={$accessToken}";
$dataJSON = [
    'action'      => 'createOrUpdate',
    'lookupField' => 'email',
    'input'       => [  
        [
            'email'     => 'collizo@4sky.com',
            'firstName' => 'Collizo4sky',
        ],
    ],
];

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($dataJSON));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response  = curl_exec($ch);
curl_close($ch);

var_dump($response);

/**
 * Which should result in a response like this:
 * / 
{
    "requestId":"4033#16612d185ad",
    "result":[
        {
            "id":1042016,
            "status":"created"
        }
    ],
    "success":true
}
/**/
...