You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法通过Salesforce REST API/SOQL获取自定义对象Picklist值

解决自定义Event对象Picklist值无法通过API获取的问题

核心排查点:对象API名称正确性

Salesforce中标准Event对象已存在,自定义对象不能使用相同名称,因此你的自定义对象API名称应为Event__c(带__c后缀),这是最常见的错误点。以下是修正后的具体解决方案:

方法1:修正SOQL查询PicklistValueInfo

如果自定义对象是Event__c,字段为Country__c,使用以下SOQL:

SELECT Label, Value 
FROM PicklistValueInfo 
WHERE EntityParticle.EntityDefinition.QualifiedApiName = 'Event__c' 
AND EntityParticle.QualifiedApiName = 'Country__c' 
AND IsActive = true

如果是标准Event对象的自定义字段,则将Event__c替换为Event即可。

方法2:调用正确的REST API描述接口

  • 自定义对象Event__c的描述接口:
    https://{domainurl}.my.salesforce.com/services/data/v44.0/sobjects/Event__c/describe
    
  • 标准Event对象的描述接口:
    https://{domainurl}.my.salesforce.com/services/data/v44.0/sobjects/Event/describe
    

返回结果的fields数组中找到Country__c字段,其picklistValues属性包含所有激活的选项值。

额外排查项

  • 字段权限:确认API所用用户的Profile/Permission Set拥有Country__c字段的Read权限,即使管理员无全局拦截,也需检查具体用户权限。
  • 字段状态:在Salesforce Setup中检查Country__c字段是否处于激活状态,未禁用。
  • API版本升级:v44.0版本较旧,尝试升级到v52.0+版本,可能修复元数据查询的兼容性问题。
  • 元数据访问权限:确保用户拥有View All Data权限,或具备访问该对象元数据的对应权限(PicklistValueInfo属于元数据对象,需特定权限查询)。

内容的提问来源于stack exchange,提问作者jumpingbunny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 15:47:18