Configuration Object Metadata | Config REST Web service
The Config RESTful Web Service is internally serviced by the AppRepo Service, which is subject to an internal authorization process. The internal authorization enables the authorization decisions to be at the level of configuration object parameters (as opposed to the REST-API-level authorization, which enables making the decision at the level of complete operations). This scenario introduces two difficult tasks to be solved:
-
How to express in a typed environment the difference between a non-existing attribute and an attribute that was filtered out due to authorization
-
How to transfer to the GUI dependent on the Config REST API the information about what attribute types and input fields to display
These tasks are reflected by the configuration object metadata. The metadata (that have nothing in common with OData4 metadata) contain the JSON Schema description of the configuration object after the authorization has been applied. The metadata are reachable in two ways:
-
As a part of the Config REST API success response, if the request contains
AcceptHTTP Header with valueapplication/json;dxaresultschemaformat=json-schema -
Via the
{config_rest_web_application_location}/MetadataRecordsendpoint that enables geting the metadata in advance of the request for any type of the operation (e.g., create, update, etc.).