Apex 的 API 简介
Salesforce 数据API分类
Salesforce中提供了四种数据API接口。数据API接口为开发者提供了操作Salesforce数据的能力。它们分别是:
- REST API:依据RESTful方法对数据进行新建、读取、更新、删除(CRUD)处理。REST API支持JSON和XML格式。REST API是轻量级的API,适用于处理网络应用或移动应用中。
- SOAP API:基于SOAP协议,使用WSDL格式的文件处理数据。只支持XML格式。适用于服务器之间的通信。
- Bulk API:是一种特殊定制的REST API,针对大批量数据(50000条记录或更多)的处理有更好的效果。
- Streaming API:适用于当数据发生变化时发送提示消息。
启用API权限
要使用API,需要在用户的简档中,将“已启用 API”(API Enabled)复选框勾选。
API限制
Salesforce中有两种API限制。“并发限制”限制了同时运行的持续时间高于20秒的API请求的数量,“数量限制”限制了24小时之内运行的API请求的总数。
要查看可运行的API的剩余数量,可以在设置界面中搜索“系统概览”,打开“系统概览”页面。在“API 使用情况”部分可以查看最近24小时之内运行的API数量,和最多允许的数量。

要设定API的使用通知,可以在设置界面中搜索“API 使用通知”,打开“所有API 使用通知”界面。点击“新建”按钮即可新建API使用通知,当API使用数量达到一定的阈值时,会自动发送邮件通知相关的用户。

生成API WSDL文件
在设置界面下,搜索“API”,点击“开发”菜单项下面的“API”链接,进入“API WSDL”页面。

在此页面中,可以生成和下载各种WSDL和客户端证书,供API开发者使用。
比如:
- 点击“生成企业 WSDL”链接,在显示的窗口中点击“Generate”按钮,即可得到一个WSDL文件
- 在SoapUI中使用此文件新建项目,即可建立与相应Salesforce系统的API通信
- 开发者可以使用“login”操作来进行登录请求。注意,在Salesforce登录时,密码的部分需要输入密码和安全口令(Security Token)。比如密码是“123”,安全口令是“abc”,那么在“”标签中需要输入“123abc”。示例如下:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:enterprise.soap.sforce.com">
<soapenv:Header>
<urn:LoginScopeHeader>
<urn:organizationId></urn:organizationId>
<!--Optional:-->
<urn:portalId></urn:portalId>
</urn:LoginScopeHeader>
</soapenv:Header>
<soapenv:Body>
<urn:login>
<urn:username>用户名</urn:username>
<urn:password>密码和安全口令</urn:password>
</urn:login>
</soapenv:Body>
</soapenv:Envelope>
- 在登录成功后,系统会生成会话ID(在“”标签中)和服务器URL(在“”标签中)。开发者需要记录下它们,以便于在以后的其他请求中使用
- 开发者可以使用比如“create”等操作来对各种对象进行操作请求。在相应的标签中输入相应的值,并且在对应的标签中输入之前的会话ID或服务器URL,即可发送请求,完成操作
企业WSDL和合作伙伴WSDL的区别
Salesforce中最经常使用的是两种WSDL:
- 企业WSDL(Enterprise WSDL)
- 合作伙伴WSDL(Partner WSDL)
它们有以下特点:
- 企业WSDL是强类型的,它和特定的某个Salesforce组织紧密联系在一起。当此Salesforce组织被修改之后,比如自定义字段、对象被修改,生成的企业WSDL也会不同
- 合作伙伴WSDL是弱类型的,不和特定的Salesforce组织联系在一起,所以当Salesforce组织被修改之后,不会生成不同的合作伙伴WSDL
如果开发者需要通过API对某个特定的Salesforce组织进行CRUD操作,则使用企业WSDL。如果对多个Salesforce组织进行操作,则使用合作伙伴WSDL。
Apex 的 API 简介的更多相关文章
- Web Api 简介
ASP.NET Web API 简介 ASP.NET MVC 4 包含了 ASP.NET Web API, 这是一个创建可以连接包括浏览器.移动设备等多种客户端的 Http 服务的新框架, ASP. ...
- ZooKeeper系列4:ZooKeeper API简介及编程
问题导读: 1.ZooKeeper API 共包含几个包? 2.如何使用ZooKeeper API 创建zookeeper应用程序? 1)ZooKeeper API 简介 ZooKeeper AP ...
- WebSocket API简介
WebSocket是html5新增加的一种通信协议,目前流行的浏览器都支持这个协议,例如Chrome,Safari,Firefox,Opera,IE等等,对该协议支持最早的应该是chrome,从chr ...
- 构建简单的 C++ 服务组件,第 1 部分: 服务组件体系结构 C++ API 简介
构建简单的 C++ 服务组件,第 1 部分: 服务组件体系结构 C++ API 简介 熟悉将用于 Apache Tuscany SCA for C++ 的 API.您将通过本文了解该 API 的主要组 ...
- Raphael Js矢量库API简介:
Raphael Js矢量库API简介:Raphael Javascript 是一个 Javascript的矢量库. 2010年6月15日,著名的JavaScript库ExtJS与触摸屏代码库项目jQT ...
- 开放数据接口 API 简介与使用场景、调用方法
此文章对开放数据接口 API 进行了功能介绍.使用场景介绍以及调用方法的说明,供用户在使用数据接口时参考之用. 在给大家分享的一系列软件开发视频课程中,以及在我们的社区微信群聊天中,都积极地鼓励大家开 ...
- Monkey脚本API简介
一.API简介 LaunchActivity(pkg_name, cl_name):启动应用的Activity.参数:包名和启动的Activity. Tap(x, y, tapDuration): 模 ...
- web API简介(四):客户端储存之IndexedDB API
概述 前篇:web API简介(三):客户端储存之Web Storage API 客户端储存从某一方面来说和动态网站差不多.动态网站是用服务端来储存数据,而客户端储存是用客户端来储存数据. Index ...
- web API简介(三):客户端储存之Web Storage API
概述 前篇:web API简介(二):客户端储存之document.cookie API 客户端储存从某一方面来说和动态网站差不多.动态网站是用服务端来储存数据,而客户端储存是用客户端来储存数据. W ...
随机推荐
- Unity 2018 Artificial Intelligence Cookbook Second Edition (Jorge Palacios 著)
https://github.com/PacktPublishing/Unity-2018-Artificial-Intelligence-Cookbook-Second-Edition 1 Beha ...
- Java 基础系列:不变性
1.1 定义 不可变类(Immutable Objects):当类的实例一经创建,其内容便不可改变,即无法修改其成员变量. 可变类(Mutable Objects):类的实例创建后,可以修改其内容. ...
- centos 文本文件编码转换
iconv -f utf-8 -t gbk shtel_single_utf8.mlf > shtel_single_gbk.mlf
- Flink是如何实现exactly-once语义的
转自:https://blog.csdn.net/xianpanjia4616/article/details/86375224 最少一次:断了之后 重新执行 再去重 严格一次:根据检查点,再执行一次 ...
- ssh工具推荐MobaXterm 可能是你遇到过的比较出色的一款
之前一直用xshell,现在推荐一个更好用的工具. 一站式的解决你的需求,而且画风个人也比较喜欢,而且随便一百度就能找得到green PJ 的版本
- VMware+windbg时快照功能的使用
VMware+windbg时快照功能的使用 一.快照功能的使用 我们在编写与调试驱动文件时经常会面临死机蓝屏情况,如果像平常一样重启,再重新配置环境,肯定会占用大量时间. Vmware虚拟机给我们提供 ...
- DEDECMS安全设置怎样做,您就不会说它不安全了
dedecms是好用,优化也好,就是不安全,个人是这样认为的,今天 闲着没事 整理了一些有助于dedecms网站安全的一些设置,可以说是目前最全的dedecms安全设置! 其一:保持DEDE更新,及时 ...
- mvc 返回json格式时间格式化
protected override JsonResult Json(object data, string contentType, System.Text.Encoding contentEnco ...
- CPU体系结构(组成部分)
在准备网络工程师考试,里面有些知识点是比较常考的.自己写这篇博客呢,当作是笔记吧,自己看一看也分享给大家一起学习. 这部分的内容就是讲CPU里面的组成结构以及各部分的功能. CPU的构成:CPU主要由 ...
- QString判断空 isEmpty
isEmpty Returns true if the string has no characters; otherwise returns false. QString().isEmpty(); ...