cost-optimization-hub-2022-07-26.min.json 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760
  1. {
  2. "version": "2.0",
  3. "metadata": {
  4. "apiVersion": "2022-07-26",
  5. "endpointPrefix": "cost-optimization-hub",
  6. "jsonVersion": "1.0",
  7. "protocol": "json",
  8. "serviceFullName": "Cost Optimization Hub",
  9. "serviceId": "Cost Optimization Hub",
  10. "signatureVersion": "v4",
  11. "signingName": "cost-optimization-hub",
  12. "targetPrefix": "CostOptimizationHubService",
  13. "uid": "cost-optimization-hub-2022-07-26"
  14. },
  15. "operations": {
  16. "GetPreferences": {
  17. "input": {
  18. "type": "structure",
  19. "members": {}
  20. },
  21. "output": {
  22. "type": "structure",
  23. "members": {
  24. "memberAccountDiscountVisibility": {},
  25. "savingsEstimationMode": {}
  26. }
  27. }
  28. },
  29. "GetRecommendation": {
  30. "input": {
  31. "type": "structure",
  32. "required": [
  33. "recommendationId"
  34. ],
  35. "members": {
  36. "recommendationId": {}
  37. }
  38. },
  39. "output": {
  40. "type": "structure",
  41. "members": {
  42. "accountId": {},
  43. "actionType": {},
  44. "costCalculationLookbackPeriodInDays": {
  45. "type": "integer"
  46. },
  47. "currencyCode": {},
  48. "currentResourceDetails": {
  49. "shape": "Sa"
  50. },
  51. "currentResourceType": {},
  52. "estimatedMonthlyCost": {
  53. "type": "double"
  54. },
  55. "estimatedMonthlySavings": {
  56. "type": "double"
  57. },
  58. "estimatedSavingsOverCostCalculationLookbackPeriod": {
  59. "type": "double"
  60. },
  61. "estimatedSavingsPercentage": {
  62. "type": "double"
  63. },
  64. "implementationEffort": {},
  65. "lastRefreshTimestamp": {
  66. "type": "timestamp"
  67. },
  68. "recommendationId": {},
  69. "recommendationLookbackPeriodInDays": {
  70. "type": "integer"
  71. },
  72. "recommendedResourceDetails": {
  73. "shape": "Sa"
  74. },
  75. "recommendedResourceType": {},
  76. "region": {},
  77. "resourceArn": {},
  78. "resourceId": {},
  79. "restartNeeded": {
  80. "type": "boolean"
  81. },
  82. "rollbackPossible": {
  83. "type": "boolean"
  84. },
  85. "source": {},
  86. "tags": {
  87. "shape": "S1k"
  88. }
  89. }
  90. }
  91. },
  92. "ListEnrollmentStatuses": {
  93. "input": {
  94. "type": "structure",
  95. "members": {
  96. "accountId": {},
  97. "includeOrganizationInfo": {
  98. "type": "boolean"
  99. },
  100. "maxResults": {
  101. "type": "integer"
  102. },
  103. "nextToken": {}
  104. }
  105. },
  106. "output": {
  107. "type": "structure",
  108. "members": {
  109. "includeMemberAccounts": {
  110. "type": "boolean"
  111. },
  112. "items": {
  113. "type": "list",
  114. "member": {
  115. "type": "structure",
  116. "members": {
  117. "accountId": {},
  118. "createdTimestamp": {
  119. "type": "timestamp"
  120. },
  121. "lastUpdatedTimestamp": {
  122. "type": "timestamp"
  123. },
  124. "status": {}
  125. }
  126. }
  127. },
  128. "nextToken": {}
  129. }
  130. }
  131. },
  132. "ListRecommendationSummaries": {
  133. "input": {
  134. "type": "structure",
  135. "required": [
  136. "groupBy"
  137. ],
  138. "members": {
  139. "filter": {
  140. "shape": "S1w"
  141. },
  142. "groupBy": {},
  143. "maxResults": {
  144. "type": "integer"
  145. },
  146. "nextToken": {}
  147. }
  148. },
  149. "output": {
  150. "type": "structure",
  151. "members": {
  152. "currencyCode": {},
  153. "estimatedTotalDedupedSavings": {
  154. "type": "double"
  155. },
  156. "groupBy": {},
  157. "items": {
  158. "type": "list",
  159. "member": {
  160. "type": "structure",
  161. "members": {
  162. "estimatedMonthlySavings": {
  163. "type": "double"
  164. },
  165. "group": {},
  166. "recommendationCount": {
  167. "type": "integer"
  168. }
  169. }
  170. }
  171. },
  172. "nextToken": {}
  173. }
  174. }
  175. },
  176. "ListRecommendations": {
  177. "input": {
  178. "type": "structure",
  179. "members": {
  180. "filter": {
  181. "shape": "S1w"
  182. },
  183. "includeAllRecommendations": {
  184. "type": "boolean"
  185. },
  186. "maxResults": {
  187. "type": "integer"
  188. },
  189. "nextToken": {},
  190. "orderBy": {
  191. "type": "structure",
  192. "members": {
  193. "dimension": {},
  194. "order": {}
  195. }
  196. }
  197. }
  198. },
  199. "output": {
  200. "type": "structure",
  201. "members": {
  202. "items": {
  203. "type": "list",
  204. "member": {
  205. "type": "structure",
  206. "members": {
  207. "accountId": {},
  208. "actionType": {},
  209. "currencyCode": {},
  210. "currentResourceSummary": {},
  211. "currentResourceType": {},
  212. "estimatedMonthlyCost": {
  213. "type": "double"
  214. },
  215. "estimatedMonthlySavings": {
  216. "type": "double"
  217. },
  218. "estimatedSavingsPercentage": {
  219. "type": "double"
  220. },
  221. "implementationEffort": {},
  222. "lastRefreshTimestamp": {
  223. "type": "timestamp"
  224. },
  225. "recommendationId": {},
  226. "recommendationLookbackPeriodInDays": {
  227. "type": "integer"
  228. },
  229. "recommendedResourceSummary": {},
  230. "recommendedResourceType": {},
  231. "region": {},
  232. "resourceArn": {},
  233. "resourceId": {},
  234. "restartNeeded": {
  235. "type": "boolean"
  236. },
  237. "rollbackPossible": {
  238. "type": "boolean"
  239. },
  240. "source": {},
  241. "tags": {
  242. "shape": "S1k"
  243. }
  244. }
  245. }
  246. },
  247. "nextToken": {}
  248. }
  249. }
  250. },
  251. "UpdateEnrollmentStatus": {
  252. "input": {
  253. "type": "structure",
  254. "required": [
  255. "status"
  256. ],
  257. "members": {
  258. "includeMemberAccounts": {
  259. "type": "boolean"
  260. },
  261. "status": {}
  262. }
  263. },
  264. "output": {
  265. "type": "structure",
  266. "members": {
  267. "status": {}
  268. }
  269. }
  270. },
  271. "UpdatePreferences": {
  272. "input": {
  273. "type": "structure",
  274. "members": {
  275. "memberAccountDiscountVisibility": {},
  276. "savingsEstimationMode": {}
  277. }
  278. },
  279. "output": {
  280. "type": "structure",
  281. "members": {
  282. "memberAccountDiscountVisibility": {},
  283. "savingsEstimationMode": {}
  284. }
  285. }
  286. }
  287. },
  288. "shapes": {
  289. "Sa": {
  290. "type": "structure",
  291. "members": {
  292. "computeSavingsPlans": {
  293. "type": "structure",
  294. "members": {
  295. "configuration": {
  296. "type": "structure",
  297. "members": {
  298. "accountScope": {},
  299. "hourlyCommitment": {},
  300. "paymentOption": {},
  301. "term": {}
  302. }
  303. },
  304. "costCalculation": {
  305. "shape": "Sd"
  306. }
  307. }
  308. },
  309. "ebsVolume": {
  310. "type": "structure",
  311. "members": {
  312. "configuration": {
  313. "type": "structure",
  314. "members": {
  315. "attachmentState": {},
  316. "performance": {
  317. "type": "structure",
  318. "members": {
  319. "iops": {
  320. "type": "double"
  321. },
  322. "throughput": {
  323. "type": "double"
  324. }
  325. }
  326. },
  327. "storage": {
  328. "type": "structure",
  329. "members": {
  330. "sizeInGb": {
  331. "type": "double"
  332. },
  333. "type": {}
  334. }
  335. }
  336. }
  337. },
  338. "costCalculation": {
  339. "shape": "Sk"
  340. }
  341. }
  342. },
  343. "ec2AutoScalingGroup": {
  344. "type": "structure",
  345. "members": {
  346. "configuration": {
  347. "type": "structure",
  348. "members": {
  349. "instance": {
  350. "shape": "Sr"
  351. }
  352. }
  353. },
  354. "costCalculation": {
  355. "shape": "Sk"
  356. }
  357. }
  358. },
  359. "ec2Instance": {
  360. "type": "structure",
  361. "members": {
  362. "configuration": {
  363. "type": "structure",
  364. "members": {
  365. "instance": {
  366. "shape": "Sr"
  367. }
  368. }
  369. },
  370. "costCalculation": {
  371. "shape": "Sk"
  372. }
  373. }
  374. },
  375. "ec2InstanceSavingsPlans": {
  376. "type": "structure",
  377. "members": {
  378. "configuration": {
  379. "type": "structure",
  380. "members": {
  381. "accountScope": {},
  382. "hourlyCommitment": {},
  383. "instanceFamily": {},
  384. "paymentOption": {},
  385. "savingsPlansRegion": {},
  386. "term": {}
  387. }
  388. },
  389. "costCalculation": {
  390. "shape": "Sd"
  391. }
  392. }
  393. },
  394. "ec2ReservedInstances": {
  395. "type": "structure",
  396. "members": {
  397. "configuration": {
  398. "type": "structure",
  399. "members": {
  400. "accountScope": {},
  401. "currentGeneration": {},
  402. "instanceFamily": {},
  403. "instanceType": {},
  404. "monthlyRecurringCost": {},
  405. "normalizedUnitsToPurchase": {},
  406. "numberOfInstancesToPurchase": {},
  407. "offeringClass": {},
  408. "paymentOption": {},
  409. "platform": {},
  410. "reservedInstancesRegion": {},
  411. "service": {},
  412. "sizeFlexEligible": {
  413. "type": "boolean"
  414. },
  415. "tenancy": {},
  416. "term": {},
  417. "upfrontCost": {}
  418. }
  419. },
  420. "costCalculation": {
  421. "shape": "Sz"
  422. }
  423. }
  424. },
  425. "ecsService": {
  426. "type": "structure",
  427. "members": {
  428. "configuration": {
  429. "type": "structure",
  430. "members": {
  431. "compute": {
  432. "shape": "S13"
  433. }
  434. }
  435. },
  436. "costCalculation": {
  437. "shape": "Sk"
  438. }
  439. }
  440. },
  441. "elastiCacheReservedInstances": {
  442. "type": "structure",
  443. "members": {
  444. "configuration": {
  445. "type": "structure",
  446. "members": {
  447. "accountScope": {},
  448. "currentGeneration": {},
  449. "instanceFamily": {},
  450. "instanceType": {},
  451. "monthlyRecurringCost": {},
  452. "normalizedUnitsToPurchase": {},
  453. "numberOfInstancesToPurchase": {},
  454. "paymentOption": {},
  455. "reservedInstancesRegion": {},
  456. "service": {},
  457. "sizeFlexEligible": {
  458. "type": "boolean"
  459. },
  460. "term": {},
  461. "upfrontCost": {}
  462. }
  463. },
  464. "costCalculation": {
  465. "shape": "Sz"
  466. }
  467. }
  468. },
  469. "lambdaFunction": {
  470. "type": "structure",
  471. "members": {
  472. "configuration": {
  473. "type": "structure",
  474. "members": {
  475. "compute": {
  476. "shape": "S13"
  477. }
  478. }
  479. },
  480. "costCalculation": {
  481. "shape": "Sk"
  482. }
  483. }
  484. },
  485. "openSearchReservedInstances": {
  486. "type": "structure",
  487. "members": {
  488. "configuration": {
  489. "type": "structure",
  490. "members": {
  491. "accountScope": {},
  492. "currentGeneration": {},
  493. "instanceType": {},
  494. "monthlyRecurringCost": {},
  495. "normalizedUnitsToPurchase": {},
  496. "numberOfInstancesToPurchase": {},
  497. "paymentOption": {},
  498. "reservedInstancesRegion": {},
  499. "service": {},
  500. "sizeFlexEligible": {
  501. "type": "boolean"
  502. },
  503. "term": {},
  504. "upfrontCost": {}
  505. }
  506. },
  507. "costCalculation": {
  508. "shape": "Sz"
  509. }
  510. }
  511. },
  512. "rdsReservedInstances": {
  513. "type": "structure",
  514. "members": {
  515. "configuration": {
  516. "type": "structure",
  517. "members": {
  518. "accountScope": {},
  519. "currentGeneration": {},
  520. "databaseEdition": {},
  521. "databaseEngine": {},
  522. "deploymentOption": {},
  523. "instanceFamily": {},
  524. "instanceType": {},
  525. "licenseModel": {},
  526. "monthlyRecurringCost": {},
  527. "normalizedUnitsToPurchase": {},
  528. "numberOfInstancesToPurchase": {},
  529. "paymentOption": {},
  530. "reservedInstancesRegion": {},
  531. "service": {},
  532. "sizeFlexEligible": {
  533. "type": "boolean"
  534. },
  535. "term": {},
  536. "upfrontCost": {}
  537. }
  538. },
  539. "costCalculation": {
  540. "shape": "Sz"
  541. }
  542. }
  543. },
  544. "redshiftReservedInstances": {
  545. "type": "structure",
  546. "members": {
  547. "configuration": {
  548. "type": "structure",
  549. "members": {
  550. "accountScope": {},
  551. "currentGeneration": {},
  552. "instanceFamily": {},
  553. "instanceType": {},
  554. "monthlyRecurringCost": {},
  555. "normalizedUnitsToPurchase": {},
  556. "numberOfInstancesToPurchase": {},
  557. "paymentOption": {},
  558. "reservedInstancesRegion": {},
  559. "service": {},
  560. "sizeFlexEligible": {
  561. "type": "boolean"
  562. },
  563. "term": {},
  564. "upfrontCost": {}
  565. }
  566. },
  567. "costCalculation": {
  568. "shape": "Sz"
  569. }
  570. }
  571. },
  572. "sageMakerSavingsPlans": {
  573. "type": "structure",
  574. "members": {
  575. "configuration": {
  576. "type": "structure",
  577. "members": {
  578. "accountScope": {},
  579. "hourlyCommitment": {},
  580. "paymentOption": {},
  581. "term": {}
  582. }
  583. },
  584. "costCalculation": {
  585. "shape": "Sd"
  586. }
  587. }
  588. }
  589. },
  590. "union": true
  591. },
  592. "Sd": {
  593. "type": "structure",
  594. "members": {
  595. "pricing": {
  596. "type": "structure",
  597. "members": {
  598. "estimatedMonthlyCommitment": {
  599. "type": "double"
  600. },
  601. "estimatedOnDemandCost": {
  602. "type": "double"
  603. },
  604. "monthlySavingsPlansEligibleCost": {
  605. "type": "double"
  606. },
  607. "savingsPercentage": {
  608. "type": "double"
  609. }
  610. }
  611. }
  612. }
  613. },
  614. "Sk": {
  615. "type": "structure",
  616. "members": {
  617. "pricing": {
  618. "type": "structure",
  619. "members": {
  620. "estimatedCostAfterDiscounts": {
  621. "type": "double"
  622. },
  623. "estimatedCostBeforeDiscounts": {
  624. "type": "double"
  625. },
  626. "estimatedDiscounts": {
  627. "type": "structure",
  628. "members": {
  629. "otherDiscount": {
  630. "type": "double"
  631. },
  632. "reservedInstancesDiscount": {
  633. "type": "double"
  634. },
  635. "savingsPlansDiscount": {
  636. "type": "double"
  637. }
  638. }
  639. },
  640. "estimatedNetUnusedAmortizedCommitments": {
  641. "type": "double"
  642. }
  643. }
  644. },
  645. "usages": {
  646. "type": "list",
  647. "member": {
  648. "type": "structure",
  649. "members": {
  650. "operation": {},
  651. "productCode": {},
  652. "unit": {},
  653. "usageAmount": {
  654. "type": "double"
  655. },
  656. "usageType": {}
  657. }
  658. }
  659. }
  660. }
  661. },
  662. "Sr": {
  663. "type": "structure",
  664. "members": {
  665. "type": {}
  666. }
  667. },
  668. "Sz": {
  669. "type": "structure",
  670. "members": {
  671. "pricing": {
  672. "type": "structure",
  673. "members": {
  674. "estimatedMonthlyAmortizedReservationCost": {
  675. "type": "double"
  676. },
  677. "estimatedOnDemandCost": {
  678. "type": "double"
  679. },
  680. "monthlyReservationEligibleCost": {
  681. "type": "double"
  682. },
  683. "savingsPercentage": {
  684. "type": "double"
  685. }
  686. }
  687. }
  688. }
  689. },
  690. "S13": {
  691. "type": "structure",
  692. "members": {
  693. "architecture": {},
  694. "memorySizeInMB": {
  695. "type": "integer"
  696. },
  697. "platform": {},
  698. "vCpu": {
  699. "type": "double"
  700. }
  701. }
  702. },
  703. "S1k": {
  704. "type": "list",
  705. "member": {
  706. "type": "structure",
  707. "members": {
  708. "key": {},
  709. "value": {}
  710. }
  711. }
  712. },
  713. "S1w": {
  714. "type": "structure",
  715. "members": {
  716. "accountIds": {
  717. "type": "list",
  718. "member": {}
  719. },
  720. "actionTypes": {
  721. "type": "list",
  722. "member": {}
  723. },
  724. "implementationEfforts": {
  725. "type": "list",
  726. "member": {}
  727. },
  728. "recommendationIds": {
  729. "type": "list",
  730. "member": {}
  731. },
  732. "regions": {
  733. "type": "list",
  734. "member": {}
  735. },
  736. "resourceArns": {
  737. "type": "list",
  738. "member": {}
  739. },
  740. "resourceIds": {
  741. "type": "list",
  742. "member": {}
  743. },
  744. "resourceTypes": {
  745. "type": "list",
  746. "member": {}
  747. },
  748. "restartNeeded": {
  749. "type": "boolean"
  750. },
  751. "rollbackPossible": {
  752. "type": "boolean"
  753. },
  754. "tags": {
  755. "shape": "S1k"
  756. }
  757. }
  758. }
  759. }
  760. }