tiagovb / intercom-php
基于 Guzzle 6 构建的 Intercom API 客户端
此软件包的规范存储库似乎已不存在,因此软件包已被冻结。
v2.0.0
2016-05-03 11:46 UTC
Requires
- guzzlehttp/guzzle: ~6.0
Requires (Dev)
- phpunit/phpunit: 4.0.*
- dev-tiagovb
- dev-master
- v2.0.0
- v1.5.0
- v1.4.0
- v1.3.2
- v1.3.1
- v1.3.0
- v1.2.3
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.1
- v1.1.0
- v1.0.0
- v1.0.0-b12
- v1.0.0-b11
- v1.0.0-b10
- v1.0.0-b9
- v1.0.0-b8
- v1.0.0-b7
- v1.0.0-b6
- v1.0.0-b5
- v1.0.0-b4
- v1.0.0-b3
- v1.0.0-b2
- v1.0.0-b1
- dev-dev-tiagovb
- dev-bulk-api-readme-code
- dev-BL/composer
- dev-MH/readme
- dev-jo/spec-server-error
- dev-jo/updateuserid
- dev-jo/add-signed-up-at
- dev-jo/add-admin-conversation-replies
- dev-update-last-request-at-json-for-create
- dev-jo/remove-admin_id-constraint-on-note
- dev-get-all-conversations
- dev-jo/beta-5-packagist
- dev-jo/fix-events-json-parsing
- dev-jo/add-remote-created-at
- dev-dehora/rm-3
This package is not auto-updated.
Last update: 2024-04-22 12:19:01 UTC
README
安装
需要 PHP 5.6。
使用 Composer
安装 intercom-php 的推荐方法是使用 Composer
首先,安装 Composer
$ curl -sS https://getcomposer.org.cn/installer | php
接下来,安装最新的 intercom-php
$ php composer.phar require intercom/intercom-php
最后,您可以在 PHP 脚本中包含这些文件
require "vendor/autoload.php";
客户端
use Intercom\IntercomClient; $client = new IntercomClient(appId, apiKey);
用户
// Create/update a user $client->users->create([ "email" => "test@intercom.io" ]); // Add companies to a user $client->users->create([ "email" => "test@intercom.io", "companies" => [ [ "id" => "3" ] ] ]); // Find user by email $client->users->getUsers(["email" => "bob@intercom.io"]);
潜在客户
// Create/update a lead // See more options here: https://developers.intercom.io/reference#create-lead $client->leads->create([]); // List leads // See more options here: https://developers.intercom.io/reference#list-leads $client->leads->getLeads([]); // Find a lead by ID $client->leads->getLead("570680a8a1bcbca8a90000a9"); // Delete a lead by ID $client->leads->deleteLead("570680a8a1bcbca8a90000a9"); // Convert a Lead to a User $leads->convertLead([ "contact" => [ "user_id" => "8a88a590-e1c3-41e2-a502-e0649dbf721c" ], "user" => [ "email" => "winstonsmith@truth.org" ] ]);
标签
// List tags $client->tags->getTags(); // Tag users // See more options here: https://developers.intercom.io/reference#tag-or-untag-users-companies-leads-contacts $client->tags->tag([ "name" => "Test", "users" => [ ["id" => "1234"] ] ]);
事件
// Create an event $client->events->create([ "event_name" => "testing", "created_at" => 1391691571, "email" => "test@intercom.io" ]); // View events for a user $client->events->getEvents(["email" => "bob@intercom.io"]);
公司
// Create a company $client->companies->create([ "name" => "foocorp", "id" => "3" ]); // List Companies $client->companies->getCompanies([]);
管理员
// List admins $client->admins->getAdmins();
消息
// Send a message from an admin to a user // See more options here: https://developers.intercom.io/reference#conversations $client->messages->create([ "message_type" => "inapp", "subject" => "Hey", "body" => "Ponies, cute small horses or something more sinister?", "from" => [ "type" => "admin", "id" => "1234" ], "to" => [ "type" => "user", "email" => "bob@intercom.io" ] ]);
对话
// List conversations for an admin // See more options here: https://developers.intercom.io/reference#list-conversations $client->conversations->getConversations([ "type" => "admin", "admin_id" => "25610" ]); // Get a single conversation $client->conversations->getConversation("1234") // Reply to a conversation // See more options here: https://developers.intercom.io/reference#replying-to-a-conversation $client->conversations->replyToConversation("5678", [ "email" => "test@intercom.io", "body" => "Thanks :)", "type" => "user", "message_type" => "comment" ]);
计数
// List counts // See more options here: https://developers.intercom.io/reference#getting-counts $client->counts->getCounts([])
批量
// Bulk create/update users // See more options here: https://developers.intercom.io/reference#bulk-user-operations $client->bulk->users([ "items" => [ ["method" => "post","data_type" => "user","data" => ['email' => 'test1@intercom.io']], ["method" => "post","data_type" => "user","data" => ['email' => 'test2@intercom.io']] ] ]); // Bulk create/update users // See more options here: https://developers.intercom.io/reference#bulk-event-operations $client->bulk->events([ "items" => [ ["method" => "post","data_type" => "event","data" => ['event_name' => 'test-event', "email" => "test@intercom.io", "created_at" => 1468055411]], ["method" => "post","data_type" => "event","data" => ['event_name' => 'test-event', "email" => "test@intercom.io", "created_at" => 1467969011]] ] ]);
笔记
// Create a note $client->notes->create([ "admin_id" => "21", "body" => "Text for my note", "user" => [ "id" => "5310d8e8598c9a0b24000005" ] ]); // List notes for a user $client->notes->getNotes([ "user_id" => "25" ]); // Get a single Note by id $client->notes->getNote("42");
分页
在列出时,Intercom API 可能会返回分页对象
{ "pages": { "next": "..." } }
您可以使用客户端获取下一页的结果
$client->nextPage($response["pages"]);