Adaptive Search Metamodel

Meta Models

Adaptive Search supports multiple meta models with distinct workflow states, such as Archived, Active, BeingPublished, Sandbox, and Seeded. There can be multiple meta models in an environment, but only one 'Active' meta model. The client should leverage the active meta model when they connect to the search service. The 'MetamodelUuid' is assigned to the meta model after publishing.

https://servername.fa.us2.oraclecloud.com/crmRestApi/searchResources/11.13.18.05/metaModels

The response payload contains the following links:

Link Description Example
Self Link Adaptive search link that returns the current object <servername>/crmRestApi/searchResources/11.13.18.05/metaModels
Canonical Link   <servername>/crmRestApi/searchResources/11.13.18.05/metaModels
Parent Link Adaptive search link that returns the parent of the meta model, root <servername>/crmRestApi/searchResources/11.13.18.05/
Child Link Adaptive search link that returns the child objects of the meta model, entities <servername>/crmRestApi/searchResources/11.13.18.05/entities?metaModelUuid=<metaModelUuid>

The response payload contains the following attributes:

Attribute Description
metaModeluuid The unique identifier of the meta model.
workflowState The workflow state of the meta model. For example, Active, Archived, Seeded, and so on.

Note:

The REST service will indicate an error if the <metaModeluuid> is not active or archived. The client can cache the URL to the active meta model for use in a single session.

Entities

The entities resource lists the top-level as well as child entities within an active Metamodel, which you can use to import data from other databases.

You can use two different methods to call the Entities resource,
  1. By calling a specific Metamodel using the MetamodelUuid
  2. By using a cURL command without specifying the MetamodelUuid. In this case, all the entities in the active Metamodel will be returned in the response payload.

The REST call will return the top-level entities as well as the child entities. You can use the parameter 'isDocument' to distinguish between the Top-level and Child entities.

The response payload for an entities resource contains the following links:

Link Description Example
Self Link Adaptive search link that returns the current object <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>?metaModelUuid=<metaModelUuid>
Canonical Link   <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>?metaModelUuid=<metaModelUuid>
Parent Link Adaptive search link that returns the parent of the entity, the metamodel. <servername>/crmRestApi/searchResources/11.13.18.05/entities?metaModelUuid=<metaModelUuid>
Attributes Link Adaptive search link that returns the attributes for the entity. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/attributes?metaModelUuid=<metaModelUuid>
Fields Link Adaptive search link that returns the fields that are searchable, aggregateable, sortable, or otherwise indexed. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/fields?metaModelUuid=<metaModelUuid>
Queries Link Adaptive search link that returns the queries for the entity. This link is returned only if the entity is query enabled. <servername>/crmRestApi/searchResources/11.13.18.05/custom-actions/queries?metaModelUuid=<metaModelUuid>&entity=<entityName>
Actions Link Adaptive search link that returns the queries for the entity. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/actions?metaModelUuid=<metaModelUuid>
Meta Model Link Adaptive search link that returns the current meta model for the entity. <servername>/crmRestApi/searchResources/11.13.18.05/metaModel/<metaModelUuid>

The response payload contains the following other attributes:

Attribute Description
entityUuid The unique identifier of the entity.
entityName The name of the entity.
localizedName The localized name of the entity.
isDocument Indicates if the response is a document.

Attributes

The Attributes resource returns the attributes of a specific entity. Attributes are the standard attributes that are associated with an OOB resource, including custom attributes from a published meatamodel. Each item in the response payload represents an attribute.

The response payload for an attribute includes the following links:

Link Description Example
Self Link Adaptive search link that returns the current object. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/attributes?metaModelUuid=<metaModelUuid>
Canonical Link   <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/attributes?metaModelUuid=<metaModelUuid>
Parent Link Adaptive search link that returns the parent of the attribute, the metamodel. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>?metaModelUuid=<metaModelUuid>
Child Item Link Adaptive search link that returns the child item of the attribute with the name "meanings". This link is returned only if the attribute is of the type enum. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/attributes/<attributeUuid>/meanings

The response payload for an attribute includes the following attributes:

Attribute Description
attributeUuid The unique identifier of the attribute.
attributeName The name of the attribute.
localizedAttributeName The localized attribute name.
AttributeType The type of the attribute.
minOccurs The minimum number of times the attribute must occur.
maxOccurs The maximum number of times the attribute can occur.
isEnabled Indicates if the attribute is enabled.
isSearchable Indicates if the attribute is searchable.
isSortable Indicates if the attribute is sortable.
isIndexed Indicates if the attribute is indexed.

Fields

The Fields resource returns the LOV resource attributes associated with a specific entity. Fields are the standard LOV resources associated with an OOB resource. Each item in the response payload represents a field. The response payload for a field also includes,

Link Description Example
Self Link Adaptive search link that returns the current object. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/fields?metaModelUuid=<metaModelUuid>
Canonical Link   <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>/fields?metaModelUuid=<metaModelUuid>
Parent Link Adaptive search link that returns the parent of the field, the metamodel. <servername>/crmRestApi/searchResources/11.13.18.05/entities/<entityName>?metaModelUuid=<metaModelUuid>

The response payload contains the following attributes:

Attribute Description
uuid The unique UID.
docFieldPath The path of the doc field.
adfRestAttributeName The corresponding attribute in the ADF REST resource.
adfRestAttributeNameForLocalizedValue The corresponding attribute for the localized value in the ADF REST resource.
attributeUuid The unique UID of the attribute.
attributeType The type of attribute.
displayAttributePath The path that corresponds to the display of the attribute in the application.
displayLabel The display label of the attribute.
isVisible Indicates if the attribute is visible.
isAllField Indicates if the all fields are displayed.
isAggregatable Indicates if the attribute can be aggregated.
isRecordSet Indicates if the response includes a record set.
isSortable Indicates if the attribute is sortable.
isSearchable Indicates if the attribute is searchable.
localizedFieldPath The localized path of the field.

Search Operator

The search operators collection returns the search operators that apply to a particular field. Each item in the collection corresponds to a search operator. The response payload for search operator also includes,

Link Description Example
Self Link Adaptive search link that returns the current object. <servername>/crmRestApi/searchResources/11.13.18.05/ searchOperators
Canonical Link   <servername>/crmRestApi/searchResources/11.13.18.05/ searchOperators
Parent Link Adaptive search link that returns the parent of the search operator. <servername>/crmRestApi/searchResources/11.13.18.05/

The response payload contains the following attributes:

Attribute Descripition
searchOperatorUuid The unique identifier of the search operator.
searchOperatorName The name of the search operator.
numberOfArguments The number of arguments required.
isApplicableForRequiredFields Indicates if the attribute is applicable for required fields.
isApplicableToAllField Indicates if the attribute is All Field.
isApplicableToRecordSetField Indicates if the attribute is applicable to a record set field.
isEnabled Indicates if the attribute is enabled.