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 namefield 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 DRAFTversion.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. - fieldList
- 
                        A list of objects containing fields that caused validation errors and their corresponding validation error messages. 
 HTTP Status Code: 400 
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: