@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Amazon Lex Runtime V2
@version 2020-08-07
@auth AWS SigV4
@endpoints 5
@toc bots(5)

@endpoint DELETE /bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}
@required {botId: str, botAliasId: str, localeId: str, sessionId: str}
@returns(200) {botId: str?, botAliasId: str?, localeId: str?, sessionId: str?}

@endpoint GET /bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}
@required {botId: str, botAliasId: str, localeId: str, sessionId: str}
@returns(200) {sessionId: str?, messages: [Message]?, interpretations: [Interpretation]?, sessionState: SessionState?{dialogAction: DialogAction?{type: str, slotToElicit: str?, slotElicitationStyle: str?, subSlotToElicit: ElicitSubSlot?{name: str, subSlotToElicit: ElicitSubSlot?}}, intent: Intent?{name: str, slots: map<str,Slot>?, state: str?, confirmationState: str?}, activeContexts: [ActiveContext]?, sessionAttributes: map<str,str>?, originatingRequestId: str?, runtimeHints: RuntimeHints?{slotHints: map<str,map<str,RuntimeHintDetails>>?}}}

@endpoint POST /bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}
@required {botId: str, botAliasId: str, localeId: str, sessionId: str, sessionState: SessionState}
@optional {ResponseContentType: str, messages: [Message], requestAttributes: map<str,str>}
@returns(200) {contentType: str?, messages: str?, sessionState: str?, requestAttributes: str?, sessionId: str?, audioStream: bytes?}

@endpoint POST /bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}/text
@required {botId: str, botAliasId: str, localeId: str, sessionId: str, text: str}
@optional {sessionState: SessionState, requestAttributes: map<str,str>}
@returns(200) {messages: [Message]?, sessionState: SessionState?{dialogAction: DialogAction?{type: str, slotToElicit: str?, slotElicitationStyle: str?, subSlotToElicit: ElicitSubSlot?{name: str, subSlotToElicit: ElicitSubSlot?}}, intent: Intent?{name: str, slots: map<str,Slot>?, state: str?, confirmationState: str?}, activeContexts: [ActiveContext]?, sessionAttributes: map<str,str>?, originatingRequestId: str?, runtimeHints: RuntimeHints?{slotHints: map<str,map<str,RuntimeHintDetails>>?}}, interpretations: [Interpretation]?, requestAttributes: map<str,str>?, sessionId: str?, recognizedBotMember: RecognizedBotMember?{botId: str, botName: str?}}

@endpoint POST /bots/{botId}/botAliases/{botAliasId}/botLocales/{localeId}/sessions/{sessionId}/utterance
@required {botId: str, botAliasId: str, localeId: str, sessionId: str, Content-Type: str}
@optional {x-amz-lex-session-state: str, x-amz-lex-request-attributes: str, Response-Content-Type: str, inputStream: bytes}
@returns(200) {inputMode: str?, contentType: str?, messages: str?, interpretations: str?, sessionState: str?, requestAttributes: str?, sessionId: str?, inputTranscript: str?, audioStream: bytes?, recognizedBotMember: str?}

@end
