Clinia
RegistrySearch

Search accross resource or relationship collections in the registry

POST
/sources/{sourceKey}/v1/collections/{collectionKeys}/query

Search across resource or relationship collections in the registry. This endpoint suppport both regular and federated search depending on the number of collection keys specified in the path. If the search is done on one multiple collections are specified, it must use federated search paths. This means that operators expect the collection type and collection key to be specified in the path. For example, resources.<collectionKey>.<propertyKey>. If the search is done on a single collection, both regular and federated search paths are supported.

X-Clinia-API-Key<token>

In: header

Path Parameters

sourceKey*string

The source from which to execute the query.

collectionKeys*string

The collections that should be included in the search. Specifying multiple collections is done by separating them with a comma.

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Use dot-notation paths (e.g., name, meta.updatedAt, address.city). To include properties from relationships or adjacent records, request them via traversedProperties and reference with @ (e.g., @worksAt.*, @worksAt.@clinic.name). Some endpoints require federated paths such as resources.<collectionKey>.<propertyKey> or relationships.<collectionKey>.<propertyKey>.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/sources/string/v1/collections/collection1,collection2/query" \  -H "Content-Type: application/json" \  -d '{}'
{  "semanticQueryInfo": {    "reasoning": "string",    "originalQuery": "string",    "query": {      "id": "string",      "and": [        null      ]    },    "filter": {      "id": "string",      "and": [        null      ]    }  },  "hits": [    {      "hitType": "RESOURCE",      "score": 0.1,      "resource": {},      "traversedProperties": {        "property1": [          {            "type": "address",            "value": {},            "relationshipId": "string",            "relationshipType": "string",            "recordId": "string",            "recordType": "string"          }        ],        "property2": [          {            "type": "address",            "value": {},            "relationshipId": "string",            "relationshipType": "string",            "recordId": "string",            "recordType": "string"          }        ]      },      "highlighting": {        "property1": [          {            "type": "textual",            "highlight": "string"          }        ],        "property2": [          {            "type": "textual",            "highlight": "string"          }        ]      }    }  ],  "meta": {    "numPages": 0,    "page": 0,    "perPage": 0,    "total": 0,    "filter": {      "id": "string",      "and": [        null      ]    }  },  "aggregates": [    {      "type": "LEXICAL",      "path": "string",      "aggregate": [        {          "value": "string",          "count": 0        }      ]    }  ]}