CreatePrompt
Creates a prompt in your prompt library that you can add to a flow. For more information, see Prompt management in Amazon Bedrock, Create a prompt using Prompt management and Prompt flows in Amazon Bedrock in the Amazon Bedrock User Guide.
Request Syntax
POST /prompts/ HTTP/1.1
Content-type: application/json
{
"clientToken": "string
",
"customerEncryptionKeyArn": "string
",
"defaultVariant": "string
",
"description": "string
",
"name": "string
",
"tags": {
"string
" : "string
"
},
"variants": [
{
"additionalModelRequestFields": JSON value
,
"genAiResource": { ... },
"inferenceConfiguration": { ... },
"metadata": [
{
"key": "string
",
"value": "string
"
}
],
"modelId": "string
",
"name": "string
",
"templateConfiguration": { ... },
"templateType": "string
"
}
]
}
URI Request Parameters
The request does not use any URI parameters.
Request Body
The request accepts the following data in JSON format.
- clientToken
-
A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more information, see Ensuring idempotency.
Type: String
Length Constraints: Minimum length of 33. Maximum length of 256.
Pattern:
^[a-zA-Z0-9](-*[a-zA-Z0-9]){0,256}$
Required: No
- customerEncryptionKeyArn
-
The Amazon Resource Name (ARN) of the KMS key to encrypt the prompt.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
Required: No
- defaultVariant
-
The name of the default variant for the prompt. This value must match the
name
field in the relevant PromptVariant object.Type: String
Pattern:
^([0-9a-zA-Z][_-]?){1,100}$
Required: No
- description
-
A description for the prompt.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 200.
Required: No
- name
-
A name for the prompt.
Type: String
Pattern:
^([0-9a-zA-Z][_-]?){1,100}$
Required: Yes
-
Any tags that you want to attach to the prompt. For more information, see Tagging resources in Amazon Bedrock.
Type: String to string map
Key Length Constraints: Minimum length of 1. Maximum length of 128.
Key Pattern:
^[a-zA-Z0-9\s._:/=+@-]*$
Value Length Constraints: Minimum length of 0. Maximum length of 256.
Value Pattern:
^[a-zA-Z0-9\s._:/=+@-]*$
Required: No
- variants
-
A list of objects, each containing details about a variant of the prompt.
Type: Array of PromptVariant objects
Array Members: Minimum number of 0 items. Maximum number of 1 item.
Required: No
Response Syntax
HTTP/1.1 201
Content-type: application/json
{
"arn": "string",
"createdAt": "string",
"customerEncryptionKeyArn": "string",
"defaultVariant": "string",
"description": "string",
"id": "string",
"name": "string",
"updatedAt": "string",
"variants": [
{
"additionalModelRequestFields": JSON value,
"genAiResource": { ... },
"inferenceConfiguration": { ... },
"metadata": [
{
"key": "string",
"value": "string"
}
],
"modelId": "string",
"name": "string",
"templateConfiguration": { ... },
"templateType": "string"
}
],
"version": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 201 response.
The following data is returned in JSON format by the service.
- arn
-
The Amazon Resource Name (ARN) of the prompt.
Type: String
Pattern:
^(arn:aws:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}(?::[0-9]{1,5})?)$
- createdAt
-
The time at which the prompt was created.
Type: Timestamp
- customerEncryptionKeyArn
-
The Amazon Resource Name (ARN) of the KMS key that you encrypted the prompt with.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Pattern:
^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$
- defaultVariant
-
The name of the default variant for your prompt.
Type: String
Pattern:
^([0-9a-zA-Z][_-]?){1,100}$
- description
-
The description of the prompt.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 200.
- id
-
The unique identifier of the prompt.
Type: String
Pattern:
^[0-9a-zA-Z]{10}$
- name
-
The name of the prompt.
Type: String
Pattern:
^([0-9a-zA-Z][_-]?){1,100}$
- updatedAt
-
The time at which the prompt was last updated.
Type: Timestamp
- variants
-
A list of objects, each containing details about a variant of the prompt.
Type: Array of PromptVariant objects
Array Members: Minimum number of 0 items. Maximum number of 1 item.
- version
-
The version of the prompt. When you create a prompt, the version created is the
DRAFT
version.Type: String
Length Constraints: Minimum length of 1. Maximum length of 5.
Pattern:
^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
The request is denied because of missing access permissions.
HTTP Status Code: 403
- ConflictException
-
There was a conflict performing an operation.
HTTP Status Code: 409
- InternalServerException
-
An internal server error occurred. Retry your request.
HTTP Status Code: 500
- ServiceQuotaExceededException
-
The number of requests exceeds the service quota. Resubmit your request later.
HTTP Status Code: 402
- ThrottlingException
-
The number of requests exceeds the limit. Resubmit your request later.
HTTP Status Code: 429
- ValidationException
-
Input validation failed. Check your request parameters and retry the request.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: