SemanticIndex REST API endpoint
Disclaimer: This endpoint documentation is generated from the latest Sitevision version. It might differ from the actual Sitevision environment where your website resides.
Use the RestApi utility of the Public API for server-side access of this endpoint.
For a practical example of how to use the SemanticIndex endpoint, check out the Integrating external sources to a Knowledge (RAG) coookbook recipe.
SemanticIndex
Management of external data entries for a sv:semanticIndex.
Applicable to sv:semanticIndex of the sv:semanticIndexRepository.
POST
Updates or inserts an external entry in a semantic index.
Requirements
The feature "semantic-index" and the semantic index must allow external data sources (i.e. the "allowExternalData" property is true).
Permissions
Requires that the caller is authorized to WRITE and MANAGE_AI on the sv:site.
Eventual consistency
Actual mutation don’t happen right away. The data of a valid POST is placed in a queue and handled later in the background.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| source | string |
Yes | Name/identifier of the data source (i.e. origin of the external entry) |
| id | string |
Yes | Unique identifier of the external entry |
| text | string |
Yes | The textual content of the external entry |
| name | string |
Yes | The name/title of the external entry |
| url | string |
No | Optional URL that references the external entry |
| timestamp | long |
No | Optional timestamp for the external entry (e.g. last modified). If omitted or not a number, timestamp will be set to the current time. |
| acl_allow | array of string |
Yes |
List of access control values (requirements to get READ permission for this external entry).
Allowed values:
|
Effective access control resolve
The requirements to READ the external entry specified by the acl_allow option will be computed/short-circuited
to the least privileged level whenever possible.
-
Public access. For example:
["anonymous", "authenticated", "admingroup", "401.12121212"]will be short-circuited to:["anonymous"]. I.e. "Accessible by everyone". -
Authenticated access. For example:
["authenticated", "admingroup", "401.12121212"]will be short-circuited to:["authenticated"]. I.e. "Accessible by all authenticated users". -
Specific authenticated access. For example:
["admingroup", "401.12121212"]will be kept as is:["admingroup", "401.12121212"]. I.e. "Accessible by all authenticated users that are member of the virtual group with groupId 'admingroup' or member of the collaboration group with identifier '401.12121212'".
Example URL
345.42dc9fc3194eef445d1d/semanticindex
Example input
{
"source": "The Poem system",
"id": "poem_doc_101",
"text": "Roses are red, Violets are blue, Sugar is sweet, And so are you.",
"name": "Red Roses",
"url": "https://example.com/doc101",
"timestamp": 1693939200000,
"acl_allow": ["authenticated"]
}
DELETE
Deletes an external entry from a semantic index.
Requirements
The feature "semantic-index" and the semantic index must allow external data sources (i.e. the "allowExternalData" property is true).
Permissions
Requires that the caller is authorized to WRITE and MANAGE_AI on the sv:site.
Eventual consistency
Actual mutation don’t happen right away. The data of a valid DELETE is placed in a queue and handled later in the background.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string |
Yes | Unique identifier of the external entry |
Example URL
345.42dc9fc3194eef445d1d/semanticindex
Example input
{
"id": "poem_doc_101"
}