[ aws . wisdom ]

create-knowledge-base

Description

Creates a knowledge base.

Note

When using this API, you cannot reuse Amazon AppIntegrations DataIntegrations with external knowledge bases such as Salesforce and ServiceNow. If you do, you’ll get an InvalidRequestException error.

<p>For example, you're programmatically managing your external knowledge base, and you want to add or remove one of the fields that is being ingested from Salesforce. Do the following:</p> <ol> <li> <p>Call <a href="https://docs.aws.amazon.com/wisdom/latest/APIReference/API_DeleteKnowledgeBase.html">DeleteKnowledgeBase</a>.</p> </li> <li> <p>Call <a href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_DeleteDataIntegration.html">DeleteDataIntegration</a>.</p> </li> <li> <p>Call <a href="https://docs.aws.amazon.com/appintegrations/latest/APIReference/API_CreateDataIntegration.html">CreateDataIntegration</a> to recreate the DataIntegration or a create different one.</p> </li> <li> <p>Call CreateKnowledgeBase.</p> </li> </ol> </note>

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-knowledge-base
[--client-token <value>]
[--description <value>]
--knowledge-base-type <value>
--name <value>
[--rendering-configuration <value>]
[--server-side-encryption-configuration <value>]
[--source-configuration <value>]
[--tags <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--client-token (string)

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

--description (string)

The description.

--knowledge-base-type (string)

The type of knowledge base. Only CUSTOM knowledge bases allow you to upload your own content. EXTERNAL knowledge bases support integrations with third-party systems whose content is synchronized automatically.

Possible values:

  • EXTERNAL

  • CUSTOM

--name (string)

The name of the knowledge base.

--rendering-configuration (structure)

Information about how to render the content.

templateUri -> (string)

A URI template containing exactly one variable in ${variableName} format. This can only be set for EXTERNAL knowledge bases. For Salesforce and ServiceNow, the variable must be one of the following:

  • Salesforce: Id , ArticleNumber , VersionNumber , Title , PublishStatus , or IsDeleted

  • ServiceNow: number , short_description , sys_mod_count , workflow_state , or active

<p>The variable is replaced with the actual value for a piece of content when calling <a href="https://docs.aws.amazon.com/wisdom/latest/APIReference/API_GetContent.html">GetContent</a>. </p>

Shorthand Syntax:

templateUri=string

JSON Syntax:

{
  "templateUri": "string"
}

--server-side-encryption-configuration (structure)

The KMS key used for encryption.

kmsKeyId -> (string)

The KMS key. For information about valid ID values, see Key identifiers (KeyId) .

Shorthand Syntax:

kmsKeyId=string

JSON Syntax:

{
  "kmsKeyId": "string"
}

--source-configuration (structure)

The source of the knowledge base content. Only set this argument for EXTERNAL knowledge bases.

appIntegrations -> (structure)

Configuration information for Amazon AppIntegrations to automatically ingest content.

appIntegrationArn -> (string)

The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.

objectFields -> (list)

The fields from the source that are made available to your agents in Wisdom.

  • For Salesforce , you must include at least Id , ArticleNumber , VersionNumber , Title , PublishStatus , and IsDeleted .

  • For ServiceNow , you must include at least number , short_description , sys_mod_count , workflow_state , and active .

Make sure to include additional fields. These fields are indexed and used to source recommendations.

(string)

Shorthand Syntax:

appIntegrations={appIntegrationArn=string,objectFields=[string,string]}

JSON Syntax:

{
  "appIntegrations": {
    "appIntegrationArn": "string",
    "objectFields": ["string", ...]
  }
}

--tags (map)

The tags used to organize, track, or control access for this resource.

key -> (string)

value -> (string)

Shorthand Syntax:

KeyName1=string,KeyName2=string

JSON Syntax:

{"string": "string"
  ...}

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.

See ‘aws help’ for descriptions of global parameters.

Output

knowledgeBase -> (structure)

The knowledge base.

description -> (string)

The description.

knowledgeBaseArn -> (string)

The Amazon Resource Name (ARN) of the knowledge base.

knowledgeBaseId -> (string)

The identifier of the knowledge base.

knowledgeBaseType -> (string)

The type of knowledge base.

lastContentModificationTime -> (timestamp)

An epoch timestamp indicating the most recent content modification inside the knowledge base. If no content exists in a knowledge base, this value is unset.

name -> (string)

The name of the knowledge base.

renderingConfiguration -> (structure)

Information about how to render the content.

templateUri -> (string)

A URI template containing exactly one variable in ${variableName} format. This can only be set for EXTERNAL knowledge bases. For Salesforce and ServiceNow, the variable must be one of the following:

  • Salesforce: Id , ArticleNumber , VersionNumber , Title , PublishStatus , or IsDeleted

  • ServiceNow: number , short_description , sys_mod_count , workflow_state , or active

<p>The variable is replaced with the actual value for a piece of content when calling <a href="https://docs.aws.amazon.com/wisdom/latest/APIReference/API_GetContent.html">GetContent</a>. </p>

serverSideEncryptionConfiguration -> (structure)

The KMS key used for encryption.

kmsKeyId -> (string)

The KMS key. For information about valid ID values, see Key identifiers (KeyId) .

sourceConfiguration -> (structure)

Source configuration information about the knowledge base.

appIntegrations -> (structure)

Configuration information for Amazon AppIntegrations to automatically ingest content.

appIntegrationArn -> (string)

The Amazon Resource Name (ARN) of the AppIntegrations DataIntegration to use for ingesting content.

objectFields -> (list)

The fields from the source that are made available to your agents in Wisdom.

  • For Salesforce , you must include at least Id , ArticleNumber , VersionNumber , Title , PublishStatus , and IsDeleted .

  • For ServiceNow , you must include at least number , short_description , sys_mod_count , workflow_state , and active .

Make sure to include additional fields. These fields are indexed and used to source recommendations.

(string)

status -> (string)

The status of the knowledge base.

tags -> (map)

The tags used to organize, track, or control access for this resource.

key -> (string)

value -> (string)