---
title: "POST /app-instance-bots"
method: POST
path: "/app-instance-bots"
---

# POST /app-instance-bots

`POST /app-instance-bots`

Creates a bot under an Amazon Chime <code>AppInstance</code>. The request consists of a unique <code>Configuration</code> and <code>Name</code> for that bot.

## Request body

- object
  - `AppInstanceArn` string, required — The ARN of the <code>AppInstance</code> request.
  - `Name` string, password — The user's name.
  - `Metadata` string, password — The request metadata. Limited to a 1KB string in UTF-8.
  - `ClientRequestToken` string, required — The unique ID for the client making the request. Use different tokens for different <code>AppInstanceBots</code>.
  - `Tags` Tag[] — The tags assigned to the <code>AppInstanceBot</code>.
    - `Key` string, password, required — The key in a tag.
    - `Value` string, password, required — The value in a tag.
  - `Configuration` object, required — A structure that contains configuration data.
    - `Lex` object — The configuration for an Amazon Lex V2 bot.
      - `RespondsTo` 'STANDARD_MESSAGES' — <important> <p> <b>Deprecated</b>. Use <code>InvokedBy</code> instead.</p> </important> <p>Determines whether the Amazon Lex V2 bot responds to all standard messages. Control messages are not supported.</p>
      - `InvokedBy` object — Specifies the type of message that triggers a bot.
        - `StandardMessages` 'AUTO' | 'ALL' | 'MENTIONS' | 'NONE', required — <p>Sets standard messages as the bot trigger. For standard messages:</p> <ul> <li> <p> <code>ALL</code>: The bot processes all standard messages.</p> </li> <li> <p> <code>AUTO</code>: The bot responds to ALL messages when the channel has one other non-hidden member, and responds to MENTIONS when the channel has more than one other non-hidden member.</p> </li> <li> <p> <code>MENTIONS</code>: The bot processes all standard messages that have a message attribute with <code>CHIME.mentions</code> and a value of the bot ARN.</p> </li> <li> <p> <code>NONE</code>: The bot processes no standard messages.</p> </li> </ul>
        - `TargetedMessages` 'ALL' | 'NONE', required — <p>Sets targeted messages as the bot trigger. For targeted messages:</p> <ul> <li> <p> <code>ALL</code>: The bot processes all <code>TargetedMessages</code> sent to it. The bot then responds with a targeted message back to the sender. </p> </li> <li> <p> <code>NONE</code>: The bot processes no targeted messages.</p> </li> </ul>
      - `LexBotAliasArn` string, required — The ARN of the Amazon Lex V2 bot's alias. The ARN uses this format: <code>arn:aws:lex:REGION:ACCOUNT:bot-alias/MYBOTID/MYBOTALIAS</code>
      - `LocaleId` string, required — Identifies the Amazon Lex V2 bot's language and locale. The string must match one of the supported locales in Amazon Lex V2. All of the intents, slot types, and slots used in the bot must have the same locale. For more information, see <a href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported languages</a> in the <i>Amazon Lex V2 Developer Guide</i>.
      - `WelcomeIntent` string — The name of the welcome intent configured in the Amazon Lex V2 bot.

## Response `201`

Success

- CreateAppInstanceBotResponse
  - `AppInstanceBotArn` string — The ARN of the <code>AppinstanceBot</code>.

## Other responses

- `480` — BadRequestException
- `481` — ConflictException
- `482` — ForbiddenException
- `483` — ResourceLimitExceededException
- `484` — ThrottledClientException
- `485` — UnauthorizedClientException
- `486` — ServiceUnavailableException
- `487` — ServiceFailureException

---

[API](https://skmtc.net/aws/apis/chime-sdk-identity.md) · [All operations](https://skmtc.net/aws/apis/chime-sdk-identity/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aws/chime-sdk-identity/revisions/5ac0320cd9af/schema)
