Db
@nuclia/core • Docs
@nuclia/core / Db
Class: Db
Allows you to access Nuclia accounts and/or Nuclia Knowledge Boxes.
Implements
Constructors
new Db()
new Db(
nuclia):Db
Parameters
• nuclia: INuclia
Returns
Defined in
libs/sdk-core/src/lib/db/db.ts:66
Methods
addModelToKb()
addModelToKb(
modelId,accountId,kbId,zone):Observable<void>
Add a custom model to a Knowledge Box
Parameters
• modelId: string
• accountId: string
• kbId: string
• zone: string
Returns
Observable<void>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:810
createAccount()
createAccount(
account):Observable<Account>
Creates a new account.
Parameters
• account: AccountCreation
Returns
Observable<Account>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:84
createKnowledgeBox()
createKnowledgeBox(
accountId,knowledgeBox,zone?):Observable<WritableKnowledgeBox>
Creates a new Knowledge Box. Zone parameter is mandatory except if the Knowledge Box is from a local NucliaDB instance. Example:
const knowledgeBox = {
slug: 'my-kb',
title: 'My knowledge box',
};
nuclia.db.createKnowledgeBox('my-account-id', 'europe-1', knowledgeBox).subscribe((knowledgeBox) => {
console.log('knowledge box', knowledgeBox);
});
Parameters
• accountId: string
• knowledgeBox: KnowledgeBoxCreation
• zone?: string
Returns
Observable<WritableKnowledgeBox>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:344
createModelConfiguration()
createModelConfiguration(
model,accountId,zone):Observable<object>
Creates a new model configuration
Parameters
• model: ModelConfigurationCreation
• accountId: string
• zone: string
Returns
Observable<object>
id
id:
string
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:855
createNUAClient()
createNUAClient(accountId, data)
createNUAClient(
accountId,data):Observable<object>
Creates a NUA client and a NUA token. Zone parameter must be provided except when working with a local NucliaDB instance.
Parameters
• accountId: string
Account identifier
• data: NUAClientPayload
NUA client data
Returns
Observable<object>
client_id
client_id:
string
token
token:
string
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:535
createNUAClient(accountId, data, zone)
createNUAClient(
accountId,data,zone):Observable<object>
Parameters
• accountId: string
• data: NUAClientPayload
• zone: string
Returns
Observable<object>
client_id
client_id:
string
token
token:
string
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:536
createRetrievalAgent()
createRetrievalAgent(
accountId,retrievalAgent,zone):Observable<RetrievalAgent>
Creates a new Retrieval Agent.
const retrievalAgent = {
slug: 'my-arag',
title: 'My retrieval agent',
mode: 'agent'
};
nuclia.db.createRetrievalAgent('my-account-id', 'europe-1', retrievalAgent).subscribe((retrievalAgent) => {
console.log('retrieval agent', retrievalAgent);
});
#### Parameters
• **accountId**: `string`
• **retrievalAgent**: [`RetrievalAgentCreation`](../interfaces/RetrievalAgentCreation.md)
• **zone**: `string`
#### Returns
`Observable`\<[`RetrievalAgent`](RetrievalAgent.md)\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`createRetrievalAgent`](../interfaces/IDb.md#createretrievalagent)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:379](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L379)
***
### deleteAccount()
> **deleteAccount**(`accountSlug`): `Observable`\<`void`\>
Deletes an account.
#### Parameters
• **accountSlug**: `string`
#### Returns
`Observable`\<`void`\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`deleteAccount`](../interfaces/IDb.md#deleteaccount)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:108](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L108)
***
### deleteAccountInvitation()
> **deleteAccountInvitation**(`accountId`, `email`): `Observable`\<`void`\>
Delete account invitation
#### Parameters
• **accountId**: `string`
• **email**: `string`
#### Returns
`Observable`\<`void`\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`deleteAccountInvitation`](../interfaces/IDb.md#deleteaccountinvitation)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:789](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L789)
***
### deleteModelConfiguration()
> **deleteModelConfiguration**(`modelId`, `accountId`, `zone`): `Observable`\<`void`\>
Deletes a model configuration
#### Parameters
• **modelId**: `string`
• **accountId**: `string`
• **zone**: `string`
#### Returns
`Observable`\<`void`\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`deleteModelConfiguration`](../interfaces/IDb.md#deletemodelconfiguration)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:869](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L869)
***
### deleteModelFromKb()
> **deleteModelFromKb**(`modelId`, `accountId`, `kbId`, `zone`): `Observable`\<`void`\>
Add a custom model to a Knowledge Box
#### Parameters
• **modelId**: `string`
• **accountId**: `string`
• **kbId**: `string`
• **zone**: `string`
#### Returns
`Observable`\<`void`\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`deleteModelFromKb`](../interfaces/IDb.md#deletemodelfromkb)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:824](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L824)
***
### deleteNUAClient()
#### deleteNUAClient(accountId, client_id)
> **deleteNUAClient**(`accountId`, `client_id`): `Observable`\<`void`\>
Deletes a NUA client.
Zone parameter must be provided except when working with a local NucliaDB instance.
##### Parameters
• **accountId**: `string`
• **client\_id**: `string`
##### Returns
`Observable`\<`void`\>
##### Implementation of
[`IDb`](../interfaces/IDb.md).[`deleteNUAClient`](../interfaces/IDb.md#deletenuaclient)
##### Defined in
[libs/sdk-core/src/lib/db/db.ts:609](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L609)
#### deleteNUAClient(accountId, client_id, zone)
> **deleteNUAClient**(`accountId`, `client_id`, `zone`): `Observable`\<`void`\>
##### Parameters
• **accountId**: `string`
• **client\_id**: `string`
• **zone**: `string`
##### Returns
`Observable`\<`void`\>
##### Implementation of
[`IDb`](../interfaces/IDb.md).[`deleteNUAClient`](../interfaces/IDb.md#deletenuaclient)
##### Defined in
[libs/sdk-core/src/lib/db/db.ts:610](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L610)
***
### getAccount()
> **getAccount**(): `Observable`\<[`Account`](../interfaces/Account.md)\>
Returns the account with the given id or slug, or the one defined in the Nuclia options
if no id nor slug is provided.
#### Returns
`Observable`\<[`Account`](../interfaces/Account.md)\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`getAccount`](../interfaces/IDb.md#getaccount)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:147](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L147)
***
### getAccountInvitations()
> **getAccountInvitations**(`accountId`): `Observable`\<[`PendingInvitation`](../interfaces/PendingInvitation.md)[]\>
List pending account invitations
#### Parameters
• **accountId**: `string`
#### Returns
`Observable`\<[`PendingInvitation`](../interfaces/PendingInvitation.md)[]\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`getAccountInvitations`](../interfaces/IDb.md#getaccountinvitations)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:780](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L780)
***
### getAccounts()
> **getAccounts**(): `Observable`\<[`Account`](../interfaces/Account.md)[]\>
Returns a list of all the accounts which are accessible for the current authenticated user.
#### Returns
`Observable`\<[`Account`](../interfaces/Account.md)[]\>
#### Implementation of
[`IDb`](../interfaces/IDb.md).[`getAccounts`](../interfaces/IDb.md#getaccounts)
#### Defined in
[libs/sdk-core/src/lib/db/db.ts:71](https://github.com/nuclia/frontend/blob/359f20295f426150beb27a0d0caf01d0fd148ff2/libs/sdk-core/src/lib/db/db.ts#L71)
***
### getAccountStatus()
> **getAccountStatus**(`accountSlug`): `Observable`\<[`AccountStatus`](../interfaces/AccountStatus.md)\>
Returns account status.
Example:
```ts
nuclia.db
.getAccountStatus('my-account')
.pipe(filter((status) => status.available))
.subscribe((status) => {
console.log('account ready');
});
Parameters
• accountSlug: string
Returns
Observable<AccountStatus>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:125
getAccountUser()
getAccountUser(
accountSlug,userId):Observable<Partial<FullAccountUser>>
Get an account user by their id
Parameters
• accountSlug: string
• userId: string
Returns
Observable<Partial<FullAccountUser>>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:744
getAccountUsers()
getAccountUsers(
accountSlug):Observable<FullAccountUser[]>
Get the list of all users of an account
Parameters
• accountSlug: string
Returns
Observable<FullAccountUser[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:752
getKbIndexes()
getKbIndexes(
accountSlug):Observable<KbIndex[]>
Returns a list of all the KB indexes (account id, kb id, zone id) for the provided account slug.
Parameters
• accountSlug: string
Returns
Observable<KbIndex[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:79
getKnowledgeBox()
getKnowledgeBox()
getKnowledgeBox():
Observable<WritableKnowledgeBox>
Returns the Knowledge Box corresponding to the account id, Knowledge Box id and zone provided as parameters or the ones defined in the Nuclia options if no parameters are provided. Zone is mandatory except if the Knowledge Box is from a local NucliaDB instance.
Returns
Observable<WritableKnowledgeBox>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:259
getKnowledgeBox(accountId, knowledgeBoxId, zone)
getKnowledgeBox(
accountId,knowledgeBoxId,zone?):Observable<WritableKnowledgeBox>
Parameters
• accountId: string
• knowledgeBoxId: string
• zone?: string
Returns
Observable<WritableKnowledgeBox>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:260
getKnowledgeBoxes()
getKnowledgeBoxes()
getKnowledgeBoxes():
Observable<IKnowledgeBoxItem[]>
Returns a list of all the Knowledge Boxes for the given account. Account slug and id can be provided in the Nuclia options or as parameters.
Returns
Observable<IKnowledgeBoxItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:213
getKnowledgeBoxes(accountSlug, accountId)
getKnowledgeBoxes(
accountSlug,accountId):Observable<IKnowledgeBoxItem[]>
Parameters
• accountSlug: string
• accountId: string
Returns
Observable<IKnowledgeBoxItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:214
getKnowledgeBoxesForZone()
getKnowledgeBoxesForZone(
accountId,zone):Observable<IKnowledgeBoxItem[]>
Returns the list of Knowledge Boxes for the given account id and zone.
Parameters
• accountId: string
• zone: string
Returns
Observable<IKnowledgeBoxItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:224
getLearningSchema()
getLearningSchema()
getLearningSchema():
Observable<LearningConfigurations>
Get learning configuration schema. When used on Cloud account, this method is requiring account id and zone parameters. When used on standalone, this method doesn't take any parameter
Returns
Observable<LearningConfigurations>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:620
getLearningSchema(accountId, zone)
getLearningSchema(
accountId,zone):Observable<LearningConfigurations>
Parameters
• accountId: string
• zone: string
Returns
Observable<LearningConfigurations>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:621
getModel()
getModel(
modelId,accountId,zone):Observable<CustomModel>
Get a custom models
Parameters
• modelId: string
• accountId: string
• zone: string
Returns
Observable<CustomModel>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:803
getModelConfiguration()
getModelConfiguration(
modelId,accountId,zone):Observable<ModelConfiguration>
Get a model configuration
Parameters
• modelId: string
• accountId: string
• zone: string
Returns
Observable<ModelConfiguration>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:843
getModelConfigurations()
getModelConfigurations(
accountId,zone):Observable<ModelConfigurationItem[]>
Get the list of model configurations of an account
Parameters
• accountId: string
• zone: string
Returns
Observable<ModelConfigurationItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:831
getModels()
getModels(
accountId,zone):Observable<CustomModelItem[]>
Get the list of custom models of an account
Parameters
• accountId: string
• zone: string
Returns
Observable<CustomModelItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:796
getNUAActivity()
getNUAActivity(
accountId,client_id,zoneSlug,pageIndex):Observable<EventList>
Parameters
• accountId: string
• client_id: string
• zoneSlug: string
• pageIndex: number = 0
Returns
Observable<EventList>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:480
getNUAClient()
getNUAClient(
accountId,client_id,zone):Observable<NUAClient>
Parameters
• accountId: string
• client_id: string
• zone: string
Returns
Observable<NUAClient>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:511
getNUAClients()
getNUAClients(
accountId):Observable<NUAClient[]>
Parameters
• accountId: string
Returns
Observable<NUAClient[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:489
getNUAHeader()
getNUAHeader():
object
Returns
object
x-nuclia-nuakey
x-nuclia-nuakey:
string
Defined in
libs/sdk-core/src/lib/db/db.ts:523
getNUAKey()
getNUAKey():
string
Returns
string
Defined in
libs/sdk-core/src/lib/db/db.ts:519
getRetrievalAgent()
getRetrievalAgent()
getRetrievalAgent():
Observable<RetrievalAgent>
Returns
Observable<RetrievalAgent>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:296
getRetrievalAgent(accountId, retrievalAgentId, zone)
getRetrievalAgent(
accountId,retrievalAgentId,zone?):Observable<RetrievalAgent>
Parameters
• accountId: string
• retrievalAgentId: string
• zone?: string
Returns
Observable<RetrievalAgent>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:297
getRetrievalAgents()
getRetrievalAgents()
getRetrievalAgents():
Observable<IKnowledgeBoxItem[]>
Returns a list of all the Retrieval Agents for the given account. Account slug and id can be provided in the Nuclia options or as parameters.
Returns
Observable<IKnowledgeBoxItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:231
getRetrievalAgents(accountSlug, accountId)
getRetrievalAgents(
accountSlug,accountId):Observable<IKnowledgeBoxItem[]>
Parameters
• accountSlug: string
• accountId: string
Returns
Observable<IKnowledgeBoxItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:232
getRetrievalAgentsForZone()
getRetrievalAgentsForZone(
accountId,zone,mode?):Observable<IKnowledgeBoxItem[]>
Returns the list of Retrieval Agents for the given account id and zone.
Parameters
• accountId: string
• zone: string
• mode?: KnowledgeBoxMode
Returns
Observable<IKnowledgeBoxItem[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:246
getStandaloneKbs()
getStandaloneKbs():
Observable<IStandaloneKb[]>
Returns
Observable<IStandaloneKb[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:156
getUsage()
getUsage(
accountId,from,to?,knowledgeBoxId?,aggregation?):Observable<UsagePoint[]>
Get usage metric for the account.
Parameters
• accountId: string
Account identifier
• from: string
Timestamp of the moment from which we want the metrics.
• to?: string
Timestamp of the moment until which we want the metrics. When not provided, the metrics are returned "until now".
• knowledgeBoxId?: string
Knowledge Box identifier to get the metrics for a specific Knowledge Box (returns the metrics aggregated for all the Knowledge Boxes of the account by default)
• aggregation?: UsageAggregation
Define how the metrics are aggregated. By default, the endpoint returns only one point aggregating all the data for the specified date range. But you can have one point by:
- "hour"
- "day"
- "week"
- "month"
- "quarter"
- "year"
- "millennium" (used by default)
Returns
Observable<UsagePoint[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:412
getWelcome()
getWelcome():
Observable<Welcome>
Returns user information.
Example:
nuclia.db.getWelcome().subscribe((welcome) => {
console.log(`Welcome ${welcome.preferences.name}`);
});
Returns
Observable<Welcome>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:139
hasNUAClient()
hasNUAClient():
boolean
Returns
boolean
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:515
inviteToAccount()
inviteToAccount(
accountSlug,data):Observable<void>
Invite a user to an account
Parameters
• accountSlug: string
• data: InviteAccountUserPayload
Returns
Observable<void>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:771
modifyAccount()
modifyAccount(
accountSlug,data):Observable<void>
Modifies account properties.
Example:
nuclia.db.modifyAccount('my-account', { title: 'My account' }).subscribe({
next: () => {
console.log('account modified');
},
error: (error) => {
console.error(error);
},
});
Parameters
• accountSlug: string
• data: AccountModification
Returns
Observable<void>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:103
predictAnswer()
predictAnswer(
question,context,model?):Observable<string>
Generate an answer from a question and a context.
Parameters
• question: string
• context: string[]
• model?: string
Returns
Observable<string>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:653
predictQuery()
predictQuery(
text,rephrase?,model?,rephrase_prompt?):Observable<QueryInfo>
Analyse a sentence, returning the language, the entities intent and the embeddings.
Parameters
• text: string
• rephrase?: boolean
• model?: string
• rephrase_prompt?: string
Returns
Observable<QueryInfo>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:678
predictSummarize()
predictSummarize(
text,user_prompt?,model?,summary_kind?):Observable<string>
Generate a summary from a text.
The optional user_prompt parameter allows you to provide a custom prompt to the model,
it must use the {text} placeholder to indicate where the resource text should be inserted
(example: 'Make a one-line summary of the following text: {text}').
Parameters
• text: string
• user_prompt?: string
• model?: string = 'chatgpt-azure-4o'
• summary_kind?: "simple" | "extended" = 'simple'
Returns
Observable<string>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:702
predictTokens()
predictTokens(
text):Observable<PredictedToken[]>
Extract NER tokens from a text.
Parameters
• text: string
Returns
Observable<PredictedToken[]>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:638
pull()
pull():
Observable<ProcessingPullResponse>
Pulls the latest data from Nuclia Understanding API.
Requires a NUA token.
Returns
Observable<ProcessingPullResponse>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:473
renewNUAClient()
renewNUAClient(accountId, client_id)
renewNUAClient(
accountId,client_id):Observable<object>
Renews a NUA token. Zone parameter must be provided except when working with a local NucliaDB instance.
Parameters
• accountId: string
• client_id: string
Returns
Observable<object>
client_id
client_id:
string
token
token:
string
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:588
renewNUAClient(accountId, client_id, zone)
renewNUAClient(
accountId,client_id,zone):Observable<object>
Parameters
• accountId: string
• client_id: string
• zone: string
Returns
Observable<object>
client_id
client_id:
string
token
token:
string
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:589
setAccountUsers()
setAccountUsers(
accountSlug,users):Observable<void>
Add and/or delete users from an account
Parameters
• accountSlug: string
• users: AccountUsersPayload
Returns
Observable<void>
Implementation of
Defined in
libs/sdk-core/src/lib/db/db.ts:761
upload()
upload(
file):Observable<ProcessingPushResponse>
Uploads and pushes a file to Nuclia Understanding API.
Requires a NUA token.
Example:
const file = input.files[0];
nuclia.db.upload(file).subscribe({
next: (response) => {
console.log('file uploaded', response);
},
error: (error) => {
console.error(error);
},
});
Parameters
• file: FileWithMetadata
Returns
Observable<ProcessingPushResponse>