0

I am looking into metadata and partner wsdl generated through my instance for API 43 and it is missing few objects. E.g.

  1. INDIVIDUAL (Data Protection and Security) - got added in API 42
  2. LOCATION (Field Service Lightning) - got added in API 41
  3. PRODUCTITEM (Field Service Lightning) - got added in API 41

There could be more, but these 3 are reported by our customers , where they are interested in using them through our connectivity solution, but we are not able to expose them as they are missing in the metadata wsdl.

Is this because We do not have "Data Protection and Security" as well as "Field Service Lightning" not enabled on my instance?

My brief search on the internet suggest that the metadata API are not org specific. Then why could be these objects missing in the wsdl generated in our instance?

Will really appreciate a quick response..

Regards, Avadhoot

sfdcfox
  • 489,769
  • 21
  • 458
  • 806
Avadhoot
  • 3
  • 4

1 Answers1

1

Both the Metadata API and Partner API adapt to the "shape" of an org they are connecting to. They will only expose features that are enabled in that org and that the current user has permissions to access.

So yes, the reason some of your customers are reporting them but you can't see them is that they have these features enabled and you don't.

  • Individual - key prefix 0PK
  • Location - key prefix 131
  • ProductItem - key prefix 0Co
Daniel Ballinger
  • 102,288
  • 39
  • 270
  • 594
  • Thanks Daniel, That's helpful. Is there a way to get Metadata or partner wsdls which have all the supported objects of the current API version, independent of what functionality is enabled in the my personal org? I am checking on possibility to support our customer uses cases; even though for some reason we were not wiling/able to enable few functionalities in our org. – Avadhoot Jul 02 '18 at 09:34
  • Also, I did not understood the prefix information you have given for each of these objects? Can you please elaborate? – Avadhoot Jul 02 '18 at 09:43
  • @Avadhoot The key prefixs the the first 3 characters of the Id's for those objects and are consistent across all of Salesforce. They can be useful for identifying what type of record you are dealing with from the ID's alone. – Daniel Ballinger Jul 02 '18 at 19:59
  • There is no complete Metadata or partner WSDL with all the available sObjects defined. The idea is that those WSDLs aren't org specific. They only expose the core methods and then anything org specific is defined in metadata. If you want to see specific functionality exposed via those APIs you will need to connect to an org where it is enabled. Scratch orgs may be useful for this if you don't want to modify your main org. – Daniel Ballinger Jul 02 '18 at 20:05