iot1click-projects-2018-05-14.min.json 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608
  1. {
  2. "version": "2.0",
  3. "metadata": {
  4. "apiVersion": "2018-05-14",
  5. "endpointPrefix": "projects.iot1click",
  6. "jsonVersion": "1.1",
  7. "protocol": "rest-json",
  8. "serviceAbbreviation": "AWS IoT 1-Click Projects",
  9. "serviceFullName": "AWS IoT 1-Click Projects Service",
  10. "serviceId": "IoT 1Click Projects",
  11. "signatureVersion": "v4",
  12. "signingName": "iot1click",
  13. "uid": "iot1click-projects-2018-05-14"
  14. },
  15. "operations": {
  16. "AssociateDeviceWithPlacement": {
  17. "http": {
  18. "method": "PUT",
  19. "requestUri": "/projects/{projectName}/placements/{placementName}/devices/{deviceTemplateName}"
  20. },
  21. "input": {
  22. "type": "structure",
  23. "required": [
  24. "projectName",
  25. "placementName",
  26. "deviceId",
  27. "deviceTemplateName"
  28. ],
  29. "members": {
  30. "projectName": {
  31. "location": "uri",
  32. "locationName": "projectName"
  33. },
  34. "placementName": {
  35. "location": "uri",
  36. "locationName": "placementName"
  37. },
  38. "deviceId": {},
  39. "deviceTemplateName": {
  40. "location": "uri",
  41. "locationName": "deviceTemplateName"
  42. }
  43. }
  44. },
  45. "output": {
  46. "type": "structure",
  47. "members": {}
  48. }
  49. },
  50. "CreatePlacement": {
  51. "http": {
  52. "requestUri": "/projects/{projectName}/placements"
  53. },
  54. "input": {
  55. "type": "structure",
  56. "required": [
  57. "placementName",
  58. "projectName"
  59. ],
  60. "members": {
  61. "placementName": {},
  62. "projectName": {
  63. "location": "uri",
  64. "locationName": "projectName"
  65. },
  66. "attributes": {
  67. "shape": "S8"
  68. }
  69. }
  70. },
  71. "output": {
  72. "type": "structure",
  73. "members": {}
  74. }
  75. },
  76. "CreateProject": {
  77. "http": {
  78. "requestUri": "/projects"
  79. },
  80. "input": {
  81. "type": "structure",
  82. "required": [
  83. "projectName"
  84. ],
  85. "members": {
  86. "projectName": {},
  87. "description": {},
  88. "placementTemplate": {
  89. "shape": "Se"
  90. },
  91. "tags": {
  92. "shape": "Sn"
  93. }
  94. }
  95. },
  96. "output": {
  97. "type": "structure",
  98. "members": {}
  99. }
  100. },
  101. "DeletePlacement": {
  102. "http": {
  103. "method": "DELETE",
  104. "requestUri": "/projects/{projectName}/placements/{placementName}"
  105. },
  106. "input": {
  107. "type": "structure",
  108. "required": [
  109. "placementName",
  110. "projectName"
  111. ],
  112. "members": {
  113. "placementName": {
  114. "location": "uri",
  115. "locationName": "placementName"
  116. },
  117. "projectName": {
  118. "location": "uri",
  119. "locationName": "projectName"
  120. }
  121. }
  122. },
  123. "output": {
  124. "type": "structure",
  125. "members": {}
  126. }
  127. },
  128. "DeleteProject": {
  129. "http": {
  130. "method": "DELETE",
  131. "requestUri": "/projects/{projectName}"
  132. },
  133. "input": {
  134. "type": "structure",
  135. "required": [
  136. "projectName"
  137. ],
  138. "members": {
  139. "projectName": {
  140. "location": "uri",
  141. "locationName": "projectName"
  142. }
  143. }
  144. },
  145. "output": {
  146. "type": "structure",
  147. "members": {}
  148. }
  149. },
  150. "DescribePlacement": {
  151. "http": {
  152. "method": "GET",
  153. "requestUri": "/projects/{projectName}/placements/{placementName}"
  154. },
  155. "input": {
  156. "type": "structure",
  157. "required": [
  158. "placementName",
  159. "projectName"
  160. ],
  161. "members": {
  162. "placementName": {
  163. "location": "uri",
  164. "locationName": "placementName"
  165. },
  166. "projectName": {
  167. "location": "uri",
  168. "locationName": "projectName"
  169. }
  170. }
  171. },
  172. "output": {
  173. "type": "structure",
  174. "required": [
  175. "placement"
  176. ],
  177. "members": {
  178. "placement": {
  179. "type": "structure",
  180. "required": [
  181. "projectName",
  182. "placementName",
  183. "attributes",
  184. "createdDate",
  185. "updatedDate"
  186. ],
  187. "members": {
  188. "projectName": {},
  189. "placementName": {},
  190. "attributes": {
  191. "shape": "S8"
  192. },
  193. "createdDate": {
  194. "type": "timestamp"
  195. },
  196. "updatedDate": {
  197. "type": "timestamp"
  198. }
  199. }
  200. }
  201. }
  202. }
  203. },
  204. "DescribeProject": {
  205. "http": {
  206. "method": "GET",
  207. "requestUri": "/projects/{projectName}"
  208. },
  209. "input": {
  210. "type": "structure",
  211. "required": [
  212. "projectName"
  213. ],
  214. "members": {
  215. "projectName": {
  216. "location": "uri",
  217. "locationName": "projectName"
  218. }
  219. }
  220. },
  221. "output": {
  222. "type": "structure",
  223. "required": [
  224. "project"
  225. ],
  226. "members": {
  227. "project": {
  228. "type": "structure",
  229. "required": [
  230. "projectName",
  231. "createdDate",
  232. "updatedDate"
  233. ],
  234. "members": {
  235. "arn": {},
  236. "projectName": {},
  237. "description": {},
  238. "createdDate": {
  239. "type": "timestamp"
  240. },
  241. "updatedDate": {
  242. "type": "timestamp"
  243. },
  244. "placementTemplate": {
  245. "shape": "Se"
  246. },
  247. "tags": {
  248. "shape": "Sn"
  249. }
  250. }
  251. }
  252. }
  253. }
  254. },
  255. "DisassociateDeviceFromPlacement": {
  256. "http": {
  257. "method": "DELETE",
  258. "requestUri": "/projects/{projectName}/placements/{placementName}/devices/{deviceTemplateName}"
  259. },
  260. "input": {
  261. "type": "structure",
  262. "required": [
  263. "projectName",
  264. "placementName",
  265. "deviceTemplateName"
  266. ],
  267. "members": {
  268. "projectName": {
  269. "location": "uri",
  270. "locationName": "projectName"
  271. },
  272. "placementName": {
  273. "location": "uri",
  274. "locationName": "placementName"
  275. },
  276. "deviceTemplateName": {
  277. "location": "uri",
  278. "locationName": "deviceTemplateName"
  279. }
  280. }
  281. },
  282. "output": {
  283. "type": "structure",
  284. "members": {}
  285. }
  286. },
  287. "GetDevicesInPlacement": {
  288. "http": {
  289. "method": "GET",
  290. "requestUri": "/projects/{projectName}/placements/{placementName}/devices"
  291. },
  292. "input": {
  293. "type": "structure",
  294. "required": [
  295. "projectName",
  296. "placementName"
  297. ],
  298. "members": {
  299. "projectName": {
  300. "location": "uri",
  301. "locationName": "projectName"
  302. },
  303. "placementName": {
  304. "location": "uri",
  305. "locationName": "placementName"
  306. }
  307. }
  308. },
  309. "output": {
  310. "type": "structure",
  311. "required": [
  312. "devices"
  313. ],
  314. "members": {
  315. "devices": {
  316. "type": "map",
  317. "key": {},
  318. "value": {}
  319. }
  320. }
  321. }
  322. },
  323. "ListPlacements": {
  324. "http": {
  325. "method": "GET",
  326. "requestUri": "/projects/{projectName}/placements"
  327. },
  328. "input": {
  329. "type": "structure",
  330. "required": [
  331. "projectName"
  332. ],
  333. "members": {
  334. "projectName": {
  335. "location": "uri",
  336. "locationName": "projectName"
  337. },
  338. "nextToken": {
  339. "location": "querystring",
  340. "locationName": "nextToken"
  341. },
  342. "maxResults": {
  343. "location": "querystring",
  344. "locationName": "maxResults",
  345. "type": "integer"
  346. }
  347. }
  348. },
  349. "output": {
  350. "type": "structure",
  351. "required": [
  352. "placements"
  353. ],
  354. "members": {
  355. "placements": {
  356. "type": "list",
  357. "member": {
  358. "type": "structure",
  359. "required": [
  360. "projectName",
  361. "placementName",
  362. "createdDate",
  363. "updatedDate"
  364. ],
  365. "members": {
  366. "projectName": {},
  367. "placementName": {},
  368. "createdDate": {
  369. "type": "timestamp"
  370. },
  371. "updatedDate": {
  372. "type": "timestamp"
  373. }
  374. }
  375. }
  376. },
  377. "nextToken": {}
  378. }
  379. }
  380. },
  381. "ListProjects": {
  382. "http": {
  383. "method": "GET",
  384. "requestUri": "/projects"
  385. },
  386. "input": {
  387. "type": "structure",
  388. "members": {
  389. "nextToken": {
  390. "location": "querystring",
  391. "locationName": "nextToken"
  392. },
  393. "maxResults": {
  394. "location": "querystring",
  395. "locationName": "maxResults",
  396. "type": "integer"
  397. }
  398. }
  399. },
  400. "output": {
  401. "type": "structure",
  402. "required": [
  403. "projects"
  404. ],
  405. "members": {
  406. "projects": {
  407. "type": "list",
  408. "member": {
  409. "type": "structure",
  410. "required": [
  411. "projectName",
  412. "createdDate",
  413. "updatedDate"
  414. ],
  415. "members": {
  416. "arn": {},
  417. "projectName": {},
  418. "createdDate": {
  419. "type": "timestamp"
  420. },
  421. "updatedDate": {
  422. "type": "timestamp"
  423. },
  424. "tags": {
  425. "shape": "Sn"
  426. }
  427. }
  428. }
  429. },
  430. "nextToken": {}
  431. }
  432. }
  433. },
  434. "ListTagsForResource": {
  435. "http": {
  436. "method": "GET",
  437. "requestUri": "/tags/{resourceArn}"
  438. },
  439. "input": {
  440. "type": "structure",
  441. "required": [
  442. "resourceArn"
  443. ],
  444. "members": {
  445. "resourceArn": {
  446. "location": "uri",
  447. "locationName": "resourceArn"
  448. }
  449. }
  450. },
  451. "output": {
  452. "type": "structure",
  453. "members": {
  454. "tags": {
  455. "shape": "Sn"
  456. }
  457. }
  458. }
  459. },
  460. "TagResource": {
  461. "http": {
  462. "requestUri": "/tags/{resourceArn}"
  463. },
  464. "input": {
  465. "type": "structure",
  466. "required": [
  467. "resourceArn",
  468. "tags"
  469. ],
  470. "members": {
  471. "resourceArn": {
  472. "location": "uri",
  473. "locationName": "resourceArn"
  474. },
  475. "tags": {
  476. "shape": "Sn"
  477. }
  478. }
  479. },
  480. "output": {
  481. "type": "structure",
  482. "members": {}
  483. }
  484. },
  485. "UntagResource": {
  486. "http": {
  487. "method": "DELETE",
  488. "requestUri": "/tags/{resourceArn}"
  489. },
  490. "input": {
  491. "type": "structure",
  492. "required": [
  493. "resourceArn",
  494. "tagKeys"
  495. ],
  496. "members": {
  497. "resourceArn": {
  498. "location": "uri",
  499. "locationName": "resourceArn"
  500. },
  501. "tagKeys": {
  502. "location": "querystring",
  503. "locationName": "tagKeys",
  504. "type": "list",
  505. "member": {}
  506. }
  507. }
  508. },
  509. "output": {
  510. "type": "structure",
  511. "members": {}
  512. }
  513. },
  514. "UpdatePlacement": {
  515. "http": {
  516. "method": "PUT",
  517. "requestUri": "/projects/{projectName}/placements/{placementName}"
  518. },
  519. "input": {
  520. "type": "structure",
  521. "required": [
  522. "placementName",
  523. "projectName"
  524. ],
  525. "members": {
  526. "placementName": {
  527. "location": "uri",
  528. "locationName": "placementName"
  529. },
  530. "projectName": {
  531. "location": "uri",
  532. "locationName": "projectName"
  533. },
  534. "attributes": {
  535. "shape": "S8"
  536. }
  537. }
  538. },
  539. "output": {
  540. "type": "structure",
  541. "members": {}
  542. }
  543. },
  544. "UpdateProject": {
  545. "http": {
  546. "method": "PUT",
  547. "requestUri": "/projects/{projectName}"
  548. },
  549. "input": {
  550. "type": "structure",
  551. "required": [
  552. "projectName"
  553. ],
  554. "members": {
  555. "projectName": {
  556. "location": "uri",
  557. "locationName": "projectName"
  558. },
  559. "description": {},
  560. "placementTemplate": {
  561. "shape": "Se"
  562. }
  563. }
  564. },
  565. "output": {
  566. "type": "structure",
  567. "members": {}
  568. }
  569. }
  570. },
  571. "shapes": {
  572. "S8": {
  573. "type": "map",
  574. "key": {},
  575. "value": {}
  576. },
  577. "Se": {
  578. "type": "structure",
  579. "members": {
  580. "defaultAttributes": {
  581. "type": "map",
  582. "key": {},
  583. "value": {}
  584. },
  585. "deviceTemplates": {
  586. "type": "map",
  587. "key": {},
  588. "value": {
  589. "type": "structure",
  590. "members": {
  591. "deviceType": {},
  592. "callbackOverrides": {
  593. "type": "map",
  594. "key": {},
  595. "value": {}
  596. }
  597. }
  598. }
  599. }
  600. }
  601. },
  602. "Sn": {
  603. "type": "map",
  604. "key": {},
  605. "value": {}
  606. }
  607. }
  608. }