生成 Ticket
获得用户的Ticket请用如下链接 :
| https://i.baihui.com/login?servicename=BaihuiCRM&FROM_AGENT=true&LOGIN_ID=Baihui Username or Email Address&PASSWORD=Password |
参数说明如下 :
| Parameter | Type | Description |
| servicename | BaihuiCRM | 服务名称是BaihuiCRM |
| FROM_AGENT | Boolean | True |
| LOGIN_ID | String | 百会的登录用户名或注册邮箱 |
| PASSWORD | String | 百会用户的密码 |
返回结果如下 :
| Parameter | Type | Description |
| Comment | String | Ticket获得的时间 |
| WARNING | String | 当返回不正确时,提示给用户的警告信息. |
| TICKET | String | 要请求返回Ticket值 |
| RESULT | Boolean | 返回是与否 |
注:凡是传入xmlData的方法,需要注意以下改变: 把"替换成%22,<替换成%3C,>替换成%3E,val值中空格要改成 %20.
用途
使用getMyRecords方法来为API请求中ticket的所有者获取数据。
请求 URL
- XML: http://crm.baihui.com/crm/private/xml/Leads/getMyRecords?newFormat=1&apikey=API key&ticket=Ticket
- JSON: http://crm.baihui.com/crm/private/json/Leads/getMyRecords?newFormat=1&apikey=API Key&ticket=Ticket
请求参数
|
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| selectColumns* | String | 模块(字段可选)如leads(Last Name,Website,Email) 或者All |
| fromIndex | Integer | 缺省值:1 |
| toIndex | Integer | 缺省值:20 最大值:200 |
| sortColumnString | String | 你可以选择CRM中的某个字段对数据进行排序。 例如:sortColumnString=Company 这里,数据将根据Company字段进行排序 |
| sortOrderString | String | 排序方式:asc或者desc 如果使用sortColumnString参数,缺省为升序。 |
| lastModifiedTime | yyyy-MM-dd HH:mm:ss | 缺省值:null 如果指定时间,创建/修改的数据将在设定的时间之后获取。 |
| newFormat* | Integer (1 or 2) | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
附加注释
- 在向Zoho CRM账户获取数据时,会使用基于角色的安全检查(角色,身份,字段级安全和数据共享规则)。因此为了取得所有数据,使用具有最高权限角色(如:CEO)和身份(如:管理员)的用户ID。同时确保所有字段都启用了字段级安全的设置。关于基于角色的安全设置,在生成API Ticket时请参考Security Administration。
- fromIndex和toIndex为可选参数. 缺省情况下fromIndex为1而toIndex为20。
- sortColumnString和sortOrderString 也是可选参数
- lastModifiedTime参数值的格式应为yyyy-MM-dd HH:mm:ss
- 日期格式应为MM/dd/yyyy
示例
获取leads数据
http://crm.baihui.com/crm/private/xml/Leads/getMyRecords?newFormat=1&apikey=API key&ticket=Ticket
如果从其它模块获取数据,将Leads替换为Accounts, Contacts, Potentials等等。
获取超过200条记录
缺省情况下每次可以取得20条记录。但是,通过使用toIndex参数每次可以取得最多200条记录。如果要取得超过200条记录,请按以下步骤:
迭代1: fromIndex=1&toIndex=200
迭代 2: fromIndex=201&toIndex=400
获取leads并根据“Company”名称进行升序排序
sortColumnString=Company&sortOrderString=asc
获取leads并根据“Company”名称进行降序排序
sortColumnString=Company&sortOrderString= desc
用途
使用getRecords方法来获取在API请求中指定的所有用户数据。
请求 URL
- XML: http://crm.baihui.com/crm/private/xml/Leads/getRecords?newFormat=1&apikey=API Key&ticket=Ticket
- JSON: http://crm.baihui.com/crm/private/json/Leads/getRecords?newFormat=1&apikey=API Key&ticket=Ticket
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| selectColumns* | String | 模块(字段可选)如leads(Last Name,Website,Email) 或者All |
| fromIndex | Integer | 缺省值 - 1 |
| toIndex | Integer | 缺省值 - 20 最大值 - 200 |
| sortColumnString | String | 如果使用sortColumnString参数,缺省情况下使用升序排序。 |
| sortOrderString | String | 缺省值 - asc 如果想按降序排序,必须传入sortOrderString=desc。 |
| lastModifiedTime | DateTime | 缺省值:null 如果指定时间,创建/修改的数据将在设定的时间之后获取。 |
| newFormat* | Integer | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
附加注释
- 在向Zoho CRM账户获取数据时,用户的字段级安全的设置会被应用。因此为了取得所有用户数据,使用具有最高权限角色(如:CEO)和身份(如:管理员)的用户ID。
- f fromIndex和toIndex为可选参数. 缺省情况下fromIndex为1而toIndex为20。
- sortColumnString和sortOrderString 也是可选参数
- lastModifiedTime参数值的格式应为yyyy-MM-dd HH:mm:ss
示例
以JSON格式取得从20到200的所有Account记录并按照Account Name降序排序
URL格式: http://crm.baihui.com/crm/private/json/Accounts/getRecords? newFormat=1&
apikey=sbdjEDBDJ1323&ticket=xy4gr112345fgg&fromIndex=20&toIndex=200&sortColumnString=Account Name&sortOrderString=desc
以XML格式取得所有在2008-05-27 00:00:00之后修改/创建的账户记录
URL格式:http://crm.baihui.com/crm/private/xml/Accounts/getRecords? newFormat=1&
apikey=sbdjEDBDJ1323&ticket=xy4gr112345fgg&lastModifiedTime= 2008-05-27 00:00:00
用途
使用此方法来根据记录ID取得单条记录。
请求 URL
XML格式: http://crm.baihui.com/crm/private/xml/Leads/getRecordById?newFormat=1&apikey=API Key&ticket=Ticket&id=RecordID
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| id | String | 指定记录的唯一ID |
| newFormat* | Integer(1 or 2) | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
示例
http://crm.baihui.com/crm/private/xml/Leads/getRecordById?apikey=API Key&ticket=Ticket&id=RecordID&newFormat=1
用途
使用getCVRecords方法来获取Zoho CRM中关于自定义视图的数据。
重要:无论Zoho CRM的版本,你只能发送250 API请求/天。在每个请求中,可以取得最多200条记录。
请求 URL
- XML: http:// crm.baihui.com/crm/private/xml/Leads/getCVRecords?newFormat=1&apikey=API key&ticket=Ticket
- JSON: http:// crm.baihui.com/crm/private/json/Leads/getCVRecords?newFormat=1&apikey=API key&ticket=Ticket
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| fromIndex | Integer | 缺省值 - 1 |
| toIndex | Integer | 缺省值 - 20 最大值 - 200 |
| cvName* | String | 为指定的自定义视图获取数据。 例如:cvName=All Open Leads |
| sortColumnString | String | 排序方式:asc或者desc 如果使用sortColumnString参数,缺省为升序。 |
| sortOrderString | String | 缺省值:asc 如果想按降序排序,必须传入sortOrderString=desc。 |
| lastModifiedTime | DateTime | 缺省值:null 如果指定时间,创建/修改的数据将在设定的时间之后获取。 |
| newFormat* | Integer | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
示例
从Lead模块获取所有 open leads
http:// crm.baihui.com/crm/private/xml/Leads/getCVRecords?newFormat=1&apikey=API key&ticket=Ticket&cvName=All Open Leads
用途
使用此方法来根据选定字段的表达式搜索记录。
请求 URL
XML格式: http://crm.baihui.com/crm/private/xml/Leads/getSearchRecords?apikey=API key &ticket=Ticket
重要提示:无论Zoho CRM的版本,你只能发送250 API请求/天。在每个请求中,可以取得最多200条记录。
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| selectColumns* | String | 模块(字段可选)如leads(Last Name,Website,Email)或者All |
| searchCondition* | String | ( Created By|=|username) |
| newFormat * | Integer | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
正则表达式
在使用此方法时,确保selectColumns和searchCondition参数是必填的。你可以在API请求中使用如下的表达式:
- is 或 =
- isn't 或 <>
- contains(*srcString*)
- starts with(*srcString)
- ends with(srcString*)
- doesn't contain
- < OR 或 before
- > OR 或 after
- <=
- =>
示例
例 1
如果想从Leads中选择Lead Name,Company,Email,Mobile,Website并且Email必须包含"@sample.com",搜索的API请求应该如下所示:
http://crm.baihui.com/crm/private/xml/Leads/getSearchRecords?apikey=API key&ticket=Ticket &newFormat=1&selectColumns=Leads(Lead Name,Company,Email,Mobile,Website)&searchCondition=(Email|contains|*@sample.com*)
例 2
如果想从Leads中选择Company,Email,Website并且Employees号要大于100,搜索的API请求应该如下所示:
http://crm.baihui.com/crm/private/xml/Leads/getSearchRecords?apikey=API Key&ticket=Ticket&newFormat=1&selectColumns=Leads(Company,Email,Website)&searchCondition=(No of Employees|>|100)
例 3
如果想从Leads中选择Lead Name,Email并且Company以"Zoho"开头,搜索的API请求应该如下所示:
http://crm.baihui.com/crm/private/xml/Leads/getSearchRecords?apikey=API key&ticket=Ticket&newFormat=1&selectColumns=Leads(Lead Name,Email)&searchCondition=(Company|starts with|*Zoho)
用途
使用此方法来根据预定义的字段进行搜索。
请求 URL
XML格式: http://crm.baihui.com/crm/private/xml/Leads/getSearchRecordsByPDC? newFormat=1&apikey=API key&ticket=Ticket
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| selectColumns* | String | All 或者模块(字段1,字段2,字段3,字段n...) 示例:leads(Last Name,Website,Email) |
| searchColumn* | String | 指定预定义的搜索字段 |
| searchval* | String | 指定用于搜索的值 |
| newFormat* | Integer | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
缺省预定义字段
| 模块 | 字段 |
| Leads | |
| Accounts | |
| Contacts | - contactid
- accountid
- vendorid
- campaignid
- email
|
| Potentials | - potentialid
- accountid
- campaignid
- contactid
- potentialname
|
| Campaigns | |
| Cases | - caseid
- productid
- accountid
- potentialid
|
| Solutions | |
| Products | - productid
- vendorid
- productname
|
| Purchase Order | - purchaseorderid
- contactid
- vendorid
|
| Quotes | - quoteid
- potentialid
- accountid
- contactid
|
| Sales Orders | - salesorderid
- potentialid
- accountid
- contactid
- quoteid
|
| Invoices | - invoiceid
- accountid
- salesorderid
- contactid
|
| Vendors | |
| Tasks | |
| Events | |
| Notes | |
示例
http://crm.baihui.com/crm/private/xml/Leads/getSearchRecordsByPDC?newFormat=1&apikey=APIKEY&ticket=TICKET&selectColumns=leads(Last Name,Website,Email)&searchColumn=email&searchval=abc@testingdomain.com
用途
使用insertRecords方法可以将记录插入需要的Zoho CRM模块。
重要:使用POST方法而不是GET方法传递 参数。
请求 URL
XML格式: http://crm.baihui.com/crm/private/xml/Leads/insertRecords?newFormat=1&apikey=API key&ticket=Ticket
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | 指定你Zoho CRM账户的 API key |
| xmlData* | XML | 这是一个XML的字符串,格式应该和getRecords取出记录的XML格式相同 |
| wfTrigger | Boolean | 在向CRM账户插入记录时设置为true来触发工作流规则。缺省情况下,此参数值为false。 |
| duplicateCheck | Integer | 设置值为"1"来检查是否存在重复记录并抛出一个错误应答,或者设置为"2"检查是否存在重复记录,若存在,则更新此记录。 |
| isApproval | Boolean | 缺省情况下,记录被直接插入。若要启用审批模式,将此值设置为true。此参数可以用于Leads, Contacts, 和Cases模块。 |
| newFormat* | Integer | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
重复记录检查的字段
| 模块名称 | 用于判断重复记录的字段 |
| Leads | Email |
| Contacts | Email |
| Accounts | Account Name |
| Potentials | Potential Name |
| Campaigns | Campaign Name |
| Cases | Subject |
| Products | Product Name |
| Vendors | Vendor Name |
| Quotes | Subject |
| SalesOrders | Subject |
| PurchaseOrders | Subject |
| Invoices | Subject |
附加注释
- 在向Zoho CRM账户插入数据时,会使用基于角色的安全检查(角色,身份,字段级安全和数据共享规则)。因此,使用具有最高权限角色(如:CEO)和身份(如:管理员)的用户ID。同时确保所有字段都启用了字段级安全的设置。关于基于角色的安全设置,在生成API Ticket时请参考Security Administration 。
- 当插入数据时,确保日期和时间的格式分别形如MM/dd/yyyy和yyyy-MM-dd HH:mm:ss
示例
从第三方应用程序向Zoho CRM插入记录
URL格式: http://crm.baihui.com/crm/private/xml/Leads/insertRecords?newFormat=1&apikey=APIKEY&ticket=TICKET&xmlData=XMLDATA
XMLDATA 示例:
| <Leads> <row no="1"> <FL val="Lead Source">Web Download</FL> <FL val="First Name">contacto 1</FL> <FL val="Last Name">apellido</FL> <FL val="Email">testing@testing.com</FL> <FL val="Title">Manager</FL> <FL val="Phone">1234567890</FL> <FL val="Home Phone">0987654321</FL> <FL val="Other Phone">1212211212</FL> <FL val="Fax">02927272626</FL> <FL val="Mobile">292827622</FL> </row> </Leads> |
Lead XMLDATA 示例
| <Leads> <row no="1"> <FL val="SMOWNERID">2000000016714</FL> <FL val="Lead Owner">Scott</FL> <FL val="Company">Zoho</FL> <FL val="First Name">Peter</FL> <FL val="Last Name">John</FL> <FL val="Designation">CEO</FL> <FL val="Email">john@test.com</FL> <FL val="Phone">04422334455</FL> <FL val="Fax">98889</FL> <FL val="Mobile">09999999999</FL> <FL val="Website">www.sample.com</FL> <FL val="Lead Source">External Referral</FL> <FL val="Lead Status">Contacted</FL> <FL val="Industry">Financial Services</FL> <FL val="No of Employees">100</FL> <FL val="Annual Revenue">100.0</FL> <FL val="CAMPAIGNID">2000000018007</FL> <FL val="Campaign Source">Sample Campaign</FL> <FL val="Email Opt Out">true</FL> <FL val="Skype ID">peter</FL> <FL val="Salutation">Mr.</FL> <FL val="Street">Street One</FL> <FL val="City">Chennai</FL> <FL val="State">Tamil Nadu</FL> <FL val="Zip Code">6000001</FL> <FL val="Country">India</FL> <FL val="Description">Sample Description.</FL> </row> </Leads> |
带lead查询的Task XMLDATA示例
| <Tasks> <row no="1"> <FL val="SMOWNERID">2000000016714</FL> <FL val="Task Owner">Scott</FL> <FL val="Subject">Demo Call</FL> <FL val="Due Date">11/23/2009</FL> <FL val="SEID">2000000018003</FL> <FL val="SEMODULE">Leads</FL> <FL val="Status">In Progress</FL> <FL val="Priority">Highest</FL> <FL val="Send Notification Email">false</FL> <FL val="Description">Sample Desc</FL> </row> </Tasks> |
带Contact和Account查询的Task XMLDATA示例
| <Tasks> <row no="1"> <FL val="SMOWNERID">2000000016714</FL> <FL val="Task Owner">Scott</FL> <FL val="Subject">Demo Call</FL> <FL val="Due Date">11/23/2009</FL> <FL val="CONTACTID">2000000018443</FL> <FL val="SEID">2000022218013</FL> <FL val="SEMODULE">Accounts</FL> <FL val="Status">In Progress</FL> <FL val="Priority">Highest</FL> <FL val="Send Notification Email">false</FL> <FL val="Description">Sample Desc</FL> </row> </Tasks> |
插入notes并关联到主模块
XML格式: http://crm.baihui.com/crm/private/xml/Notes/insertRecords?newFormat=1&apikey=API key&ticket=Ticket&xmlData=XMLDATA
XMLDATA 参数应包含如下所示的XML数据:
| <Notes> <row no="1"> <FL val="entityId">2000000078001</FL> <FL val="Title">Zoho CRM Sample Note</FL> <FL val="Note Content">This is sample content to test Zoho CRM API</FL> </row> </Notes> |
这里的entityID是主记录(Lead, Account, Contact等等)的唯一ID。
为记录指定所有者
在通过API插入lead时,确保指定了lead所有者的email地址。如果使用lead所有者的姓名或用户ID,lead将被指派给使用API ticket登录的缺省证书用户。
insertRecords 使用 newFormat=1
应答URL: http://crm.baihui.com/crm/private/xml/Accounts/insertRecords?apikey=API Key&ticket=Ticket&newFormat=1
你必须将xmlData作为POST参数传递。
应答格式:
| <response uri="/crm/private/xml/Accounts/insertRecords"> <result> <message>Record(s) added successfully</message> <recorddetail> <FL val="Id">2000000039001</FL> <FL val="Created Time">2010-01-30 08:56:04</FL> <FL val="Modified Time">2010-01-30 08:56:04</FL> <FL val="Created By">mahesh1</FL> <FL val="Modified By">mahesh1</FL> </recorddetail> </result> </response> |
用途
使用updateRecords方法来更新或修改Zoho CRM中的记录。
重要: 使用POST方法而不是GET方法传递参数。
请求 URL
XML格式: http:// crm.baihui.com/crm/private/xml/Leads/updateRecords?newFormat=1&apikey=API key&ticket=Ticket
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| id* | String | 指定记录的唯一ID |
| xmlData* | XML | 指定字段和相应的值 |
| wfTrigger | Boolean | 在向CRM账户插入记录时设置为true来触发工作流规则。缺省情况下,此参数值为false。 |
| newFormat* | Integer (1 or 2) | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
附加注释
- 在更新Zoho CRM账户中数据时,会使用基于角色的安全检查(角色,身份,字段级安全和数据共享规则)。因此,使用具有最高权限角色(如:CEO)和身份(如:管理员)的用户ID。同时确保所有字段都启用了字段级安全的设置。关于基于角色的安全设置,在生成API Ticket时请参考Security Administration。
- 当更新数据时,确保日期和时间的格式分别形如MM/dd/yyyy和yyyy-MM-dd HH:mm:ss
示例
要更新Zoho CRM中的记录,请按照以下步骤:
1. URL 应该如下所示:
http://crm.baihui.com/crm/private/xml/Leads/updateRecords
2. 参数应该如下所示:
o ticket: Ticket ID
o apikey: 从Zoho CRM请求获得的key。
o xmlData: 这是一个XML的字符串,格式应该和通过取值API得到的记录的XML格式相同 。
o id: 需要被更新记录的 id
XML数据格式:http://crm.baihui.com/crm/private/xml/Leads/updateRecords?newFormat=1&apikey=APIKEY&ticket=TICKET&xmlData=XMLDATA
- ticket=xy4gr112345fgg
- apikey=sbdjEDBDJ1323
- xmlData= as mentioned below
- id = 1000000019001
| <Leads> <row no="1"> <FL val="Lead Source">Web Download</FL> <FL val="First Name">contacto 1</FL> <FL val="Last Name">apellido</FL> <FL val="Email">testing@testing.com</FL> <FL val="Title">Manager</FL> <FL val="Phone">1234567890</FL> <FL val="Home Phone">0987654321</FL> <FL val="Other Phone">1212211212</FL> <FL val="Fax">02927272626</FL> <FL val="Mobile">292827622</FL> </row> </Leads> |
用途
使用此方法来删除选定的记录(必须指定记录的唯一ID)并将其移入回收站。
注意:此 方法对所有模块适用。使用此方法,可以从账户中永久性地删除记录。
请求 URL
XML格式: http://crm.baihui.com/crm/private/xml/Leads/deleteRecords?apikey=API key&ticket=Ticket&id=RecordID
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| id* | String | 指定记录的唯一ID |
示例
URL格式: http://crm.baihui.com/crm/private/xml/Leads/deleteRecords?apikey=API key&ticket=Ticket&id=RecordID
用途
使用此方法来将lead转换为potential, account和contact。
对于lead转换处理,请参考用户文档中Convert Leads to Other Sales Records。
请求 URL
XML格式:
http://crm.baihui.com/crm/private/xml/Leads/convertLead?newFormat=1&apikey=API key&ticket=Ticket&leadId=entityId&xmlData=POTENTIALXMLDATA
请求参数
| 参数 | 数据类型 | 描述 |
| ticket* | String | - |
| apikey* | String | - |
| leadId* | String | 指定记录的唯一ID |
| xmlData | XML | 指定字段和相应的值 |
| newFormat* | Integer | newFormat=1: 在向CRM账户插入数据时排除值为null的字段。 newFormat=2: 在向CRM账户插入数据时包括值为null的字段。 |
* - 必填参数
XML 示例
| <Potentials> <row no="1"> <option val="createPotential">true</option> <option val="assignTo">sample@baihui.com</option> <option val="notifyLeadOwner">true</option> <option val="notifyNewEntityOwner">true</option> </row> <row no="2"> <FL val="Potential Name">Samplepotential</FL> <FL val="Closing Date">12/21/2009</FL> <FL val="Potential Stage">Closed Won</FL> <FL val="Contact Role">Purchasing</FL> <FL val="Amount">3432.23</FL> <FL val="Probability">100</FL> </row> </Potentials> |