trustedadvisor-2022-09-15.min.json 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855
  1. {
  2. "version": "2.0",
  3. "metadata": {
  4. "apiVersion": "2022-09-15",
  5. "endpointPrefix": "trustedadvisor",
  6. "jsonVersion": "1.1",
  7. "protocol": "rest-json",
  8. "serviceFullName": "TrustedAdvisor Public API",
  9. "serviceId": "TrustedAdvisor",
  10. "signatureVersion": "v4",
  11. "signingName": "trustedadvisor",
  12. "uid": "trustedadvisor-2022-09-15"
  13. },
  14. "operations": {
  15. "BatchUpdateRecommendationResourceExclusion": {
  16. "http": {
  17. "method": "PUT",
  18. "requestUri": "/v1/batch-update-recommendation-resource-exclusion",
  19. "responseCode": 200
  20. },
  21. "input": {
  22. "type": "structure",
  23. "required": [
  24. "recommendationResourceExclusions"
  25. ],
  26. "members": {
  27. "recommendationResourceExclusions": {
  28. "type": "list",
  29. "member": {
  30. "type": "structure",
  31. "required": [
  32. "arn",
  33. "isExcluded"
  34. ],
  35. "members": {
  36. "arn": {},
  37. "isExcluded": {
  38. "type": "boolean"
  39. }
  40. }
  41. }
  42. }
  43. }
  44. },
  45. "output": {
  46. "type": "structure",
  47. "required": [
  48. "batchUpdateRecommendationResourceExclusionErrors"
  49. ],
  50. "members": {
  51. "batchUpdateRecommendationResourceExclusionErrors": {
  52. "type": "list",
  53. "member": {
  54. "type": "structure",
  55. "members": {
  56. "arn": {},
  57. "errorCode": {},
  58. "errorMessage": {}
  59. }
  60. }
  61. }
  62. }
  63. },
  64. "idempotent": true
  65. },
  66. "GetOrganizationRecommendation": {
  67. "http": {
  68. "method": "GET",
  69. "requestUri": "/v1/organization-recommendations/{organizationRecommendationIdentifier}",
  70. "responseCode": 200
  71. },
  72. "input": {
  73. "type": "structure",
  74. "required": [
  75. "organizationRecommendationIdentifier"
  76. ],
  77. "members": {
  78. "organizationRecommendationIdentifier": {
  79. "location": "uri",
  80. "locationName": "organizationRecommendationIdentifier"
  81. }
  82. }
  83. },
  84. "output": {
  85. "type": "structure",
  86. "members": {
  87. "organizationRecommendation": {
  88. "type": "structure",
  89. "required": [
  90. "arn",
  91. "description",
  92. "id",
  93. "name",
  94. "pillars",
  95. "resourcesAggregates",
  96. "source",
  97. "status",
  98. "type"
  99. ],
  100. "members": {
  101. "arn": {},
  102. "awsServices": {
  103. "shape": "Sf"
  104. },
  105. "checkArn": {},
  106. "createdAt": {
  107. "shape": "Sh"
  108. },
  109. "createdBy": {},
  110. "description": {},
  111. "id": {},
  112. "lastUpdatedAt": {
  113. "shape": "Sh"
  114. },
  115. "lifecycleStage": {},
  116. "name": {},
  117. "pillarSpecificAggregates": {
  118. "shape": "Sj"
  119. },
  120. "pillars": {
  121. "shape": "Sm"
  122. },
  123. "resolvedAt": {
  124. "shape": "Sh"
  125. },
  126. "resourcesAggregates": {
  127. "shape": "So"
  128. },
  129. "source": {},
  130. "status": {},
  131. "type": {},
  132. "updateReason": {
  133. "shape": "St"
  134. },
  135. "updateReasonCode": {},
  136. "updatedOnBehalfOf": {},
  137. "updatedOnBehalfOfJobTitle": {}
  138. }
  139. }
  140. }
  141. }
  142. },
  143. "GetRecommendation": {
  144. "http": {
  145. "method": "GET",
  146. "requestUri": "/v1/recommendations/{recommendationIdentifier}",
  147. "responseCode": 200
  148. },
  149. "input": {
  150. "type": "structure",
  151. "required": [
  152. "recommendationIdentifier"
  153. ],
  154. "members": {
  155. "recommendationIdentifier": {
  156. "location": "uri",
  157. "locationName": "recommendationIdentifier"
  158. }
  159. }
  160. },
  161. "output": {
  162. "type": "structure",
  163. "members": {
  164. "recommendation": {
  165. "type": "structure",
  166. "required": [
  167. "arn",
  168. "description",
  169. "id",
  170. "name",
  171. "pillars",
  172. "resourcesAggregates",
  173. "source",
  174. "status",
  175. "type"
  176. ],
  177. "members": {
  178. "arn": {},
  179. "awsServices": {
  180. "shape": "Sf"
  181. },
  182. "checkArn": {},
  183. "createdAt": {
  184. "shape": "Sh"
  185. },
  186. "createdBy": {},
  187. "description": {},
  188. "id": {},
  189. "lastUpdatedAt": {
  190. "shape": "Sh"
  191. },
  192. "lifecycleStage": {},
  193. "name": {},
  194. "pillarSpecificAggregates": {
  195. "shape": "Sj"
  196. },
  197. "pillars": {
  198. "shape": "Sm"
  199. },
  200. "resolvedAt": {
  201. "shape": "Sh"
  202. },
  203. "resourcesAggregates": {
  204. "shape": "So"
  205. },
  206. "source": {},
  207. "status": {},
  208. "type": {},
  209. "updateReason": {
  210. "shape": "St"
  211. },
  212. "updateReasonCode": {},
  213. "updatedOnBehalfOf": {},
  214. "updatedOnBehalfOfJobTitle": {}
  215. }
  216. }
  217. }
  218. }
  219. },
  220. "ListChecks": {
  221. "http": {
  222. "method": "GET",
  223. "requestUri": "/v1/checks",
  224. "responseCode": 200
  225. },
  226. "input": {
  227. "type": "structure",
  228. "members": {
  229. "awsService": {
  230. "location": "querystring",
  231. "locationName": "awsService"
  232. },
  233. "language": {
  234. "location": "querystring",
  235. "locationName": "language"
  236. },
  237. "maxResults": {
  238. "location": "querystring",
  239. "locationName": "maxResults",
  240. "type": "integer"
  241. },
  242. "nextToken": {
  243. "location": "querystring",
  244. "locationName": "nextToken"
  245. },
  246. "pillar": {
  247. "location": "querystring",
  248. "locationName": "pillar"
  249. },
  250. "source": {
  251. "location": "querystring",
  252. "locationName": "source"
  253. }
  254. }
  255. },
  256. "output": {
  257. "type": "structure",
  258. "required": [
  259. "checkSummaries"
  260. ],
  261. "members": {
  262. "checkSummaries": {
  263. "type": "list",
  264. "member": {
  265. "type": "structure",
  266. "required": [
  267. "arn",
  268. "awsServices",
  269. "description",
  270. "id",
  271. "metadata",
  272. "name",
  273. "pillars",
  274. "source"
  275. ],
  276. "members": {
  277. "arn": {},
  278. "awsServices": {
  279. "shape": "Sf"
  280. },
  281. "description": {},
  282. "id": {},
  283. "metadata": {
  284. "shape": "S18"
  285. },
  286. "name": {},
  287. "pillars": {
  288. "shape": "Sm"
  289. },
  290. "source": {}
  291. }
  292. }
  293. },
  294. "nextToken": {}
  295. }
  296. }
  297. },
  298. "ListOrganizationRecommendationAccounts": {
  299. "http": {
  300. "method": "GET",
  301. "requestUri": "/v1/organization-recommendations/{organizationRecommendationIdentifier}/accounts",
  302. "responseCode": 200
  303. },
  304. "input": {
  305. "type": "structure",
  306. "required": [
  307. "organizationRecommendationIdentifier"
  308. ],
  309. "members": {
  310. "affectedAccountId": {
  311. "location": "querystring",
  312. "locationName": "affectedAccountId"
  313. },
  314. "maxResults": {
  315. "location": "querystring",
  316. "locationName": "maxResults",
  317. "type": "integer"
  318. },
  319. "nextToken": {
  320. "location": "querystring",
  321. "locationName": "nextToken"
  322. },
  323. "organizationRecommendationIdentifier": {
  324. "location": "uri",
  325. "locationName": "organizationRecommendationIdentifier"
  326. }
  327. }
  328. },
  329. "output": {
  330. "type": "structure",
  331. "required": [
  332. "accountRecommendationLifecycleSummaries"
  333. ],
  334. "members": {
  335. "accountRecommendationLifecycleSummaries": {
  336. "type": "list",
  337. "member": {
  338. "type": "structure",
  339. "members": {
  340. "accountId": {},
  341. "accountRecommendationArn": {},
  342. "lastUpdatedAt": {
  343. "shape": "Sh"
  344. },
  345. "lifecycleStage": {},
  346. "updateReason": {
  347. "shape": "St"
  348. },
  349. "updateReasonCode": {},
  350. "updatedOnBehalfOf": {},
  351. "updatedOnBehalfOfJobTitle": {}
  352. }
  353. }
  354. },
  355. "nextToken": {}
  356. }
  357. }
  358. },
  359. "ListOrganizationRecommendationResources": {
  360. "http": {
  361. "method": "GET",
  362. "requestUri": "/v1/organization-recommendations/{organizationRecommendationIdentifier}/resources",
  363. "responseCode": 200
  364. },
  365. "input": {
  366. "type": "structure",
  367. "required": [
  368. "organizationRecommendationIdentifier"
  369. ],
  370. "members": {
  371. "affectedAccountId": {
  372. "location": "querystring",
  373. "locationName": "affectedAccountId"
  374. },
  375. "exclusionStatus": {
  376. "location": "querystring",
  377. "locationName": "exclusionStatus"
  378. },
  379. "maxResults": {
  380. "location": "querystring",
  381. "locationName": "maxResults",
  382. "type": "integer"
  383. },
  384. "nextToken": {
  385. "location": "querystring",
  386. "locationName": "nextToken"
  387. },
  388. "organizationRecommendationIdentifier": {
  389. "location": "uri",
  390. "locationName": "organizationRecommendationIdentifier"
  391. },
  392. "regionCode": {
  393. "location": "querystring",
  394. "locationName": "regionCode"
  395. },
  396. "status": {
  397. "location": "querystring",
  398. "locationName": "status"
  399. }
  400. }
  401. },
  402. "output": {
  403. "type": "structure",
  404. "required": [
  405. "organizationRecommendationResourceSummaries"
  406. ],
  407. "members": {
  408. "nextToken": {},
  409. "organizationRecommendationResourceSummaries": {
  410. "type": "list",
  411. "member": {
  412. "type": "structure",
  413. "required": [
  414. "arn",
  415. "awsResourceId",
  416. "id",
  417. "lastUpdatedAt",
  418. "metadata",
  419. "recommendationArn",
  420. "regionCode",
  421. "status"
  422. ],
  423. "members": {
  424. "accountId": {},
  425. "arn": {},
  426. "awsResourceId": {},
  427. "exclusionStatus": {},
  428. "id": {},
  429. "lastUpdatedAt": {
  430. "shape": "Sh"
  431. },
  432. "metadata": {
  433. "shape": "S18"
  434. },
  435. "recommendationArn": {},
  436. "regionCode": {},
  437. "status": {}
  438. }
  439. }
  440. }
  441. }
  442. }
  443. },
  444. "ListOrganizationRecommendations": {
  445. "http": {
  446. "method": "GET",
  447. "requestUri": "/v1/organization-recommendations",
  448. "responseCode": 200
  449. },
  450. "input": {
  451. "type": "structure",
  452. "members": {
  453. "afterLastUpdatedAt": {
  454. "location": "querystring",
  455. "locationName": "afterLastUpdatedAt",
  456. "type": "timestamp"
  457. },
  458. "awsService": {
  459. "location": "querystring",
  460. "locationName": "awsService"
  461. },
  462. "beforeLastUpdatedAt": {
  463. "location": "querystring",
  464. "locationName": "beforeLastUpdatedAt",
  465. "type": "timestamp"
  466. },
  467. "checkIdentifier": {
  468. "location": "querystring",
  469. "locationName": "checkIdentifier"
  470. },
  471. "maxResults": {
  472. "location": "querystring",
  473. "locationName": "maxResults",
  474. "type": "integer"
  475. },
  476. "nextToken": {
  477. "location": "querystring",
  478. "locationName": "nextToken"
  479. },
  480. "pillar": {
  481. "location": "querystring",
  482. "locationName": "pillar"
  483. },
  484. "source": {
  485. "location": "querystring",
  486. "locationName": "source"
  487. },
  488. "status": {
  489. "location": "querystring",
  490. "locationName": "status"
  491. },
  492. "type": {
  493. "location": "querystring",
  494. "locationName": "type"
  495. }
  496. }
  497. },
  498. "output": {
  499. "type": "structure",
  500. "required": [
  501. "organizationRecommendationSummaries"
  502. ],
  503. "members": {
  504. "nextToken": {},
  505. "organizationRecommendationSummaries": {
  506. "type": "list",
  507. "member": {
  508. "type": "structure",
  509. "required": [
  510. "arn",
  511. "id",
  512. "name",
  513. "pillars",
  514. "resourcesAggregates",
  515. "source",
  516. "status",
  517. "type"
  518. ],
  519. "members": {
  520. "arn": {},
  521. "awsServices": {
  522. "shape": "Sf"
  523. },
  524. "checkArn": {},
  525. "createdAt": {
  526. "shape": "Sh"
  527. },
  528. "id": {},
  529. "lastUpdatedAt": {
  530. "shape": "Sh"
  531. },
  532. "lifecycleStage": {},
  533. "name": {},
  534. "pillarSpecificAggregates": {
  535. "shape": "Sj"
  536. },
  537. "pillars": {
  538. "shape": "Sm"
  539. },
  540. "resourcesAggregates": {
  541. "shape": "So"
  542. },
  543. "source": {},
  544. "status": {},
  545. "type": {}
  546. }
  547. }
  548. }
  549. }
  550. }
  551. },
  552. "ListRecommendationResources": {
  553. "http": {
  554. "method": "GET",
  555. "requestUri": "/v1/recommendations/{recommendationIdentifier}/resources",
  556. "responseCode": 200
  557. },
  558. "input": {
  559. "type": "structure",
  560. "required": [
  561. "recommendationIdentifier"
  562. ],
  563. "members": {
  564. "exclusionStatus": {
  565. "location": "querystring",
  566. "locationName": "exclusionStatus"
  567. },
  568. "maxResults": {
  569. "location": "querystring",
  570. "locationName": "maxResults",
  571. "type": "integer"
  572. },
  573. "nextToken": {
  574. "location": "querystring",
  575. "locationName": "nextToken"
  576. },
  577. "recommendationIdentifier": {
  578. "location": "uri",
  579. "locationName": "recommendationIdentifier"
  580. },
  581. "regionCode": {
  582. "location": "querystring",
  583. "locationName": "regionCode"
  584. },
  585. "status": {
  586. "location": "querystring",
  587. "locationName": "status"
  588. }
  589. }
  590. },
  591. "output": {
  592. "type": "structure",
  593. "required": [
  594. "recommendationResourceSummaries"
  595. ],
  596. "members": {
  597. "nextToken": {},
  598. "recommendationResourceSummaries": {
  599. "type": "list",
  600. "member": {
  601. "type": "structure",
  602. "required": [
  603. "arn",
  604. "awsResourceId",
  605. "id",
  606. "lastUpdatedAt",
  607. "metadata",
  608. "recommendationArn",
  609. "regionCode",
  610. "status"
  611. ],
  612. "members": {
  613. "arn": {},
  614. "awsResourceId": {},
  615. "exclusionStatus": {},
  616. "id": {},
  617. "lastUpdatedAt": {
  618. "shape": "Sh"
  619. },
  620. "metadata": {
  621. "shape": "S18"
  622. },
  623. "recommendationArn": {},
  624. "regionCode": {},
  625. "status": {}
  626. }
  627. }
  628. }
  629. }
  630. }
  631. },
  632. "ListRecommendations": {
  633. "http": {
  634. "method": "GET",
  635. "requestUri": "/v1/recommendations",
  636. "responseCode": 200
  637. },
  638. "input": {
  639. "type": "structure",
  640. "members": {
  641. "afterLastUpdatedAt": {
  642. "location": "querystring",
  643. "locationName": "afterLastUpdatedAt",
  644. "type": "timestamp"
  645. },
  646. "awsService": {
  647. "location": "querystring",
  648. "locationName": "awsService"
  649. },
  650. "beforeLastUpdatedAt": {
  651. "location": "querystring",
  652. "locationName": "beforeLastUpdatedAt",
  653. "type": "timestamp"
  654. },
  655. "checkIdentifier": {
  656. "location": "querystring",
  657. "locationName": "checkIdentifier"
  658. },
  659. "maxResults": {
  660. "location": "querystring",
  661. "locationName": "maxResults",
  662. "type": "integer"
  663. },
  664. "nextToken": {
  665. "location": "querystring",
  666. "locationName": "nextToken"
  667. },
  668. "pillar": {
  669. "location": "querystring",
  670. "locationName": "pillar"
  671. },
  672. "source": {
  673. "location": "querystring",
  674. "locationName": "source"
  675. },
  676. "status": {
  677. "location": "querystring",
  678. "locationName": "status"
  679. },
  680. "type": {
  681. "location": "querystring",
  682. "locationName": "type"
  683. }
  684. }
  685. },
  686. "output": {
  687. "type": "structure",
  688. "required": [
  689. "recommendationSummaries"
  690. ],
  691. "members": {
  692. "nextToken": {},
  693. "recommendationSummaries": {
  694. "type": "list",
  695. "member": {
  696. "type": "structure",
  697. "required": [
  698. "arn",
  699. "id",
  700. "name",
  701. "pillars",
  702. "resourcesAggregates",
  703. "source",
  704. "status",
  705. "type"
  706. ],
  707. "members": {
  708. "arn": {},
  709. "awsServices": {
  710. "shape": "Sf"
  711. },
  712. "checkArn": {},
  713. "createdAt": {
  714. "shape": "Sh"
  715. },
  716. "id": {},
  717. "lastUpdatedAt": {
  718. "shape": "Sh"
  719. },
  720. "lifecycleStage": {},
  721. "name": {},
  722. "pillarSpecificAggregates": {
  723. "shape": "Sj"
  724. },
  725. "pillars": {
  726. "shape": "Sm"
  727. },
  728. "resourcesAggregates": {
  729. "shape": "So"
  730. },
  731. "source": {},
  732. "status": {},
  733. "type": {}
  734. }
  735. }
  736. }
  737. }
  738. }
  739. },
  740. "UpdateOrganizationRecommendationLifecycle": {
  741. "http": {
  742. "method": "PUT",
  743. "requestUri": "/v1/organization-recommendations/{organizationRecommendationIdentifier}/lifecycle",
  744. "responseCode": 200
  745. },
  746. "input": {
  747. "type": "structure",
  748. "required": [
  749. "lifecycleStage",
  750. "organizationRecommendationIdentifier"
  751. ],
  752. "members": {
  753. "lifecycleStage": {},
  754. "organizationRecommendationIdentifier": {
  755. "location": "uri",
  756. "locationName": "organizationRecommendationIdentifier"
  757. },
  758. "updateReason": {
  759. "shape": "St"
  760. },
  761. "updateReasonCode": {}
  762. }
  763. },
  764. "idempotent": true
  765. },
  766. "UpdateRecommendationLifecycle": {
  767. "http": {
  768. "method": "PUT",
  769. "requestUri": "/v1/recommendations/{recommendationIdentifier}/lifecycle",
  770. "responseCode": 200
  771. },
  772. "input": {
  773. "type": "structure",
  774. "required": [
  775. "lifecycleStage",
  776. "recommendationIdentifier"
  777. ],
  778. "members": {
  779. "lifecycleStage": {},
  780. "recommendationIdentifier": {
  781. "location": "uri",
  782. "locationName": "recommendationIdentifier"
  783. },
  784. "updateReason": {
  785. "shape": "St"
  786. },
  787. "updateReasonCode": {}
  788. }
  789. },
  790. "idempotent": true
  791. }
  792. },
  793. "shapes": {
  794. "Sf": {
  795. "type": "list",
  796. "member": {}
  797. },
  798. "Sh": {
  799. "type": "timestamp",
  800. "timestampFormat": "iso8601"
  801. },
  802. "Sj": {
  803. "type": "structure",
  804. "members": {
  805. "costOptimizing": {
  806. "type": "structure",
  807. "required": [
  808. "estimatedMonthlySavings",
  809. "estimatedPercentMonthlySavings"
  810. ],
  811. "members": {
  812. "estimatedMonthlySavings": {
  813. "type": "double"
  814. },
  815. "estimatedPercentMonthlySavings": {
  816. "type": "double"
  817. }
  818. }
  819. }
  820. }
  821. },
  822. "Sm": {
  823. "type": "list",
  824. "member": {}
  825. },
  826. "So": {
  827. "type": "structure",
  828. "required": [
  829. "errorCount",
  830. "okCount",
  831. "warningCount"
  832. ],
  833. "members": {
  834. "errorCount": {
  835. "type": "long"
  836. },
  837. "okCount": {
  838. "type": "long"
  839. },
  840. "warningCount": {
  841. "type": "long"
  842. }
  843. }
  844. },
  845. "St": {
  846. "type": "string",
  847. "sensitive": true
  848. },
  849. "S18": {
  850. "type": "map",
  851. "key": {},
  852. "value": {}
  853. }
  854. }
  855. }