【问题标题】:How to use Zoho CRM API V2 from PHP page?如何从 PHP 页面使用 Zoho CRM API V2?
【发布时间】:2020-03-26 18:53:27
【问题描述】:

我试图在 Zoho CRM 上存储和检索一些值,最终使用了 API 的 V1。

我当前的代码是:

<html>
<head>  
          <meta content="width=320px, initial-scale=1, user-scalable=yes" name="viewport" />
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
</head>

<body>
<div id="logform">
      <form method="POST" onClick="exec()">
<b>Login To Continue:</b><br/><br/>
 <b>Name:</b><input type="text" id="name" name='name' value=""><br/>
 <b>Email:</b><input type="email" id="email" name='email' value="" ><br/>
 <input type="submit" name="submit"value="Submit" id="submit" >Submit</button>
 <!--<font color="white"><input type="button" ></a>-->
</form></div>

<script type="text/javascript">
        <script type="text/javascript">
        function exec() { 
            var mail=document.getElementById("email").innerHTML;
            var namen=document.getElementById("name");
            document.cookie = "name="+namen;
            var phpadd= <?php echo sendData();?> ;
        }
        </script>

        <script type="text/javascript">document.getElementById("submit").addEventListener("click", var hide = document.getElementById("logform").style.display="none";);
        </script>
</script>

      <?php 
function sendData()
{
        $email=$_POST["email"]; 
        $name=$_POST["name"]; 
        $cookie_name = "Event";
        $cookie_value = "Login";

setcookie($cookie_name, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
        $fname="Usr";
        $lname="1";
        $auth="#AuthKey";
        $xml = 
        '<?xml version="1.0" encoding="UTF-8"?>
        <Contacts>
        <row no="1">
        <FL val="First Name">'.$name.'</FL>
        <FL val="Last Name">'.$name.'</FL>
        <FL val="Email">'.$email.'</FL>
        <FL val="Department">Medical</FL>
        <FL val="Phone">0000000000</FL>
        <FL val="Fax">0000</FL>
        <FL val="Mobile">0000000000</FL>
        <FL val="Assistant">none</FL>
        </row>
        </Contacts>';

    $url ="https://crm.zoho.com/crm/private/xml/Contacts/insertRecords";
    $query="authtoken=".$auth."&scope=crmapi&newFormat=1&xmlData=".$xml;
    $ch = curl_init();
    /* set url to send post request */
    curl_setopt($ch, CURLOPT_URL, $url);
    /* allow redirects */
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    /* return a response into a variable */
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    /* times out after 30s */
    curl_setopt($ch, CURLOPT_TIMEOUT, 30);
    /* set POST method */
    curl_setopt($ch, CURLOPT_POST, 1);
    /* add POST fields parameters */
    curl_setopt($ch, CURLOPT_POSTFIELDS, $query);// Set the request as a POST FIELD for curl.

    //Execute cUrl session
    $response = curl_exec($ch);
    curl_close($ch);
    echo $response;

}
?>

</body>

</html>

现在我知道 API v1 已被弃用。我需要将这段代码迁移到 CRM API V2。我还需要读取这些上传到 CRM 的数据。有人请帮助我!在线文档非常混乱。

【问题讨论】:

    标签: php html crm zoho


    【解决方案1】:

    你说得对,V1 30 天就会折旧。

    最简单的切换方法可能是使用Zoho PHP SDK。它可能被安装为 composer 包。

    SDK 有一个相当复杂的 API,大部分没有很好的文档记录,但是,按照 documentation 中的示例,您应该能够弄清楚如何使用它。

    您很可能想使用“记录 API”。

    如果您从未使用过 oAuth2,则此身份验证系统的基本理念是,您可以与服务提供商 (Zoho) 交换令牌,而不是使用“密钥”(本质上是密码)之类的东西。

    令牌就像很快过期的密码,但您可以随时更新它们。

    通常,您会希望完全自动化和抽象出所有令牌管理,因此它将与您的代码所执行的主要业务分开运行。

    幸运的是,Zoho PHP SDK 已经为您完成并自动管理令牌。

    【讨论】:

      猜你喜欢
      • 2019-11-04
      • 2019-05-25
      • 2021-04-01
      • 2023-03-03
      • 2020-04-13
      • 2012-04-15
      • 2019-04-24
      • 1970-01-01
      • 2018-03-11
      相关资源
      最近更新 更多