1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2016-11-28",
5    "endpointPrefix":"runtime.lex",
6    "jsonVersion":"1.1",
7    "protocol":"rest-json",
8    "serviceFullName":"Amazon Lex Runtime Service",
9    "signatureVersion":"v4",
10    "signingName":"lex",
11    "uid":"runtime.lex-2016-11-28"
12  },
13  "operations":{
14    "PostContent":{
15      "name":"PostContent",
16      "http":{
17        "method":"POST",
18        "requestUri":"/bot/{botName}/alias/{botAlias}/user/{userId}/content"
19      },
20      "input":{"shape":"PostContentRequest"},
21      "output":{"shape":"PostContentResponse"},
22      "errors":[
23        {"shape":"NotFoundException"},
24        {"shape":"BadRequestException"},
25        {"shape":"LimitExceededException"},
26        {"shape":"InternalFailureException"},
27        {"shape":"ConflictException"},
28        {"shape":"UnsupportedMediaTypeException"},
29        {"shape":"NotAcceptableException"},
30        {"shape":"RequestTimeoutException"},
31        {"shape":"DependencyFailedException"},
32        {"shape":"BadGatewayException"},
33        {"shape":"LoopDetectedException"}
34      ],
35      "authtype":"v4-unsigned-body"
36    },
37    "PostText":{
38      "name":"PostText",
39      "http":{
40        "method":"POST",
41        "requestUri":"/bot/{botName}/alias/{botAlias}/user/{userId}/text"
42      },
43      "input":{"shape":"PostTextRequest"},
44      "output":{"shape":"PostTextResponse"},
45      "errors":[
46        {"shape":"NotFoundException"},
47        {"shape":"BadRequestException"},
48        {"shape":"LimitExceededException"},
49        {"shape":"InternalFailureException"},
50        {"shape":"ConflictException"},
51        {"shape":"DependencyFailedException"},
52        {"shape":"BadGatewayException"},
53        {"shape":"LoopDetectedException"}
54      ]
55    }
56  },
57  "shapes":{
58    "Accept":{"type":"string"},
59    "AttributesString":{
60      "type":"string",
61      "sensitive":true
62    },
63    "BadGatewayException":{
64      "type":"structure",
65      "members":{
66        "Message":{"shape":"ErrorMessage"}
67      },
68      "error":{"httpStatusCode":502},
69      "exception":true
70    },
71    "BadRequestException":{
72      "type":"structure",
73      "members":{
74        "message":{"shape":"String"}
75      },
76      "error":{"httpStatusCode":400},
77      "exception":true
78    },
79    "BlobStream":{
80      "type":"blob",
81      "streaming":true
82    },
83    "BotAlias":{"type":"string"},
84    "BotName":{"type":"string"},
85    "Button":{
86      "type":"structure",
87      "required":[
88        "text",
89        "value"
90      ],
91      "members":{
92        "text":{"shape":"ButtonTextStringWithLength"},
93        "value":{"shape":"ButtonValueStringWithLength"}
94      }
95    },
96    "ButtonTextStringWithLength":{
97      "type":"string",
98      "max":15,
99      "min":1
100    },
101    "ButtonValueStringWithLength":{
102      "type":"string",
103      "max":1000,
104      "min":1
105    },
106    "ConflictException":{
107      "type":"structure",
108      "members":{
109        "message":{"shape":"String"}
110      },
111      "error":{"httpStatusCode":409},
112      "exception":true
113    },
114    "ContentType":{
115      "type":"string",
116      "enum":["application/vnd.amazonaws.card.generic"]
117    },
118    "DependencyFailedException":{
119      "type":"structure",
120      "members":{
121        "Message":{"shape":"ErrorMessage"}
122      },
123      "error":{"httpStatusCode":424},
124      "exception":true
125    },
126    "DialogState":{
127      "type":"string",
128      "enum":[
129        "ElicitIntent",
130        "ConfirmIntent",
131        "ElicitSlot",
132        "Fulfilled",
133        "ReadyForFulfillment",
134        "Failed"
135      ]
136    },
137    "ErrorMessage":{"type":"string"},
138    "GenericAttachment":{
139      "type":"structure",
140      "members":{
141        "title":{"shape":"StringWithLength"},
142        "subTitle":{"shape":"StringWithLength"},
143        "attachmentLinkUrl":{"shape":"StringUrlWithLength"},
144        "imageUrl":{"shape":"StringUrlWithLength"},
145        "buttons":{"shape":"listOfButtons"}
146      }
147    },
148    "HttpContentType":{"type":"string"},
149    "IntentName":{"type":"string"},
150    "InternalFailureException":{
151      "type":"structure",
152      "members":{
153        "message":{"shape":"String"}
154      },
155      "error":{"httpStatusCode":500},
156      "exception":true,
157      "fault":true
158    },
159    "LimitExceededException":{
160      "type":"structure",
161      "members":{
162        "retryAfterSeconds":{
163          "shape":"String",
164          "location":"header",
165          "locationName":"Retry-After"
166        },
167        "message":{"shape":"String"}
168      },
169      "error":{"httpStatusCode":429},
170      "exception":true
171    },
172    "LoopDetectedException":{
173      "type":"structure",
174      "members":{
175        "Message":{"shape":"ErrorMessage"}
176      },
177      "error":{"httpStatusCode":508},
178      "exception":true
179    },
180    "NotAcceptableException":{
181      "type":"structure",
182      "members":{
183        "message":{"shape":"String"}
184      },
185      "error":{"httpStatusCode":406},
186      "exception":true
187    },
188    "NotFoundException":{
189      "type":"structure",
190      "members":{
191        "message":{"shape":"String"}
192      },
193      "error":{"httpStatusCode":404},
194      "exception":true
195    },
196    "PostContentRequest":{
197      "type":"structure",
198      "required":[
199        "botName",
200        "botAlias",
201        "userId",
202        "contentType",
203        "inputStream"
204      ],
205      "members":{
206        "botName":{
207          "shape":"BotName",
208          "location":"uri",
209          "locationName":"botName"
210        },
211        "botAlias":{
212          "shape":"BotAlias",
213          "location":"uri",
214          "locationName":"botAlias"
215        },
216        "userId":{
217          "shape":"UserId",
218          "location":"uri",
219          "locationName":"userId"
220        },
221        "sessionAttributes":{
222          "shape":"AttributesString",
223          "jsonvalue":true,
224          "location":"header",
225          "locationName":"x-amz-lex-session-attributes"
226        },
227        "requestAttributes":{
228          "shape":"AttributesString",
229          "jsonvalue":true,
230          "location":"header",
231          "locationName":"x-amz-lex-request-attributes"
232        },
233        "contentType":{
234          "shape":"HttpContentType",
235          "location":"header",
236          "locationName":"Content-Type"
237        },
238        "accept":{
239          "shape":"Accept",
240          "location":"header",
241          "locationName":"Accept"
242        },
243        "inputStream":{"shape":"BlobStream"}
244      },
245      "payload":"inputStream"
246    },
247    "PostContentResponse":{
248      "type":"structure",
249      "members":{
250        "contentType":{
251          "shape":"HttpContentType",
252          "location":"header",
253          "locationName":"Content-Type"
254        },
255        "intentName":{
256          "shape":"IntentName",
257          "location":"header",
258          "locationName":"x-amz-lex-intent-name"
259        },
260        "slots":{
261          "shape":"String",
262          "jsonvalue":true,
263          "location":"header",
264          "locationName":"x-amz-lex-slots"
265        },
266        "sessionAttributes":{
267          "shape":"String",
268          "jsonvalue":true,
269          "location":"header",
270          "locationName":"x-amz-lex-session-attributes"
271        },
272        "message":{
273          "shape":"Text",
274          "location":"header",
275          "locationName":"x-amz-lex-message"
276        },
277        "dialogState":{
278          "shape":"DialogState",
279          "location":"header",
280          "locationName":"x-amz-lex-dialog-state"
281        },
282        "slotToElicit":{
283          "shape":"String",
284          "location":"header",
285          "locationName":"x-amz-lex-slot-to-elicit"
286        },
287        "inputTranscript":{
288          "shape":"String",
289          "location":"header",
290          "locationName":"x-amz-lex-input-transcript"
291        },
292        "audioStream":{"shape":"BlobStream"}
293      },
294      "payload":"audioStream"
295    },
296    "PostTextRequest":{
297      "type":"structure",
298      "required":[
299        "botName",
300        "botAlias",
301        "userId",
302        "inputText"
303      ],
304      "members":{
305        "botName":{
306          "shape":"BotName",
307          "location":"uri",
308          "locationName":"botName"
309        },
310        "botAlias":{
311          "shape":"BotAlias",
312          "location":"uri",
313          "locationName":"botAlias"
314        },
315        "userId":{
316          "shape":"UserId",
317          "location":"uri",
318          "locationName":"userId"
319        },
320        "sessionAttributes":{"shape":"StringMap"},
321        "requestAttributes":{"shape":"StringMap"},
322        "inputText":{"shape":"Text"}
323      }
324    },
325    "PostTextResponse":{
326      "type":"structure",
327      "members":{
328        "intentName":{"shape":"IntentName"},
329        "slots":{"shape":"StringMap"},
330        "sessionAttributes":{"shape":"StringMap"},
331        "message":{"shape":"Text"},
332        "dialogState":{"shape":"DialogState"},
333        "slotToElicit":{"shape":"String"},
334        "responseCard":{"shape":"ResponseCard"}
335      }
336    },
337    "RequestTimeoutException":{
338      "type":"structure",
339      "members":{
340        "message":{"shape":"String"}
341      },
342      "error":{"httpStatusCode":408},
343      "exception":true
344    },
345    "ResponseCard":{
346      "type":"structure",
347      "members":{
348        "version":{"shape":"String"},
349        "contentType":{"shape":"ContentType"},
350        "genericAttachments":{"shape":"genericAttachmentList"}
351      }
352    },
353    "String":{"type":"string"},
354    "StringMap":{
355      "type":"map",
356      "key":{"shape":"String"},
357      "value":{"shape":"String"},
358      "sensitive":true
359    },
360    "StringUrlWithLength":{
361      "type":"string",
362      "max":2048,
363      "min":1
364    },
365    "StringWithLength":{
366      "type":"string",
367      "max":80,
368      "min":1
369    },
370    "Text":{
371      "type":"string",
372      "max":1024,
373      "min":1,
374      "sensitive":true
375    },
376    "UnsupportedMediaTypeException":{
377      "type":"structure",
378      "members":{
379        "message":{"shape":"String"}
380      },
381      "error":{"httpStatusCode":415},
382      "exception":true
383    },
384    "UserId":{
385      "type":"string",
386      "max":100,
387      "min":2,
388      "pattern":"[0-9a-zA-Z._:-]+"
389    },
390    "genericAttachmentList":{
391      "type":"list",
392      "member":{"shape":"GenericAttachment"},
393      "max":10,
394      "min":0
395    },
396    "listOfButtons":{
397      "type":"list",
398      "member":{"shape":"Button"},
399      "max":5,
400      "min":0
401    }
402  }
403}
404