Access Metadata
You can use the GET method to retrieve
metadata about REST resources from their /describe endpoints. Each resource's
metadata contains a comprehensive description, including the object
resource URIs, attributes, supported actions, child resources, and
list-of-value (LOV) resources. The metadata also includes attribute
properties such as name, type, mandatory, updatable, queryable, and
so on.
You must use the metadataMode query parameter to
perform a describe operation.
How You Retrieve All Resource URLs Without Other Metadata
If you want to retrieve only the URLs
for all resources without including any metadata, set the value of metadataMode parameter to list in your GET request on the /describe endpoint. For example,
here's a sample request URL using this parameter:
https://servername.fa.us2.oraclecloud.com/fscmRestApi/resources/<version>/describe?metadataMode=listAnd here's the cURL command:
curl -X GET -u <username:password> https://servername.fa.us2.oraclecloud.com/fscmRestApi/resources/<version>/describe?metadataMode=listThe response would contain only the resource URLs and no resource metadata.
How You Retrieve Minimal Metadata for All Resources in an Application
To limit the amount of metadata retrieved
for an application, use the metadataMode parameter. Perform the GET operation using the following request
URL:
https://servername.fa.us2.oraclecloud.com/fscmRestApi/resources/<version>/describe?metadataMode=minimalYou can use this cURL command to return only the resources:
curl -X GET -u <username:password> https://servername.fa.us2.oraclecloud.com/crmRestApi/resources/11.13.18.05/describe?metadataMode=minimal HTTP/1.1 -H 'Content-Type: application/vnd.oracle.adf.resourceitem+json' | json_ppNote:
You cannot use themetadataMode parameter to access
the metadata for a specific resource.
If your application has a large number of custom objects, you can
use the metadataMode parameter
to retrieve a smaller response much faster.
How You Retrieve Metadata for a Specific Resource
Perform the GET operation on the resource using the following request URL syntax:
https://servername.fa.us2.oraclecloud.com/crmRestApi/resources/<version>/<resource>/describeLet's say you want to get the metadata for the opportunities resource. Perform the GET operation using the following request URL:
https://servername.fa.us2.oraclecloud.com/crmRestApi/resources/11.13.18.05/opportunities/describeYou can use this cURL command to complete the operation:
curl -X GET -u <username:password> https://servername.fa.us2.oraclecloud.com/crmRestApi/resources/11.13.18.05/opportunities/describe HTTP/1.1 -H 'Content-Type: application/vnd.oracle.adf.resourceitem+json' | json_ppHow You Retrieve Metadata in Your Preferred Language
If you want to retrieve the metadata in
your preferred language, you can use the Accept-Language header in the GET
request. Include the Accept-Language header in the cURL command and provide the language short code as
its value. For example, to retrieve the metadata in Turkish, use tr as the Accept-Language header value.
Run the cURL command as shown here:
curl -X GET -u <username:password>
https://servername.fa.us2.oraclecloud.com/fscmRestApi/resources/11.13.18.05/partnerTypesLOV/describe \
-H 'Accept-Language: tr' \
-H 'Content-Type: application/vnd.oracle.adf.resourceitem+json'The response contains the translated metadata.
You can see
that the values for title and titlePlural appear
translated in Turkish. In English, these would appear as Partner Type and Partner Types.
Note:
The translation applies only to the customer-facing labels and depends on the internationalization settings defined in the application implementation.How You Retrieve Metadata in OpenAPI Format
Metadata in OpenAPI format is now supported for all REST APIs. In the GET request, set the
Accept header to application/vnd.oracle.openapi3+json to retrieve metadata
in that format. If you're using the cURL command, construct the GET request as:
curl -u username:password \
-X GET https://servername.fa.us2.oraclecloud.com/fscmRestApi/resources/<version>/announcements/describe \
'Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=' \
-H 'Accept: application/vnd.oracle.openapi3+json'
If you're using a REST client such as Postman, set the value for the Accept header as shown
here: 
You get the response in the OpenAPI format as seen in the screenshot.
Metadata in v1 Resources
All v1 resources by default support OpenAPI format. When you send requests to retrieve the description of a resource, you can choose whether the response should contain the module-level description or the resource-level description. To get the description of all the resources within a module, send the request as:
GET https://<servername>/api/boss/data/objects/<module_segment>/v1/$openapi
To get the description for a particular resource, send the request as:
GET https://<servername>/api/boss/data/objects/<module_segment>/v1/$openapi/<resource>