ec2.json 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422
  1. [
  2. {
  3. "description": "Scalar members",
  4. "metadata": {
  5. "protocol": "ec2",
  6. "apiVersion": "2014-01-01"
  7. },
  8. "shapes": {
  9. "InputShape": {
  10. "type": "structure",
  11. "members": {
  12. "Foo": {
  13. "shape": "StringType"
  14. },
  15. "Bar": {
  16. "shape": "StringType"
  17. }
  18. }
  19. },
  20. "StringType": {
  21. "type": "string"
  22. }
  23. },
  24. "cases": [
  25. {
  26. "given": {
  27. "input": {
  28. "shape": "InputShape"
  29. },
  30. "name": "OperationName"
  31. },
  32. "params": {
  33. "Foo": "val1",
  34. "Bar": "val2"
  35. },
  36. "serialized": {
  37. "uri": "/",
  38. "body": "Action=OperationName&Version=2014-01-01&Foo=val1&Bar=val2"
  39. }
  40. }
  41. ]
  42. },
  43. {
  44. "description": "Structure with locationName and queryName applied to members",
  45. "metadata": {
  46. "protocol": "ec2",
  47. "apiVersion": "2014-01-01"
  48. },
  49. "shapes": {
  50. "InputShape": {
  51. "type": "structure",
  52. "members": {
  53. "Foo": {
  54. "shape": "StringType"
  55. },
  56. "Bar": {
  57. "shape": "StringType",
  58. "locationName": "barLocationName"
  59. },
  60. "Yuck": {
  61. "shape": "StringType",
  62. "locationName": "yuckLocationName",
  63. "queryName": "yuckQueryName"
  64. }
  65. }
  66. },
  67. "StringType": {
  68. "type": "string"
  69. }
  70. },
  71. "cases": [
  72. {
  73. "given": {
  74. "input": {
  75. "shape": "InputShape"
  76. },
  77. "name": "OperationName"
  78. },
  79. "params": {
  80. "Foo": "val1",
  81. "Bar": "val2",
  82. "Yuck": "val3"
  83. },
  84. "serialized": {
  85. "uri": "/",
  86. "body": "Action=OperationName&Version=2014-01-01&Foo=val1&BarLocationName=val2&yuckQueryName=val3"
  87. }
  88. }
  89. ]
  90. },
  91. {
  92. "description": "Nested structure members",
  93. "metadata": {
  94. "protocol": "ec2",
  95. "apiVersion": "2014-01-01"
  96. },
  97. "shapes": {
  98. "InputShape": {
  99. "type": "structure",
  100. "members": {
  101. "StructArg": {
  102. "shape": "StructType",
  103. "locationName": "Struct"
  104. }
  105. }
  106. },
  107. "StructType": {
  108. "type": "structure",
  109. "members": {
  110. "ScalarArg": {
  111. "shape": "StringType",
  112. "locationName": "Scalar"
  113. }
  114. }
  115. },
  116. "StringType": {
  117. "type": "string"
  118. }
  119. },
  120. "cases": [
  121. {
  122. "given": {
  123. "input": {
  124. "shape": "InputShape"
  125. },
  126. "name": "OperationName"
  127. },
  128. "params": {
  129. "StructArg": {
  130. "ScalarArg": "foo"
  131. }
  132. },
  133. "serialized": {
  134. "uri": "/",
  135. "body": "Action=OperationName&Version=2014-01-01&Struct.Scalar=foo"
  136. }
  137. }
  138. ]
  139. },
  140. {
  141. "description": "List types",
  142. "metadata": {
  143. "protocol": "ec2",
  144. "apiVersion": "2014-01-01"
  145. },
  146. "shapes": {
  147. "InputShape": {
  148. "type": "structure",
  149. "members": {
  150. "ListArg": {
  151. "shape": "ListType"
  152. }
  153. }
  154. },
  155. "ListType": {
  156. "type": "list",
  157. "member": {
  158. "shape": "Strings"
  159. }
  160. },
  161. "Strings": {
  162. "type": "string"
  163. }
  164. },
  165. "cases": [
  166. {
  167. "given": {
  168. "input": {
  169. "shape": "InputShape"
  170. },
  171. "name": "OperationName"
  172. },
  173. "params": {
  174. "ListArg": [
  175. "foo",
  176. "bar",
  177. "baz"
  178. ]
  179. },
  180. "serialized": {
  181. "uri": "/",
  182. "body": "Action=OperationName&Version=2014-01-01&ListArg.1=foo&ListArg.2=bar&ListArg.3=baz"
  183. }
  184. }
  185. ]
  186. },
  187. {
  188. "description": "List with location name applied to member",
  189. "metadata": {
  190. "protocol": "ec2",
  191. "apiVersion": "2014-01-01"
  192. },
  193. "shapes": {
  194. "InputShape": {
  195. "type": "structure",
  196. "members": {
  197. "ListArg": {
  198. "shape": "ListType",
  199. "locationName": "ListMemberName"
  200. }
  201. }
  202. },
  203. "ListType": {
  204. "type": "list",
  205. "member": {
  206. "shape": "StringType",
  207. "LocationName": "item"
  208. }
  209. },
  210. "StringType": {
  211. "type": "string"
  212. }
  213. },
  214. "cases": [
  215. {
  216. "given": {
  217. "input": {
  218. "shape": "InputShape"
  219. },
  220. "name": "OperationName"
  221. },
  222. "params": {
  223. "ListArg": [
  224. "a",
  225. "b",
  226. "c"
  227. ]
  228. },
  229. "serialized": {
  230. "uri": "/",
  231. "body": "Action=OperationName&Version=2014-01-01&ListMemberName.1=a&ListMemberName.2=b&ListMemberName.3=c"
  232. }
  233. }
  234. ]
  235. },
  236. {
  237. "description": "List with locationName and queryName",
  238. "metadata": {
  239. "protocol": "ec2",
  240. "apiVersion": "2014-01-01"
  241. },
  242. "shapes": {
  243. "InputShape": {
  244. "type": "structure",
  245. "members": {
  246. "ListArg": {
  247. "shape": "ListType",
  248. "locationName": "ListMemberName",
  249. "queryName": "ListQueryName"
  250. }
  251. }
  252. },
  253. "ListType": {
  254. "type": "list",
  255. "member": {
  256. "shape": "StringType",
  257. "LocationName": "item"
  258. }
  259. },
  260. "StringType": {
  261. "type": "string"
  262. }
  263. },
  264. "cases": [
  265. {
  266. "given": {
  267. "input": {
  268. "shape": "InputShape"
  269. },
  270. "name": "OperationName"
  271. },
  272. "params": {
  273. "ListArg": [
  274. "a",
  275. "b",
  276. "c"
  277. ]
  278. },
  279. "serialized": {
  280. "uri": "/",
  281. "body": "Action=OperationName&Version=2014-01-01&ListQueryName.1=a&ListQueryName.2=b&ListQueryName.3=c"
  282. }
  283. }
  284. ]
  285. },
  286. {
  287. "description": "Base64 encoded Blobs",
  288. "metadata": {
  289. "protocol": "ec2",
  290. "apiVersion": "2014-01-01"
  291. },
  292. "shapes": {
  293. "InputShape": {
  294. "type": "structure",
  295. "members": {
  296. "BlobArg": {
  297. "shape": "BlobType"
  298. }
  299. }
  300. },
  301. "BlobType": {
  302. "type": "blob"
  303. }
  304. },
  305. "cases": [
  306. {
  307. "given": {
  308. "input": {
  309. "shape": "InputShape"
  310. },
  311. "name": "OperationName"
  312. },
  313. "params": {
  314. "BlobArg": "foo"
  315. },
  316. "serialized": {
  317. "uri": "/",
  318. "body": "Action=OperationName&Version=2014-01-01&BlobArg=Zm9v"
  319. }
  320. }
  321. ]
  322. },
  323. {
  324. "description": "Timestamp values",
  325. "metadata": {
  326. "protocol": "ec2",
  327. "apiVersion": "2014-01-01"
  328. },
  329. "shapes": {
  330. "InputShape": {
  331. "type": "structure",
  332. "members": {
  333. "TimeArg": {
  334. "shape": "TimestampType"
  335. }
  336. }
  337. },
  338. "TimestampType": {
  339. "type": "timestamp"
  340. }
  341. },
  342. "cases": [
  343. {
  344. "given": {
  345. "input": {
  346. "shape": "InputShape"
  347. },
  348. "name": "OperationName"
  349. },
  350. "params": {
  351. "TimeArg": 1422172800
  352. },
  353. "serialized": {
  354. "uri": "/",
  355. "body": "Action=OperationName&Version=2014-01-01&TimeArg=2015-01-25T08%3A00%3A00Z"
  356. }
  357. }
  358. ]
  359. },
  360. {
  361. "description": "Idempotency token auto fill",
  362. "metadata": {
  363. "protocol": "ec2",
  364. "apiVersion": "2014-01-01"
  365. },
  366. "shapes": {
  367. "InputShape": {
  368. "type": "structure",
  369. "members": {
  370. "Token": {
  371. "shape": "StringType",
  372. "idempotencyToken": true
  373. }
  374. }
  375. },
  376. "StringType": {
  377. "type": "string"
  378. }
  379. },
  380. "cases": [
  381. {
  382. "given": {
  383. "input": {
  384. "shape": "InputShape"
  385. },
  386. "http": {
  387. "method": "POST",
  388. "requestUri": "/path"
  389. },
  390. "name": "OperationName"
  391. },
  392. "params": {
  393. "Token": "abc123"
  394. },
  395. "serialized": {
  396. "uri": "/path",
  397. "headers": {},
  398. "body": "Token=abc123"
  399. }
  400. },
  401. {
  402. "given": {
  403. "input": {
  404. "shape": "InputShape"
  405. },
  406. "http": {
  407. "method": "POST",
  408. "requestUri": "/path"
  409. },
  410. "name": "OperationName"
  411. },
  412. "params": {
  413. },
  414. "serialized": {
  415. "uri": "/path",
  416. "headers": {},
  417. "body": "Token=00000000-0000-4000-8000-000000000000"
  418. }
  419. }
  420. ]
  421. }
  422. ]