如何在Postman中测试Salesforce Bulk API?是否需要WSDL?
嘿,我来帮你理清这两个问题——在Postman里测试Salesforce Bulk API其实没那么复杂,而且WSDL也不是必须的,咱们一步步拆解:
一、在Postman中测试Salesforce Bulk API的具体步骤
首先得搞定Salesforce的认证,这是一切操作的前提:
- 第一步:获取OAuth 2.0访问令牌
- 打开Postman,新建一个POST请求,URL填你的Salesforce实例域名加上令牌端点,比如
https://your-domain.salesforce.com/services/oauth2/token(把your-domain换成你实际的实例域名,比如na123) - 切换到「Body」标签,选择
x-www-form-urlencoded格式,添加以下键值对:grant_type: 固定填passwordclient_id: 你在Salesforce里创建的Connected App的Consumer Keyclient_secret: 对应Connected App的Consumer Secretusername: 你的Salesforce完整账号(如果是沙盒环境,要带后缀比如xxx@xxx.com.dev)password: 账号密码+安全令牌(如果没设置IP白名单的话,必须加安全令牌,两者连在一起写,中间无空格)
- 点击发送,成功后会返回一个JSON,里面的
access_token和instance_url要记好,后面所有请求都要用到这俩。
- 打开Postman,新建一个POST请求,URL填你的Salesforce实例域名加上令牌端点,比如
接下来创建批量作业:
- 第二步:创建Bulk API作业
- 新建POST请求,URL格式是
{{instance_url}}/services/data/vXX.X/jobs/ingest(把vXX.X换成你想用的API版本,比如v59.0) - 在「Headers」里添加两个关键头:
Authorization: 填Bearer {{access_token}}(把{{access_token}}换成刚才拿到的令牌值,或者用Postman的环境变量存储更方便)Content-Type: 填application/json
- 请求Body用JSON格式,比如要插入Account对象数据,就这么写:
这里的{ "operation": "insert", "object": "Account", "contentType": "CSV" }operation可以换成update/upsert/delete等,根据你的需求来。 - 发送请求,响应里会返回
id(这是作业ID)和uploadUrl(上传数据的地址),这俩也得存好。
- 新建POST请求,URL格式是
然后上传批量数据:
- 第三步:上传待处理的批量数据
- 新建PUT请求,URL直接用刚才拿到的
uploadUrl - 请求头依然要带
Authorization: Bearer {{access_token}},另外Content-Type要改成text/csv - 「Body」里直接写CSV内容就行,比如:
注意CSV的表头要和Salesforce对象的字段API名对应,不然会报错。Name,Industry,BillingCity "测试公司A","科技","北京" "测试公司B","医疗","上海" - 发送请求,成功后会返回201 Created状态码。
- 新建PUT请求,URL直接用刚才拿到的
最后检查作业状态和结果:
- 第四步:查看作业状态并获取处理结果
- 新建GET请求,URL是
{{instance_url}}/services/data/vXX.X/jobs/ingest/{{job_id}}(替换{{job_id}}为之前的作业ID) - 带上授权头发送请求,看响应里的
state字段:如果是JobComplete就说明作业处理完了;如果是InProgress就等一会儿再查。 - 要获取每条记录的处理结果的话,新建GET请求,URL是
{{instance_url}}/services/data/vXX.X/jobs/ingest/{{job_id}}/results,同样带授权头,就能拿到每条记录的成功/失败状态和错误信息了。
- 新建GET请求,URL是
二、是否需要依赖WSDL文件?
明确说:完全不需要。
Salesforce Bulk API是REST风格的API,所有操作都是通过标准的HTTP方法(GET/POST/PUT等)和JSON/CSV格式的请求体来完成的,WSDL是SOAP API用来定义接口结构的文件,和Bulk API完全不搭边。
当然,如果之前你习惯用SOAP API,或者需要生成客户端代码,WSDL可能有点用,但对于在Postman里直接测试Bulk API来说,WSDL纯粹是多余的。你只需要了解API的端点格式、请求头要求和请求体结构,照着官方文档说明来就行。
内容的提问来源于stack exchange,提问作者Tukaram Marwale
相关产品推荐
相关产品推荐

