VtigerCRM开发人员指南-第三方应用程序集成(REST API)

Vtiger CRM 全功能,不限用户,3600元/终生使用

适用于企业客户管理的CRM!灵活和可定制!超级易用!

我们提供的服务包括:插件开发、主题开发、安装和配置、CRM升级、CRM部署、支持与维护、用户培训…

REST API(Web服务)

  • 请求格式
  • 回应格式
  • 登录操作
  • 注销操作
  • 列表类型操作
  • 描述操作
  • 创建操作
  • 检索操作
  • 更新操作
  • 删除操作
  • 查询操作
  • 同步操作
  • 扩展会话操作

REST API(Web服务)

利用通过HTTP(s)公开的REST API来从Vtiger推送或提取数据,并与第三方应用程序集成。当然,您可以自由选择要使用的库来使用这些API。vtwsclib通过各种编程语言提供了与REST API一起使用的支持。

以下部分介绍了有关API的更多详细信息:

请求格式

HTTP – GET / POST

application/x-www-form-urlencoded

响应格式

成功

{
        success: true,
        result: {
                // ...
        }
}

失败

{
        success: false,
        error: {
                message: String,
                code:    String
        }
}

登录操作

它分为两个步骤,涉及到获取质询令牌和交换凭据(用户名和accessKey)。您可以在CRM Web UI的“我的首选项”下找到accessKey信息。

挑战

GET /webservice.php?operation=getchallenge&username=<USERNAME> HTTP/1.1

挑战回应

{
        success: true,
        result: {
                token: TOKENSTRING,    // Challenge token to be used for login.
                serverTime: TIMESTAMP, // Current Server time
                expireTime: TIMESTAMP  // Time when token expires
        }
}

登录

POST /webservice.php HTTP/1.1
operation=login
username=<USERNAME>
accessKey=md5(TOKENSTRING + <ACCESSKEY>) // Note: accessKey= K here is capitalized.

响应

{
        success: true,
        result: {
                sessionId:      String, // Unique Identifier for the session
                userId:         String, // User ID in CRM
                version:        String, // Webservice API version
                vtigerVersion:  String  // Version of CRM
        }
}

注销操作

POST /webservice.php HTTP/1.1

operation=logout
sessionName=sessionId // Obtained through Login Operation

列表类型操作

GET /webservice.php?operation=listtypes&sessionName=sessionId HTTP/1.1

描述操作

GET /webservice.php?operation=describe&sessionName=sessionId&elementType=<TYPE> HTTP/1.1

创建操作

POST /webservice.php HTTP/1.1

operation=create
sessionName=sessionId        // Obtained through Login Operation
element=URLENCODED(JSONDATA) // JSONDATA - JSON Map of (fieldname=fieldvalue)
elementType=<TYPE>           // TYPE - Module Name

检索操作

GET /webservice.php?operation=retrieve&sessionName=sessionId&id=<WEBSERVICE_ID> HTTP/1.1

更新操作

POST /webservice.php HTTP/1.1

operation=update
sessionName=sessionId    // Obtained through Login Operation
element=URLENCODED(DATA) // DATA - Map of (fieldname=fieldvalue)

删除操作

POST /webservice.php HTTP/1.1

operation=delete
sessionName=sessionId    // Obtained through Login Operation
id=<WEBSERVICE_ID>

查询操作

GET /webservice.php?operation=query&sessionName=sessionId&query=<QUERY> HTTP/1.1

<查询>

格式:

SELECT * | <column_list> | <count(*)>
FROM <object>
[WHERE <conditionals>]
[ORDER BY <column_list>]
[LIMIT [<m>, ] <n>]
<column_list>以逗号分隔的字段名称列表。
<object>类型或模块名称。
<conditionals>由“和”或“或”运算符分隔的<condition_operations>或<in_clauses>或<like_clauses>从左到右处理。没有分组是方括号运算符。
<condition_operations><,>,<=,> =,=,!=
<in_clauses>在()中
<like_clauses>像’sqlregex’
<value_list>以逗号分隔的值列表。
m, n用于分别指定偏移量和限制的整数值。

LIMITATIONS

  • 当前查询仅限于单个对象。
  • 不支持联接。
  • 查询始终将其输出限制为100条记录,客户端应用程序可以使用limit运算符获取不同的记录。

同步操作

GET /webservice.php?operation=sync&sessionName=sessionId&modifiedTime=<TIMESTAMP>&elementType=<TYPE> HTTP/1.1

扩展会话运行

GET /webservice.php?operation=extendsession HTTP/1.1
滚动至顶部
扫码添加微信联系我们 关闭