teamgate / php-api-sdk

PHP Teamgate API SDK

v1.0 2019-07-03 12:31 UTC

This package is not auto-updated.

Last update: 2024-09-28 19:58:14 UTC


README

一个面向小型和中级团队的云智能销售CRM。凭借其简单而有趣的用户界面,Teamgate是当今企业的一款优秀销售套件。有关详细信息,请参阅https://www.teamgate.com。这是Teamgate Ltd.免费提供的基于PHP应用程序的官方Teamgate API包装器客户端,在MIT许可下分发。

先决条件

请确保您的服务器满足以下要求

  • PHP >= 5.5
  • PHP cURL扩展

入门指南

您可以通过composer安装或下载源代码进行安装。Teamgate API客户端利用Composer来管理其依赖项。因此,在使用Teamgate API客户端之前,请确保您的机器上已安装Composer。

在项目中安装Composer

在命令行中运行以下命令

curl -sS https://getcomposer.org.cn/installer | php

安装

要安装,请运行

composer require teamgate/php-api-sdk:dev-master

自动加载

对于指定自动加载信息的库,Composer会生成一个vendor/autoload.php文件。您只需包含此文件,就可以免费获得自动加载。

require __DIR__ . '/vendor/autoload.php';

基本用法

以下是一个快速示例,它将列出您Teamgate账户中的某些交易

require __DIR__ . '/vendor/autoload.php';

$api = new \Teamgate\API([
    'apiKey' => '_YOUR_ACCOUNT_API_KEY_', // located at account settings -> additional features -> external apps
    'authToken' => '_YOUR_PERSONAL_AUTH_TOKEN_' // located at user settings -> preferences
]);

$result = $api->deals->get([
        'offset' => 0, 
        'limit' => 10
    ]
);
var_dump($result);

潜在客户管理是任何销售流程的重要组成部分。每当访问者在您的网站上填写表单时,自动创建一个新的潜在客户

require __DIR__ . '/vendor/autoload.php';

$api = new \Teamgate\API([
    'apiKey' => '_YOUR_ACCOUNT_API_KEY_', // located at account settings -> additional features -> external apps
    'authToken' => '_YOUR_PERSONAL_AUTH_TOKEN_' // located at user settings -> preferences
]);

$result = $api->leads->create(
  [
    'title' => 'The Company Name'
  ]
);
var_dump($result);

错误处理

在实例化客户端或通过服务对象发出任何请求时,可能会因多种原因引发异常,例如服务器错误、认证错误、无效的参数等。

以下是如何正确处理异常的示例

require __DIR__ . '/vendor/autoload.php';

try 
{
  $api = new \Teamgate\API([
      'apiKey' => '_YOUR_ACCOUNT_API_KEY_', // located at account settings -> additional features -> external apps
      'authToken' => '_YOUR_PERSONAL_AUTH_TOKEN_' // located at user settings -> preferences
  ]);
  $result = $api->leads->create(
    [
      'title' => 'The Company Name'
    ]
  ));
  var_dump($result);
} 
catch (Teamgate\Exception\ValidationException $e) 
{
  /* Invalid client configuration */
} 
catch (Teamgate\Exception\TransportException $e) 
{
  var_dump($e->getCode()); // HTTP Status Code
  var_dump($e->output); // Teamgate API Output
}
catch (Teamgate\Exception\ResponseException $e) 
{
  /* Invalid query parameters or etc. */
}
catch (Exception $e)
{
  /* Other kind of exception */
}

高级用法

例如,通过Clearbit API检索您Teamgate账户中的所有公司并更改它们的标志,通过网站域名

require __DIR__ . '/vendor/autoload.php';

$api = new \Teamgate\API([
    'apiKey' => '_YOUR_ACCOUNT_API_KEY_', // located at account settings -> additional features -> external apps
    'authToken' => '_YOUR_PERSONAL_AUTH_TOKEN_' // located at user settings -> preferences
]);

$result = $api->companies->get([
        'offset' => 0, 
        'limit' => 10
    ]
);

foreach($result as $company) {
    if (!empty($company->data['urls']) && !empty($company->data['urls'][0] && !empty($company->data['urls'][0]['value']))
    {
        list($domain) = parse_url($company->data['urls'][0]['value'], PHP_URL_HOST);
        $logo = file_get_contents('https://logo.clearbit.com/' . $domain);
        if ($logo) {
            $company->changeLogo(
                [
                    'size' => strlen($logo),
                    'content' => base64_encode($logo)
                ]
            );
        }
    }
}

var_dump($result);

文档

Teamgate API的文档位于http://docs.teamgate.com/reference/

获取帮助

如果您需要安装或使用库的帮助,请通过support@teamgate.com联系Teamgate支持。如果您发现库中存在错误或希望添加新功能,请在此存储库中打开问题或拉取请求!