Symptom
Is there a way to retrieve the OData API Metadata from all entities or from one or more specific entities?
Environment
- SAP SuccessFactors HXM Suite
- OData API
Resolution
To fetch the entire metadata of an instance, we use the API call: https://<hostname>/odata/v2/$metadata
However if you need to fetch the metadata of some specific entity, we can form the query as follows: https://<hostname>/odata/v2/User,Photo/$metadata
Above sample query would give you the metadata of only User and Photo entity. You just need to change the <hostname> by the url from your instance. Please check the article 2215682 to check on how to build your URL.
NOTE: The metadata retrieved with the above method will not contain the entity's navigation properties (object associations). For that purpose, you should use the following request format:
- https://<API-Server>/odata/v2/Entity('User')?$format=JSON
For more information about querying OData Metadata, please go through this page of the official SuccessFactors OData Developer Guide: Retrieving Metadata.
Instead of querying metadata via API requests, you can also access the OData API Data Dictionary tool in your SuccessFactors instance to consult the properties of an OData entity.
See Also
Keywords
Odata API, Metadata, entity, $metadata, REST, WSDL, WADL, meta, data, dictionary, entities, retrieve, return, fetch, get, not able to, call, query, request , KBA , LOD-SF-INT-ODATA , OData API Framework , LOD-SF-INT , Integrations , How To