update_knowledge_base_resource

ArtificialIntelligenceApi.update_knowledge_base_resource(id, resource_id, role_id, source_update_request, content_type=None, _request_timeout=None, _request_auth=None, _content_type=None, _headers=None, _host_index=0)

Update a knowledge base datasource description

Updates only the Description of an existing datasource. Requires editor access. Unstructured sources are updated in Bedrock and DynamoDB; structured sources are updated in DynamoDB only. resource_id is the Bedrock SourceId for unstructured sources, or ResourceKey for structured sources.

Parameters:
  • id (str) – Unique identifier of the knowledge base. (required)

  • resource_id (str) – Datasource ID — Bedrock SourceId (unstructured) or ResourceKey (structured). (required)

  • role_id (str) – Amorphic role ID of the requesting user. Must be a role the authenticated user belongs to. (required)

  • source_update_request (SourceUpdateRequest) – Description is required and must be a string. No other body fields are used. (required)

  • content_type (str) – Request body media type.

  • _request_timeout (int, tuple(int, int), optional) – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

  • _content_type (str, Optional) – force content-type for the request.

  • _headers (dict, optional) – set to override the headers for a single request; this effectively ignores the headers in the spec for a single request.

  • _host_index (int, optional) – set to override the host_index for a single request; this effectively ignores the host_index in the spec for a single request.

Return type:

UpdateKnowledgeBaseResource200Response

Returns:

Returns the result object.

Request and Response Examples

HTTP: PUT /ai/knowledgebases/{id}/resources/{resource_id}

Parameter examples

Name

In

Example

id

path

"ABCDEFGHIJ"

resource_id

path

"ABCDEFGHIJDS"

Content-Type

header

"application/json"

role_id

header

"custom-role-123e4567-e89b-12d3-a456-426614174000"

Request

Description is required and must be a string. No other body fields are used.

Update source description

{
  "Description": "Updated sales documentation source"
}

Clear description (empty string allowed)

{
  "Description": ""
}

Success (HTTP 200)

Datasource description updated. Returns Message and SourceId.

Request / response example

{
  "Message": "Source updated successfully.",
  "SourceId": "ABCDEFGHIJDS"
}

Errors

Documented error codes: IPV-1008, IPV-1002, AUTH-1001, AUTH-1012, AUTH-1011, GE-1085, DB-1002.

HTTP 400

Input validation or authorization failure. Body is {“Message”: “<CODE> - <text>”}. Codes: IPV-1008 (missing/non-string Description), IPV-1002 (source not found), AUTH-1001 (missing role_id), AUTH-1012 (editor required), AUTH-1011 (caller not authorized).

Missing role_id header

{
  "Message": "AUTH-1001 - Missing role information in event header"
}

Caller not authorized

{
  "Message": "AUTH-1011 - User does not have sufficient permission to perform this action"
}

HTTP 500

Backend failure. Body is {“Message”: “<CODE> - <text>”}. Codes: GE-1085 (unexpected backend failure), DB-1002 (persistence failure).

Unexpected backend failure

{
  "Message": "GE-1085 - An unexpected error occurred"
}