trustedadvisor.d.ts 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982
  1. import {Request} from '../lib/request';
  2. import {Response} from '../lib/response';
  3. import {AWSError} from '../lib/error';
  4. import {Service} from '../lib/service';
  5. import {ServiceConfigurationOptions} from '../lib/service';
  6. import {ConfigBase as Config} from '../lib/config-base';
  7. interface Blob {}
  8. declare class TrustedAdvisor extends Service {
  9. /**
  10. * Constructs a service object. This object has one method for each API operation.
  11. */
  12. constructor(options?: TrustedAdvisor.Types.ClientConfiguration)
  13. config: Config & TrustedAdvisor.Types.ClientConfiguration;
  14. /**
  15. * Update one or more exclusion status for a list of recommendation resources
  16. */
  17. batchUpdateRecommendationResourceExclusion(params: TrustedAdvisor.Types.BatchUpdateRecommendationResourceExclusionRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.BatchUpdateRecommendationResourceExclusionResponse) => void): Request<TrustedAdvisor.Types.BatchUpdateRecommendationResourceExclusionResponse, AWSError>;
  18. /**
  19. * Update one or more exclusion status for a list of recommendation resources
  20. */
  21. batchUpdateRecommendationResourceExclusion(callback?: (err: AWSError, data: TrustedAdvisor.Types.BatchUpdateRecommendationResourceExclusionResponse) => void): Request<TrustedAdvisor.Types.BatchUpdateRecommendationResourceExclusionResponse, AWSError>;
  22. /**
  23. * Get a specific recommendation within an AWS Organizations organization. This API supports only prioritized recommendations.
  24. */
  25. getOrganizationRecommendation(params: TrustedAdvisor.Types.GetOrganizationRecommendationRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.GetOrganizationRecommendationResponse) => void): Request<TrustedAdvisor.Types.GetOrganizationRecommendationResponse, AWSError>;
  26. /**
  27. * Get a specific recommendation within an AWS Organizations organization. This API supports only prioritized recommendations.
  28. */
  29. getOrganizationRecommendation(callback?: (err: AWSError, data: TrustedAdvisor.Types.GetOrganizationRecommendationResponse) => void): Request<TrustedAdvisor.Types.GetOrganizationRecommendationResponse, AWSError>;
  30. /**
  31. * Get a specific Recommendation
  32. */
  33. getRecommendation(params: TrustedAdvisor.Types.GetRecommendationRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.GetRecommendationResponse) => void): Request<TrustedAdvisor.Types.GetRecommendationResponse, AWSError>;
  34. /**
  35. * Get a specific Recommendation
  36. */
  37. getRecommendation(callback?: (err: AWSError, data: TrustedAdvisor.Types.GetRecommendationResponse) => void): Request<TrustedAdvisor.Types.GetRecommendationResponse, AWSError>;
  38. /**
  39. * List a filterable set of Checks
  40. */
  41. listChecks(params: TrustedAdvisor.Types.ListChecksRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.ListChecksResponse) => void): Request<TrustedAdvisor.Types.ListChecksResponse, AWSError>;
  42. /**
  43. * List a filterable set of Checks
  44. */
  45. listChecks(callback?: (err: AWSError, data: TrustedAdvisor.Types.ListChecksResponse) => void): Request<TrustedAdvisor.Types.ListChecksResponse, AWSError>;
  46. /**
  47. * Lists the accounts that own the resources for an organization aggregate recommendation. This API only supports prioritized recommendations.
  48. */
  49. listOrganizationRecommendationAccounts(params: TrustedAdvisor.Types.ListOrganizationRecommendationAccountsRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.ListOrganizationRecommendationAccountsResponse) => void): Request<TrustedAdvisor.Types.ListOrganizationRecommendationAccountsResponse, AWSError>;
  50. /**
  51. * Lists the accounts that own the resources for an organization aggregate recommendation. This API only supports prioritized recommendations.
  52. */
  53. listOrganizationRecommendationAccounts(callback?: (err: AWSError, data: TrustedAdvisor.Types.ListOrganizationRecommendationAccountsResponse) => void): Request<TrustedAdvisor.Types.ListOrganizationRecommendationAccountsResponse, AWSError>;
  54. /**
  55. * List Resources of a Recommendation within an Organization. This API only supports prioritized recommendations.
  56. */
  57. listOrganizationRecommendationResources(params: TrustedAdvisor.Types.ListOrganizationRecommendationResourcesRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.ListOrganizationRecommendationResourcesResponse) => void): Request<TrustedAdvisor.Types.ListOrganizationRecommendationResourcesResponse, AWSError>;
  58. /**
  59. * List Resources of a Recommendation within an Organization. This API only supports prioritized recommendations.
  60. */
  61. listOrganizationRecommendationResources(callback?: (err: AWSError, data: TrustedAdvisor.Types.ListOrganizationRecommendationResourcesResponse) => void): Request<TrustedAdvisor.Types.ListOrganizationRecommendationResourcesResponse, AWSError>;
  62. /**
  63. * List a filterable set of Recommendations within an Organization. This API only supports prioritized recommendations.
  64. */
  65. listOrganizationRecommendations(params: TrustedAdvisor.Types.ListOrganizationRecommendationsRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.ListOrganizationRecommendationsResponse) => void): Request<TrustedAdvisor.Types.ListOrganizationRecommendationsResponse, AWSError>;
  66. /**
  67. * List a filterable set of Recommendations within an Organization. This API only supports prioritized recommendations.
  68. */
  69. listOrganizationRecommendations(callback?: (err: AWSError, data: TrustedAdvisor.Types.ListOrganizationRecommendationsResponse) => void): Request<TrustedAdvisor.Types.ListOrganizationRecommendationsResponse, AWSError>;
  70. /**
  71. * List Resources of a Recommendation
  72. */
  73. listRecommendationResources(params: TrustedAdvisor.Types.ListRecommendationResourcesRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.ListRecommendationResourcesResponse) => void): Request<TrustedAdvisor.Types.ListRecommendationResourcesResponse, AWSError>;
  74. /**
  75. * List Resources of a Recommendation
  76. */
  77. listRecommendationResources(callback?: (err: AWSError, data: TrustedAdvisor.Types.ListRecommendationResourcesResponse) => void): Request<TrustedAdvisor.Types.ListRecommendationResourcesResponse, AWSError>;
  78. /**
  79. * List a filterable set of Recommendations
  80. */
  81. listRecommendations(params: TrustedAdvisor.Types.ListRecommendationsRequest, callback?: (err: AWSError, data: TrustedAdvisor.Types.ListRecommendationsResponse) => void): Request<TrustedAdvisor.Types.ListRecommendationsResponse, AWSError>;
  82. /**
  83. * List a filterable set of Recommendations
  84. */
  85. listRecommendations(callback?: (err: AWSError, data: TrustedAdvisor.Types.ListRecommendationsResponse) => void): Request<TrustedAdvisor.Types.ListRecommendationsResponse, AWSError>;
  86. /**
  87. * Update the lifecycle of a Recommendation within an Organization. This API only supports prioritized recommendations.
  88. */
  89. updateOrganizationRecommendationLifecycle(params: TrustedAdvisor.Types.UpdateOrganizationRecommendationLifecycleRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
  90. /**
  91. * Update the lifecycle of a Recommendation within an Organization. This API only supports prioritized recommendations.
  92. */
  93. updateOrganizationRecommendationLifecycle(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
  94. /**
  95. * Update the lifecyle of a Recommendation. This API only supports prioritized recommendations.
  96. */
  97. updateRecommendationLifecycle(params: TrustedAdvisor.Types.UpdateRecommendationLifecycleRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
  98. /**
  99. * Update the lifecyle of a Recommendation. This API only supports prioritized recommendations.
  100. */
  101. updateRecommendationLifecycle(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
  102. }
  103. declare namespace TrustedAdvisor {
  104. export type AccountId = string;
  105. export type AccountRecommendationArn = string;
  106. export type AccountRecommendationIdentifier = string;
  107. export interface AccountRecommendationLifecycleSummary {
  108. /**
  109. * The AWS account ID
  110. */
  111. accountId?: AccountId;
  112. /**
  113. * The Recommendation ARN
  114. */
  115. accountRecommendationArn?: AccountRecommendationArn;
  116. /**
  117. * When the Recommendation was last updated
  118. */
  119. lastUpdatedAt?: SyntheticTimestamp_date_time;
  120. /**
  121. * The lifecycle stage from AWS Trusted Advisor Priority
  122. */
  123. lifecycleStage?: RecommendationLifecycleStage;
  124. /**
  125. * Reason for the lifecycle stage change
  126. */
  127. updateReason?: RecommendationUpdateReason;
  128. /**
  129. * Reason code for the lifecycle state change
  130. */
  131. updateReasonCode?: UpdateRecommendationLifecycleStageReasonCode;
  132. /**
  133. * The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority
  134. */
  135. updatedOnBehalfOf?: String;
  136. /**
  137. * The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority
  138. */
  139. updatedOnBehalfOfJobTitle?: String;
  140. }
  141. export type AccountRecommendationLifecycleSummaryList = AccountRecommendationLifecycleSummary[];
  142. export interface BatchUpdateRecommendationResourceExclusionRequest {
  143. /**
  144. * A list of recommendation resource ARNs and exclusion status to update
  145. */
  146. recommendationResourceExclusions: RecommendationResourceExclusionList;
  147. }
  148. export interface BatchUpdateRecommendationResourceExclusionResponse {
  149. /**
  150. * A list of recommendation resource ARNs whose exclusion status failed to update, if any
  151. */
  152. batchUpdateRecommendationResourceExclusionErrors: UpdateRecommendationResourceExclusionErrorList;
  153. }
  154. export type Boolean = boolean;
  155. export type CheckArn = string;
  156. export type CheckIdentifier = string;
  157. export interface CheckSummary {
  158. /**
  159. * The ARN of the AWS Trusted Advisor Check
  160. */
  161. arn: CheckArn;
  162. /**
  163. * The AWS Services that the Check applies to
  164. */
  165. awsServices: RecommendationAwsServiceList;
  166. /**
  167. * A description of what the AWS Trusted Advisor Check is monitoring
  168. */
  169. description: String;
  170. /**
  171. * The unique identifier of the AWS Trusted Advisor Check
  172. */
  173. id: String;
  174. /**
  175. * The column headings for the metadata returned in the resource
  176. */
  177. metadata: StringMap;
  178. /**
  179. * The name of the AWS Trusted Advisor Check
  180. */
  181. name: String;
  182. /**
  183. * The Recommendation pillars that the AWS Trusted Advisor Check falls under
  184. */
  185. pillars: RecommendationPillarList;
  186. /**
  187. * The source of the Recommendation
  188. */
  189. source: RecommendationSource;
  190. }
  191. export type CheckSummaryList = CheckSummary[];
  192. export type Double = number;
  193. export type ExclusionStatus = "excluded"|"included"|string;
  194. export interface GetOrganizationRecommendationRequest {
  195. /**
  196. * The Recommendation identifier
  197. */
  198. organizationRecommendationIdentifier: OrganizationRecommendationIdentifier;
  199. }
  200. export interface GetOrganizationRecommendationResponse {
  201. /**
  202. * The Recommendation
  203. */
  204. organizationRecommendation?: OrganizationRecommendation;
  205. }
  206. export interface GetRecommendationRequest {
  207. /**
  208. * The Recommendation identifier
  209. */
  210. recommendationIdentifier: AccountRecommendationIdentifier;
  211. }
  212. export interface GetRecommendationResponse {
  213. /**
  214. * The Recommendation
  215. */
  216. recommendation?: Recommendation;
  217. }
  218. export interface ListChecksRequest {
  219. /**
  220. * The aws service associated with the check
  221. */
  222. awsService?: RecommendationAwsService;
  223. /**
  224. * The ISO 639-1 code for the language that you want your checks to appear in.
  225. */
  226. language?: RecommendationLanguage;
  227. /**
  228. * The maximum number of results to return per page.
  229. */
  230. maxResults?: ListChecksRequestMaxResultsInteger;
  231. /**
  232. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  233. */
  234. nextToken?: ListChecksRequestNextTokenString;
  235. /**
  236. * The pillar of the check
  237. */
  238. pillar?: RecommendationPillar;
  239. /**
  240. * The source of the check
  241. */
  242. source?: RecommendationSource;
  243. }
  244. export type ListChecksRequestMaxResultsInteger = number;
  245. export type ListChecksRequestNextTokenString = string;
  246. export interface ListChecksResponse {
  247. /**
  248. * The list of Checks
  249. */
  250. checkSummaries: CheckSummaryList;
  251. /**
  252. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  253. */
  254. nextToken?: ListChecksResponseNextTokenString;
  255. }
  256. export type ListChecksResponseNextTokenString = string;
  257. export interface ListOrganizationRecommendationAccountsRequest {
  258. /**
  259. * An account affected by this organization recommendation
  260. */
  261. affectedAccountId?: AccountId;
  262. /**
  263. * The maximum number of results to return per page.
  264. */
  265. maxResults?: ListOrganizationRecommendationAccountsRequestMaxResultsInteger;
  266. /**
  267. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  268. */
  269. nextToken?: ListOrganizationRecommendationAccountsRequestNextTokenString;
  270. /**
  271. * The Recommendation identifier
  272. */
  273. organizationRecommendationIdentifier: OrganizationRecommendationIdentifier;
  274. }
  275. export type ListOrganizationRecommendationAccountsRequestMaxResultsInteger = number;
  276. export type ListOrganizationRecommendationAccountsRequestNextTokenString = string;
  277. export interface ListOrganizationRecommendationAccountsResponse {
  278. /**
  279. * The account recommendations lifecycles that are applicable to the Recommendation
  280. */
  281. accountRecommendationLifecycleSummaries: AccountRecommendationLifecycleSummaryList;
  282. /**
  283. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  284. */
  285. nextToken?: ListOrganizationRecommendationAccountsResponseNextTokenString;
  286. }
  287. export type ListOrganizationRecommendationAccountsResponseNextTokenString = string;
  288. export interface ListOrganizationRecommendationResourcesRequest {
  289. /**
  290. * An account affected by this organization recommendation
  291. */
  292. affectedAccountId?: AccountId;
  293. /**
  294. * The exclusion status of the resource
  295. */
  296. exclusionStatus?: ExclusionStatus;
  297. /**
  298. * The maximum number of results to return per page.
  299. */
  300. maxResults?: ListOrganizationRecommendationResourcesRequestMaxResultsInteger;
  301. /**
  302. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  303. */
  304. nextToken?: ListOrganizationRecommendationResourcesRequestNextTokenString;
  305. /**
  306. * The AWS Organization organization's Recommendation identifier
  307. */
  308. organizationRecommendationIdentifier: OrganizationRecommendationIdentifier;
  309. /**
  310. * The AWS Region code of the resource
  311. */
  312. regionCode?: String;
  313. /**
  314. * The status of the resource
  315. */
  316. status?: ResourceStatus;
  317. }
  318. export type ListOrganizationRecommendationResourcesRequestMaxResultsInteger = number;
  319. export type ListOrganizationRecommendationResourcesRequestNextTokenString = string;
  320. export interface ListOrganizationRecommendationResourcesResponse {
  321. /**
  322. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  323. */
  324. nextToken?: ListOrganizationRecommendationResourcesResponseNextTokenString;
  325. /**
  326. * A list of Recommendation Resources
  327. */
  328. organizationRecommendationResourceSummaries: OrganizationRecommendationResourceSummaryList;
  329. }
  330. export type ListOrganizationRecommendationResourcesResponseNextTokenString = string;
  331. export interface ListOrganizationRecommendationsRequest {
  332. /**
  333. * After the last update of the Recommendation
  334. */
  335. afterLastUpdatedAt?: Timestamp;
  336. /**
  337. * The aws service associated with the Recommendation
  338. */
  339. awsService?: RecommendationAwsService;
  340. /**
  341. * Before the last update of the Recommendation
  342. */
  343. beforeLastUpdatedAt?: Timestamp;
  344. /**
  345. * The check identifier of the Recommendation
  346. */
  347. checkIdentifier?: CheckIdentifier;
  348. /**
  349. * The maximum number of results to return per page.
  350. */
  351. maxResults?: ListOrganizationRecommendationsRequestMaxResultsInteger;
  352. /**
  353. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  354. */
  355. nextToken?: ListOrganizationRecommendationsRequestNextTokenString;
  356. /**
  357. * The pillar of the Recommendation
  358. */
  359. pillar?: RecommendationPillar;
  360. /**
  361. * The source of the Recommendation
  362. */
  363. source?: RecommendationSource;
  364. /**
  365. * The status of the Recommendation
  366. */
  367. status?: RecommendationStatus;
  368. /**
  369. * The type of the Recommendation
  370. */
  371. type?: RecommendationType;
  372. }
  373. export type ListOrganizationRecommendationsRequestMaxResultsInteger = number;
  374. export type ListOrganizationRecommendationsRequestNextTokenString = string;
  375. export interface ListOrganizationRecommendationsResponse {
  376. /**
  377. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  378. */
  379. nextToken?: ListOrganizationRecommendationsResponseNextTokenString;
  380. /**
  381. * The list of Recommendations
  382. */
  383. organizationRecommendationSummaries: OrganizationRecommendationSummaryList;
  384. }
  385. export type ListOrganizationRecommendationsResponseNextTokenString = string;
  386. export interface ListRecommendationResourcesRequest {
  387. /**
  388. * The exclusion status of the resource
  389. */
  390. exclusionStatus?: ExclusionStatus;
  391. /**
  392. * The maximum number of results to return per page.
  393. */
  394. maxResults?: ListRecommendationResourcesRequestMaxResultsInteger;
  395. /**
  396. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  397. */
  398. nextToken?: ListRecommendationResourcesRequestNextTokenString;
  399. /**
  400. * The Recommendation identifier
  401. */
  402. recommendationIdentifier: AccountRecommendationIdentifier;
  403. /**
  404. * The AWS Region code of the resource
  405. */
  406. regionCode?: String;
  407. /**
  408. * The status of the resource
  409. */
  410. status?: ResourceStatus;
  411. }
  412. export type ListRecommendationResourcesRequestMaxResultsInteger = number;
  413. export type ListRecommendationResourcesRequestNextTokenString = string;
  414. export interface ListRecommendationResourcesResponse {
  415. /**
  416. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  417. */
  418. nextToken?: ListRecommendationResourcesResponseNextTokenString;
  419. /**
  420. * A list of Recommendation Resources
  421. */
  422. recommendationResourceSummaries: RecommendationResourceSummaryList;
  423. }
  424. export type ListRecommendationResourcesResponseNextTokenString = string;
  425. export interface ListRecommendationsRequest {
  426. /**
  427. * After the last update of the Recommendation
  428. */
  429. afterLastUpdatedAt?: Timestamp;
  430. /**
  431. * The aws service associated with the Recommendation
  432. */
  433. awsService?: RecommendationAwsService;
  434. /**
  435. * Before the last update of the Recommendation
  436. */
  437. beforeLastUpdatedAt?: Timestamp;
  438. /**
  439. * The check identifier of the Recommendation
  440. */
  441. checkIdentifier?: CheckIdentifier;
  442. /**
  443. * The maximum number of results to return per page.
  444. */
  445. maxResults?: ListRecommendationsRequestMaxResultsInteger;
  446. /**
  447. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  448. */
  449. nextToken?: ListRecommendationsRequestNextTokenString;
  450. /**
  451. * The pillar of the Recommendation
  452. */
  453. pillar?: RecommendationPillar;
  454. /**
  455. * The source of the Recommendation
  456. */
  457. source?: RecommendationSource;
  458. /**
  459. * The status of the Recommendation
  460. */
  461. status?: RecommendationStatus;
  462. /**
  463. * The type of the Recommendation
  464. */
  465. type?: RecommendationType;
  466. }
  467. export type ListRecommendationsRequestMaxResultsInteger = number;
  468. export type ListRecommendationsRequestNextTokenString = string;
  469. export interface ListRecommendationsResponse {
  470. /**
  471. * The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
  472. */
  473. nextToken?: ListRecommendationsResponseNextTokenString;
  474. /**
  475. * The list of Recommendations
  476. */
  477. recommendationSummaries: RecommendationSummaryList;
  478. }
  479. export type ListRecommendationsResponseNextTokenString = string;
  480. export type Long = number;
  481. export interface OrganizationRecommendation {
  482. /**
  483. * The ARN of the Recommendation
  484. */
  485. arn: OrganizationRecommendationArn;
  486. /**
  487. * The AWS Services that the Recommendation applies to
  488. */
  489. awsServices?: RecommendationAwsServiceList;
  490. /**
  491. * The AWS Trusted Advisor Check ARN that relates to the Recommendation
  492. */
  493. checkArn?: String;
  494. /**
  495. * When the Recommendation was created, if created by AWS Trusted Advisor Priority
  496. */
  497. createdAt?: SyntheticTimestamp_date_time;
  498. /**
  499. * The creator, if created by AWS Trusted Advisor Priority
  500. */
  501. createdBy?: String;
  502. /**
  503. * A description for AWS Trusted Advisor recommendations
  504. */
  505. description: String;
  506. /**
  507. * The ID which identifies where the Recommendation was produced
  508. */
  509. id: String;
  510. /**
  511. * When the Recommendation was last updated
  512. */
  513. lastUpdatedAt?: SyntheticTimestamp_date_time;
  514. /**
  515. * The lifecycle stage from AWS Trusted Advisor Priority
  516. */
  517. lifecycleStage?: RecommendationLifecycleStage;
  518. /**
  519. * The name of the AWS Trusted Advisor Recommendation
  520. */
  521. name: String;
  522. /**
  523. * The pillar aggregations for cost savings
  524. */
  525. pillarSpecificAggregates?: RecommendationPillarSpecificAggregates;
  526. /**
  527. * The Pillars that the Recommendation is optimizing
  528. */
  529. pillars: RecommendationPillarList;
  530. /**
  531. * When the Recommendation was resolved
  532. */
  533. resolvedAt?: SyntheticTimestamp_date_time;
  534. /**
  535. * An aggregation of all resources
  536. */
  537. resourcesAggregates: RecommendationResourcesAggregates;
  538. /**
  539. * The source of the Recommendation
  540. */
  541. source: RecommendationSource;
  542. /**
  543. * The status of the Recommendation
  544. */
  545. status: RecommendationStatus;
  546. /**
  547. * Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority
  548. */
  549. type: RecommendationType;
  550. /**
  551. * Reason for the lifecycle stage change
  552. */
  553. updateReason?: RecommendationUpdateReason;
  554. /**
  555. * Reason code for the lifecycle state change
  556. */
  557. updateReasonCode?: UpdateRecommendationLifecycleStageReasonCode;
  558. /**
  559. * The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority
  560. */
  561. updatedOnBehalfOf?: String;
  562. /**
  563. * The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority
  564. */
  565. updatedOnBehalfOfJobTitle?: String;
  566. }
  567. export type OrganizationRecommendationArn = string;
  568. export type OrganizationRecommendationIdentifier = string;
  569. export interface OrganizationRecommendationResourceSummary {
  570. /**
  571. * The AWS account ID
  572. */
  573. accountId?: AccountId;
  574. /**
  575. * The ARN of the Recommendation Resource
  576. */
  577. arn: RecommendationResourceArn;
  578. /**
  579. * The AWS resource identifier
  580. */
  581. awsResourceId: String;
  582. /**
  583. * The exclusion status of the Recommendation Resource
  584. */
  585. exclusionStatus?: ExclusionStatus;
  586. /**
  587. * The ID of the Recommendation Resource
  588. */
  589. id: String;
  590. /**
  591. * When the Recommendation Resource was last updated
  592. */
  593. lastUpdatedAt: SyntheticTimestamp_date_time;
  594. /**
  595. * Metadata associated with the Recommendation Resource
  596. */
  597. metadata: StringMap;
  598. /**
  599. * The Recommendation ARN
  600. */
  601. recommendationArn: OrganizationRecommendationArn;
  602. /**
  603. * The AWS Region code that the Recommendation Resource is in
  604. */
  605. regionCode: RecommendationRegionCode;
  606. /**
  607. * The current status of the Recommendation Resource
  608. */
  609. status: ResourceStatus;
  610. }
  611. export type OrganizationRecommendationResourceSummaryList = OrganizationRecommendationResourceSummary[];
  612. export interface OrganizationRecommendationSummary {
  613. /**
  614. * The ARN of the Recommendation
  615. */
  616. arn: OrganizationRecommendationArn;
  617. /**
  618. * The AWS Services that the Recommendation applies to
  619. */
  620. awsServices?: RecommendationAwsServiceList;
  621. /**
  622. * The AWS Trusted Advisor Check ARN that relates to the Recommendation
  623. */
  624. checkArn?: String;
  625. /**
  626. * When the Recommendation was created, if created by AWS Trusted Advisor Priority
  627. */
  628. createdAt?: SyntheticTimestamp_date_time;
  629. /**
  630. * The ID which identifies where the Recommendation was produced
  631. */
  632. id: String;
  633. /**
  634. * When the Recommendation was last updated
  635. */
  636. lastUpdatedAt?: SyntheticTimestamp_date_time;
  637. /**
  638. * The lifecycle stage from AWS Trusted Advisor Priority
  639. */
  640. lifecycleStage?: RecommendationLifecycleStage;
  641. /**
  642. * The name of the AWS Trusted Advisor Recommendation
  643. */
  644. name: String;
  645. /**
  646. * The pillar aggregations for cost savings
  647. */
  648. pillarSpecificAggregates?: RecommendationPillarSpecificAggregates;
  649. /**
  650. * The Pillars that the Recommendation is optimizing
  651. */
  652. pillars: RecommendationPillarList;
  653. /**
  654. * An aggregation of all resources
  655. */
  656. resourcesAggregates: RecommendationResourcesAggregates;
  657. /**
  658. * The source of the Recommendation
  659. */
  660. source: RecommendationSource;
  661. /**
  662. * The status of the Recommendation
  663. */
  664. status: RecommendationStatus;
  665. /**
  666. * Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority
  667. */
  668. type: RecommendationType;
  669. }
  670. export type OrganizationRecommendationSummaryList = OrganizationRecommendationSummary[];
  671. export interface Recommendation {
  672. /**
  673. * The ARN of the Recommendation
  674. */
  675. arn: AccountRecommendationArn;
  676. /**
  677. * The AWS Services that the Recommendation applies to
  678. */
  679. awsServices?: RecommendationAwsServiceList;
  680. /**
  681. * The AWS Trusted Advisor Check ARN that relates to the Recommendation
  682. */
  683. checkArn?: String;
  684. /**
  685. * When the Recommendation was created, if created by AWS Trusted Advisor Priority
  686. */
  687. createdAt?: SyntheticTimestamp_date_time;
  688. /**
  689. * The creator, if created by AWS Trusted Advisor Priority
  690. */
  691. createdBy?: String;
  692. /**
  693. * A description for AWS Trusted Advisor recommendations
  694. */
  695. description: String;
  696. /**
  697. * The ID which identifies where the Recommendation was produced
  698. */
  699. id: String;
  700. /**
  701. * When the Recommendation was last updated
  702. */
  703. lastUpdatedAt?: SyntheticTimestamp_date_time;
  704. /**
  705. * The lifecycle stage from AWS Trusted Advisor Priority
  706. */
  707. lifecycleStage?: RecommendationLifecycleStage;
  708. /**
  709. * The name of the AWS Trusted Advisor Recommendation
  710. */
  711. name: String;
  712. /**
  713. * The pillar aggregations for cost savings
  714. */
  715. pillarSpecificAggregates?: RecommendationPillarSpecificAggregates;
  716. /**
  717. * The Pillars that the Recommendation is optimizing
  718. */
  719. pillars: RecommendationPillarList;
  720. /**
  721. * When the Recommendation was resolved
  722. */
  723. resolvedAt?: SyntheticTimestamp_date_time;
  724. /**
  725. * An aggregation of all resources
  726. */
  727. resourcesAggregates: RecommendationResourcesAggregates;
  728. /**
  729. * The source of the Recommendation
  730. */
  731. source: RecommendationSource;
  732. /**
  733. * The status of the Recommendation
  734. */
  735. status: RecommendationStatus;
  736. /**
  737. * Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority
  738. */
  739. type: RecommendationType;
  740. /**
  741. * Reason for the lifecycle stage change
  742. */
  743. updateReason?: RecommendationUpdateReason;
  744. /**
  745. * Reason code for the lifecycle state change
  746. */
  747. updateReasonCode?: UpdateRecommendationLifecycleStageReasonCode;
  748. /**
  749. * The person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority
  750. */
  751. updatedOnBehalfOf?: String;
  752. /**
  753. * The job title of the person on whose behalf a Technical Account Manager (TAM) updated the recommendation. This information is only available when a Technical Account Manager takes an action on a recommendation managed by AWS Trusted Advisor Priority
  754. */
  755. updatedOnBehalfOfJobTitle?: String;
  756. }
  757. export type RecommendationAwsService = string;
  758. export type RecommendationAwsServiceList = RecommendationAwsService[];
  759. export interface RecommendationCostOptimizingAggregates {
  760. /**
  761. * The estimated monthly savings
  762. */
  763. estimatedMonthlySavings: Double;
  764. /**
  765. * The estimated percently monthly savings
  766. */
  767. estimatedPercentMonthlySavings: Double;
  768. }
  769. export type RecommendationLanguage = "en"|"ja"|"zh"|"fr"|"de"|"ko"|"zh_TW"|"it"|"es"|"pt_BR"|"id"|string;
  770. export type RecommendationLifecycleStage = "in_progress"|"pending_response"|"dismissed"|"resolved"|string;
  771. export type RecommendationPillar = "cost_optimizing"|"performance"|"security"|"service_limits"|"fault_tolerance"|"operational_excellence"|string;
  772. export type RecommendationPillarList = RecommendationPillar[];
  773. export interface RecommendationPillarSpecificAggregates {
  774. /**
  775. * Cost optimizing aggregates
  776. */
  777. costOptimizing?: RecommendationCostOptimizingAggregates;
  778. }
  779. export type RecommendationRegionCode = string;
  780. export type RecommendationResourceArn = string;
  781. export interface RecommendationResourceExclusion {
  782. /**
  783. * The ARN of the Recommendation Resource
  784. */
  785. arn: RecommendationResourceArn;
  786. /**
  787. * The exclusion status
  788. */
  789. isExcluded: Boolean;
  790. }
  791. export type RecommendationResourceExclusionList = RecommendationResourceExclusion[];
  792. export interface RecommendationResourceSummary {
  793. /**
  794. * The ARN of the Recommendation Resource
  795. */
  796. arn: RecommendationResourceArn;
  797. /**
  798. * The AWS resource identifier
  799. */
  800. awsResourceId: String;
  801. /**
  802. * The exclusion status of the Recommendation Resource
  803. */
  804. exclusionStatus?: ExclusionStatus;
  805. /**
  806. * The ID of the Recommendation Resource
  807. */
  808. id: String;
  809. /**
  810. * When the Recommendation Resource was last updated
  811. */
  812. lastUpdatedAt: SyntheticTimestamp_date_time;
  813. /**
  814. * Metadata associated with the Recommendation Resource
  815. */
  816. metadata: StringMap;
  817. /**
  818. * The Recommendation ARN
  819. */
  820. recommendationArn: AccountRecommendationArn;
  821. /**
  822. * The AWS Region code that the Recommendation Resource is in
  823. */
  824. regionCode: RecommendationRegionCode;
  825. /**
  826. * The current status of the Recommendation Resource
  827. */
  828. status: ResourceStatus;
  829. }
  830. export type RecommendationResourceSummaryList = RecommendationResourceSummary[];
  831. export interface RecommendationResourcesAggregates {
  832. /**
  833. * The number of AWS resources that were flagged to have errors according to the Trusted Advisor check
  834. */
  835. errorCount: Long;
  836. /**
  837. * The number of AWS resources that were flagged to be OK according to the Trusted Advisor check
  838. */
  839. okCount: Long;
  840. /**
  841. * The number of AWS resources that were flagged to have warning according to the Trusted Advisor check
  842. */
  843. warningCount: Long;
  844. }
  845. export type RecommendationSource = "aws_config"|"compute_optimizer"|"cost_explorer"|"lse"|"manual"|"pse"|"rds"|"resilience"|"resilience_hub"|"security_hub"|"stir"|"ta_check"|"well_architected"|string;
  846. export type RecommendationStatus = "ok"|"warning"|"error"|string;
  847. export interface RecommendationSummary {
  848. /**
  849. * The ARN of the Recommendation
  850. */
  851. arn: AccountRecommendationArn;
  852. /**
  853. * The AWS Services that the Recommendation applies to
  854. */
  855. awsServices?: RecommendationAwsServiceList;
  856. /**
  857. * The AWS Trusted Advisor Check ARN that relates to the Recommendation
  858. */
  859. checkArn?: String;
  860. /**
  861. * When the Recommendation was created, if created by AWS Trusted Advisor Priority
  862. */
  863. createdAt?: SyntheticTimestamp_date_time;
  864. /**
  865. * The ID which identifies where the Recommendation was produced
  866. */
  867. id: String;
  868. /**
  869. * When the Recommendation was last updated
  870. */
  871. lastUpdatedAt?: SyntheticTimestamp_date_time;
  872. /**
  873. * The lifecycle stage from AWS Trusted Advisor Priority
  874. */
  875. lifecycleStage?: RecommendationLifecycleStage;
  876. /**
  877. * The name of the AWS Trusted Advisor Recommendation
  878. */
  879. name: String;
  880. /**
  881. * The pillar aggregations for cost savings
  882. */
  883. pillarSpecificAggregates?: RecommendationPillarSpecificAggregates;
  884. /**
  885. * The Pillars that the Recommendation is optimizing
  886. */
  887. pillars: RecommendationPillarList;
  888. /**
  889. * An aggregation of all resources
  890. */
  891. resourcesAggregates: RecommendationResourcesAggregates;
  892. /**
  893. * The source of the Recommendation
  894. */
  895. source: RecommendationSource;
  896. /**
  897. * The status of the Recommendation
  898. */
  899. status: RecommendationStatus;
  900. /**
  901. * Whether the Recommendation was automated or generated by AWS Trusted Advisor Priority
  902. */
  903. type: RecommendationType;
  904. }
  905. export type RecommendationSummaryList = RecommendationSummary[];
  906. export type RecommendationType = "standard"|"priority"|string;
  907. export type RecommendationUpdateReason = string;
  908. export type ResourceStatus = "ok"|"warning"|"error"|string;
  909. export type String = string;
  910. export type StringMap = {[key: string]: String};
  911. export type SyntheticTimestamp_date_time = Date;
  912. export type Timestamp = Date;
  913. export interface UpdateOrganizationRecommendationLifecycleRequest {
  914. /**
  915. * The new lifecycle stage
  916. */
  917. lifecycleStage: UpdateRecommendationLifecycleStage;
  918. /**
  919. * The Recommendation identifier for AWS Trusted Advisor Priority recommendations
  920. */
  921. organizationRecommendationIdentifier: OrganizationRecommendationIdentifier;
  922. /**
  923. * Reason for the lifecycle stage change
  924. */
  925. updateReason?: RecommendationUpdateReason;
  926. /**
  927. * Reason code for the lifecycle state change
  928. */
  929. updateReasonCode?: UpdateRecommendationLifecycleStageReasonCode;
  930. }
  931. export interface UpdateRecommendationLifecycleRequest {
  932. /**
  933. * The new lifecycle stage
  934. */
  935. lifecycleStage: UpdateRecommendationLifecycleStage;
  936. /**
  937. * The Recommendation identifier for AWS Trusted Advisor Priority recommendations
  938. */
  939. recommendationIdentifier: AccountRecommendationIdentifier;
  940. /**
  941. * Reason for the lifecycle stage change
  942. */
  943. updateReason?: RecommendationUpdateReason;
  944. /**
  945. * Reason code for the lifecycle state change
  946. */
  947. updateReasonCode?: UpdateRecommendationLifecycleStageReasonCode;
  948. }
  949. export type UpdateRecommendationLifecycleStage = "pending_response"|"in_progress"|"dismissed"|"resolved"|string;
  950. export type UpdateRecommendationLifecycleStageReasonCode = "non_critical_account"|"temporary_account"|"valid_business_case"|"other_methods_available"|"low_priority"|"not_applicable"|"other"|string;
  951. export interface UpdateRecommendationResourceExclusionError {
  952. /**
  953. * The ARN of the Recommendation Resource
  954. */
  955. arn?: RecommendationResourceArn;
  956. /**
  957. * The error code
  958. */
  959. errorCode?: String;
  960. /**
  961. * The error message
  962. */
  963. errorMessage?: String;
  964. }
  965. export type UpdateRecommendationResourceExclusionErrorList = UpdateRecommendationResourceExclusionError[];
  966. /**
  967. * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
  968. */
  969. export type apiVersion = "2022-09-15"|"latest"|string;
  970. export interface ClientApiVersions {
  971. /**
  972. * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
  973. */
  974. apiVersion?: apiVersion;
  975. }
  976. export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
  977. /**
  978. * Contains interfaces for use with the TrustedAdvisor client.
  979. */
  980. export import Types = TrustedAdvisor;
  981. }
  982. export = TrustedAdvisor;