lib/aws-sdk-wellarchitected/client.rb in aws-sdk-wellarchitected-1.23.0 vs lib/aws-sdk-wellarchitected/client.rb in aws-sdk-wellarchitected-1.24.0

- old
+ new

@@ -413,10 +413,37 @@ def associate_lenses(params = {}, options = {}) req = build_request(:associate_lenses, params) req.send_request(options) end + # Associate a profile with a workload. + # + # @option params [required, String] :workload_id + # The ID assigned to the workload. This ID is unique within an Amazon + # Web Services Region. + # + # @option params [required, Array<String>] :profile_arns + # The list of profile ARNs to associate with the workload. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.associate_profiles({ + # workload_id: "WorkloadId", # required + # profile_arns: ["ProfileArn"], # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/AssociateProfiles AWS API Documentation + # + # @overload associate_profiles(params = {}) + # @param [Hash] params ({}) + def associate_profiles(params = {}, options = {}) + req = build_request(:associate_profiles, params) + req.send_request(options) + end + # Create a lens share. # # The owner of a lens can share it with other Amazon Web Services # accounts, users, an organization, and organizational units (OUs) in # the same Amazon Web Services Region. Lenses provided by Amazon Web @@ -460,11 +487,12 @@ # # Each lens is identified by its LensSummary$LensAlias. # # @option params [required, String] :shared_with # The Amazon Web Services account ID, IAM role, organization ID, or - # organizational unit (OU) ID with which the workload is shared. + # organizational unit (OU) ID with which the workload, lens, or profile + # is shared. # # @option params [required, String] :client_request_token # A unique case-sensitive string used to ensure that this request is # idempotent (executes only once). # @@ -634,10 +662,131 @@ def create_milestone(params = {}, options = {}) req = build_request(:create_milestone, params) req.send_request(options) end + # Create a profile. + # + # @option params [required, String] :profile_name + # Name of the profile. + # + # @option params [required, String] :profile_description + # The profile description. + # + # @option params [required, Array<Types::ProfileQuestionUpdate>] :profile_questions + # The profile questions. + # + # @option params [required, String] :client_request_token + # A unique case-sensitive string used to ensure that this request is + # idempotent (executes only once). + # + # You should not reuse the same token for other requests. If you retry a + # request with the same client request token and the same parameters + # after the original request has completed successfully, the result of + # the original request is returned. + # + # This token is listed as required, however, if you do not specify it, + # the Amazon Web Services SDKs automatically generate one for you. If + # you are not using the Amazon Web Services SDK or the CLI, you must + # provide this token or the request will fail. + # + # **A suitable default value is auto-generated.** You should normally + # not need to pass this option.** + # + # @option params [Hash<String,String>] :tags + # The tags assigned to the profile. + # + # @return [Types::CreateProfileOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::CreateProfileOutput#profile_arn #profile_arn} => String + # * {Types::CreateProfileOutput#profile_version #profile_version} => String + # + # @example Request syntax with placeholder values + # + # resp = client.create_profile({ + # profile_name: "ProfileName", # required + # profile_description: "ProfileDescription", # required + # profile_questions: [ # required + # { + # question_id: "QuestionId", + # selected_choice_ids: ["ChoiceId"], + # }, + # ], + # client_request_token: "ClientRequestToken", # required + # tags: { + # "TagKey" => "TagValue", + # }, + # }) + # + # @example Response structure + # + # resp.profile_arn #=> String + # resp.profile_version #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateProfile AWS API Documentation + # + # @overload create_profile(params = {}) + # @param [Hash] params ({}) + def create_profile(params = {}, options = {}) + req = build_request(:create_profile, params) + req.send_request(options) + end + + # Create a profile share. + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [required, String] :shared_with + # The Amazon Web Services account ID, IAM role, organization ID, or + # organizational unit (OU) ID with which the workload, lens, or profile + # is shared. + # + # @option params [required, String] :client_request_token + # A unique case-sensitive string used to ensure that this request is + # idempotent (executes only once). + # + # You should not reuse the same token for other requests. If you retry a + # request with the same client request token and the same parameters + # after the original request has completed successfully, the result of + # the original request is returned. + # + # This token is listed as required, however, if you do not specify it, + # the Amazon Web Services SDKs automatically generate one for you. If + # you are not using the Amazon Web Services SDK or the CLI, you must + # provide this token or the request will fail. + # + # **A suitable default value is auto-generated.** You should normally + # not need to pass this option.** + # + # @return [Types::CreateProfileShareOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::CreateProfileShareOutput#share_id #share_id} => String + # * {Types::CreateProfileShareOutput#profile_arn #profile_arn} => String + # + # @example Request syntax with placeholder values + # + # resp = client.create_profile_share({ + # profile_arn: "ProfileArn", # required + # shared_with: "SharedWith", # required + # client_request_token: "ClientRequestToken", # required + # }) + # + # @example Response structure + # + # resp.share_id #=> String + # resp.profile_arn #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/CreateProfileShare AWS API Documentation + # + # @overload create_profile_share(params = {}) + # @param [Hash] params ({}) + def create_profile_share(params = {}, options = {}) + req = build_request(:create_profile_share, params) + req.send_request(options) + end + # Create a new workload. # # The owner of a workload can share the workload with other Amazon Web # Services accounts, users, an organization, and organizational units # (OUs) in the same Amazon Web Services Region. Only the owner of a @@ -788,10 +937,13 @@ # workload. # # @option params [Array<String>] :applications # List of AppRegistry application ARNs associated to the workload. # + # @option params [Array<String>] :profile_arns + # The list of profile ARNs associated with the workload. + # # @return [Types::CreateWorkloadOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::CreateWorkloadOutput#workload_id #workload_id} => String # * {Types::CreateWorkloadOutput#workload_arn #workload_arn} => String # @@ -818,10 +970,11 @@ # discovery_config: { # trusted_advisor_integration_status: "ENABLED", # accepts ENABLED, DISABLED # workload_resource_definition: ["WORKLOAD_METADATA"], # accepts WORKLOAD_METADATA, APP_REGISTRY # }, # applications: ["ApplicationArn"], + # profile_arns: ["ProfileArn"], # }) # # @example Response structure # # resp.workload_id #=> String @@ -857,14 +1010,15 @@ # The ID assigned to the workload. This ID is unique within an Amazon # Web Services Region. # # @option params [required, String] :shared_with # The Amazon Web Services account ID, IAM role, organization ID, or - # organizational unit (OU) ID with which the workload is shared. + # organizational unit (OU) ID with which the workload, lens, or profile + # is shared. # # @option params [required, String] :permission_type - # Permission granted on a workload share. + # Permission granted on a share request. # # @option params [required, String] :client_request_token # A unique case-sensitive string used to ensure that this request is # idempotent (executes only once). # @@ -997,11 +1151,11 @@ # your Amazon Web Services account. # # </note> # # @option params [required, String] :share_id - # The ID associated with the workload share. + # The ID associated with the share. # # @option params [required, String] :lens_alias # The alias of the lens. # # For Amazon Web Services official lenses, this is either the lens @@ -1049,10 +1203,105 @@ def delete_lens_share(params = {}, options = {}) req = build_request(:delete_lens_share, params) req.send_request(options) end + # Delete a profile. + # + # <note markdown="1"> **Disclaimer** + # + # By sharing your profile with other Amazon Web Services accounts, you + # acknowledge that Amazon Web Services will make your profile available + # to those other accounts. Those other accounts may continue to access + # and use your shared profile even if you delete the profile from your + # own Amazon Web Services account or terminate your Amazon Web Services + # account. + # + # </note> + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [required, String] :client_request_token + # A unique case-sensitive string used to ensure that this request is + # idempotent (executes only once). + # + # You should not reuse the same token for other requests. If you retry a + # request with the same client request token and the same parameters + # after the original request has completed successfully, the result of + # the original request is returned. + # + # This token is listed as required, however, if you do not specify it, + # the Amazon Web Services SDKs automatically generate one for you. If + # you are not using the Amazon Web Services SDK or the CLI, you must + # provide this token or the request will fail. + # + # **A suitable default value is auto-generated.** You should normally + # not need to pass this option.** + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.delete_profile({ + # profile_arn: "ProfileArn", # required + # client_request_token: "ClientRequestToken", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteProfile AWS API Documentation + # + # @overload delete_profile(params = {}) + # @param [Hash] params ({}) + def delete_profile(params = {}, options = {}) + req = build_request(:delete_profile, params) + req.send_request(options) + end + + # Delete a profile share. + # + # @option params [required, String] :share_id + # The ID associated with the share. + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [required, String] :client_request_token + # A unique case-sensitive string used to ensure that this request is + # idempotent (executes only once). + # + # You should not reuse the same token for other requests. If you retry a + # request with the same client request token and the same parameters + # after the original request has completed successfully, the result of + # the original request is returned. + # + # This token is listed as required, however, if you do not specify it, + # the Amazon Web Services SDKs automatically generate one for you. If + # you are not using the Amazon Web Services SDK or the CLI, you must + # provide this token or the request will fail. + # + # **A suitable default value is auto-generated.** You should normally + # not need to pass this option.** + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.delete_profile_share({ + # share_id: "ShareId", # required + # profile_arn: "ProfileArn", # required + # client_request_token: "ClientRequestToken", # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DeleteProfileShare AWS API Documentation + # + # @overload delete_profile_share(params = {}) + # @param [Hash] params ({}) + def delete_profile_share(params = {}, options = {}) + req = build_request(:delete_profile_share, params) + req.send_request(options) + end + # Delete an existing workload. # # @option params [required, String] :workload_id # The ID assigned to the workload. This ID is unique within an Amazon # Web Services Region. @@ -1093,11 +1342,11 @@ end # Delete a workload share. # # @option params [required, String] :share_id - # The ID associated with the workload share. + # The ID associated with the share. # # @option params [required, String] :workload_id # The ID assigned to the workload. This ID is unique within an Amazon # Web Services Region. # @@ -1173,10 +1422,37 @@ def disassociate_lenses(params = {}, options = {}) req = build_request(:disassociate_lenses, params) req.send_request(options) end + # Disassociate a profile from a workload. + # + # @option params [required, String] :workload_id + # The ID assigned to the workload. This ID is unique within an Amazon + # Web Services Region. + # + # @option params [required, Array<String>] :profile_arns + # The list of profile ARNs to disassociate from the workload. + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.disassociate_profiles({ + # workload_id: "WorkloadId", # required + # profile_arns: ["ProfileArn"], # required + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/DisassociateProfiles AWS API Documentation + # + # @overload disassociate_profiles(params = {}) + # @param [Hash] params ({}) + def disassociate_profiles(params = {}, options = {}) + req = build_request(:disassociate_profiles, params) + req.send_request(options) + end + # Export an existing lens. # # Only the owner of a lens can export it. Lenses provided by Amazon Web # Services (Amazon Web Services Official Content) cannot be exported. # @@ -1508,15 +1784,22 @@ # resp.lens_review.pillar_review_summaries[0].pillar_id #=> String # resp.lens_review.pillar_review_summaries[0].pillar_name #=> String # resp.lens_review.pillar_review_summaries[0].notes #=> String # resp.lens_review.pillar_review_summaries[0].risk_counts #=> Hash # resp.lens_review.pillar_review_summaries[0].risk_counts["Risk"] #=> Integer + # resp.lens_review.pillar_review_summaries[0].prioritized_risk_counts #=> Hash + # resp.lens_review.pillar_review_summaries[0].prioritized_risk_counts["Risk"] #=> Integer # resp.lens_review.updated_at #=> Time # resp.lens_review.notes #=> String # resp.lens_review.risk_counts #=> Hash # resp.lens_review.risk_counts["Risk"] #=> Integer # resp.lens_review.next_token #=> String + # resp.lens_review.profiles #=> Array + # resp.lens_review.profiles[0].profile_arn #=> String + # resp.lens_review.profiles[0].profile_version #=> String + # resp.lens_review.prioritized_risk_counts #=> Hash + # resp.lens_review.prioritized_risk_counts["Risk"] #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetLensReview AWS API Documentation # # @overload get_lens_review(params = {}) # @param [Hash] params ({}) @@ -1707,20 +1990,109 @@ # resp.milestone.workload.discovery_config.trusted_advisor_integration_status #=> String, one of "ENABLED", "DISABLED" # resp.milestone.workload.discovery_config.workload_resource_definition #=> Array # resp.milestone.workload.discovery_config.workload_resource_definition[0] #=> String, one of "WORKLOAD_METADATA", "APP_REGISTRY" # resp.milestone.workload.applications #=> Array # resp.milestone.workload.applications[0] #=> String + # resp.milestone.workload.profiles #=> Array + # resp.milestone.workload.profiles[0].profile_arn #=> String + # resp.milestone.workload.profiles[0].profile_version #=> String + # resp.milestone.workload.prioritized_risk_counts #=> Hash + # resp.milestone.workload.prioritized_risk_counts["Risk"] #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetMilestone AWS API Documentation # # @overload get_milestone(params = {}) # @param [Hash] params ({}) def get_milestone(params = {}, options = {}) req = build_request(:get_milestone, params) req.send_request(options) end + # Get profile information. + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [String] :profile_version + # The profile version. + # + # @return [Types::GetProfileOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetProfileOutput#profile #profile} => Types::Profile + # + # @example Request syntax with placeholder values + # + # resp = client.get_profile({ + # profile_arn: "ProfileArn", # required + # profile_version: "ProfileVersion", + # }) + # + # @example Response structure + # + # resp.profile.profile_arn #=> String + # resp.profile.profile_version #=> String + # resp.profile.profile_name #=> String + # resp.profile.profile_description #=> String + # resp.profile.profile_questions #=> Array + # resp.profile.profile_questions[0].question_id #=> String + # resp.profile.profile_questions[0].question_title #=> String + # resp.profile.profile_questions[0].question_description #=> String + # resp.profile.profile_questions[0].question_choices #=> Array + # resp.profile.profile_questions[0].question_choices[0].choice_id #=> String + # resp.profile.profile_questions[0].question_choices[0].choice_title #=> String + # resp.profile.profile_questions[0].question_choices[0].choice_description #=> String + # resp.profile.profile_questions[0].selected_choice_ids #=> Array + # resp.profile.profile_questions[0].selected_choice_ids[0] #=> String + # resp.profile.profile_questions[0].min_selected_choices #=> Integer + # resp.profile.profile_questions[0].max_selected_choices #=> Integer + # resp.profile.owner #=> String + # resp.profile.created_at #=> Time + # resp.profile.updated_at #=> Time + # resp.profile.share_invitation_id #=> String + # resp.profile.tags #=> Hash + # resp.profile.tags["TagKey"] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetProfile AWS API Documentation + # + # @overload get_profile(params = {}) + # @param [Hash] params ({}) + def get_profile(params = {}, options = {}) + req = build_request(:get_profile, params) + req.send_request(options) + end + + # Get profile template. + # + # @return [Types::GetProfileTemplateOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::GetProfileTemplateOutput#profile_template #profile_template} => Types::ProfileTemplate + # + # @example Response structure + # + # resp.profile_template.template_name #=> String + # resp.profile_template.template_questions #=> Array + # resp.profile_template.template_questions[0].question_id #=> String + # resp.profile_template.template_questions[0].question_title #=> String + # resp.profile_template.template_questions[0].question_description #=> String + # resp.profile_template.template_questions[0].question_choices #=> Array + # resp.profile_template.template_questions[0].question_choices[0].choice_id #=> String + # resp.profile_template.template_questions[0].question_choices[0].choice_title #=> String + # resp.profile_template.template_questions[0].question_choices[0].choice_description #=> String + # resp.profile_template.template_questions[0].min_selected_choices #=> Integer + # resp.profile_template.template_questions[0].max_selected_choices #=> Integer + # resp.profile_template.created_at #=> Time + # resp.profile_template.updated_at #=> Time + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetProfileTemplate AWS API Documentation + # + # @overload get_profile_template(params = {}) + # @param [Hash] params ({}) + def get_profile_template(params = {}, options = {}) + req = build_request(:get_profile_template, params) + req.send_request(options) + end + # Get an existing workload. # # @option params [required, String] :workload_id # The ID assigned to the workload. This ID is unique within an Amazon # Web Services Region. @@ -1770,10 +2142,15 @@ # resp.workload.discovery_config.trusted_advisor_integration_status #=> String, one of "ENABLED", "DISABLED" # resp.workload.discovery_config.workload_resource_definition #=> Array # resp.workload.discovery_config.workload_resource_definition[0] #=> String, one of "WORKLOAD_METADATA", "APP_REGISTRY" # resp.workload.applications #=> Array # resp.workload.applications[0] #=> String + # resp.workload.profiles #=> Array + # resp.workload.profiles[0].profile_arn #=> String + # resp.workload.profiles[0].profile_version #=> String + # resp.workload.prioritized_risk_counts #=> Hash + # resp.workload.prioritized_risk_counts["Risk"] #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/GetWorkload AWS API Documentation # # @overload get_workload(params = {}) # @param [Hash] params ({}) @@ -1913,10 +2290,13 @@ # The token to use to retrieve the next set of results. # # @option params [Integer] :max_results # The maximum number of results to return for this request. # + # @option params [String] :question_priority + # The priority of the question. + # # @return [Types::ListAnswersOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListAnswersOutput#workload_id #workload_id} => String # * {Types::ListAnswersOutput#milestone_number #milestone_number} => Integer # * {Types::ListAnswersOutput#lens_alias #lens_alias} => String @@ -1933,10 +2313,11 @@ # lens_alias: "LensAlias", # required # pillar_id: "PillarId", # milestone_number: 1, # next_token: "NextToken", # max_results: 1, + # question_priority: "PRIORITIZED", # accepts PRIORITIZED, NONE # }) # # @example Response structure # # resp.workload_id #=> String @@ -1967,10 +2348,11 @@ # resp.answer_summaries[0].choice_answer_summaries[0].status #=> String, one of "SELECTED", "NOT_APPLICABLE", "UNSELECTED" # resp.answer_summaries[0].choice_answer_summaries[0].reason #=> String, one of "OUT_OF_SCOPE", "BUSINESS_PRIORITIES", "ARCHITECTURE_CONSTRAINTS", "OTHER", "NONE" # resp.answer_summaries[0].is_applicable #=> Boolean # resp.answer_summaries[0].risk #=> String, one of "UNANSWERED", "HIGH", "MEDIUM", "NONE", "NOT_APPLICABLE" # resp.answer_summaries[0].reason #=> String, one of "OUT_OF_SCOPE", "BUSINESS_PRIORITIES", "ARCHITECTURE_CONSTRAINTS", "OTHER", "NONE" + # resp.answer_summaries[0].question_type #=> String, one of "PRIORITIZED", "NON_PRIORITIZED" # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListAnswers AWS API Documentation # # @overload list_answers(params = {}) @@ -2159,10 +2541,13 @@ # The token to use to retrieve the next set of results. # # @option params [Integer] :max_results # The maximum number of results to return for this request. # + # @option params [String] :question_priority + # The priority of the question. + # # @return [Types::ListLensReviewImprovementsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListLensReviewImprovementsOutput#workload_id #workload_id} => String # * {Types::ListLensReviewImprovementsOutput#milestone_number #milestone_number} => Integer # * {Types::ListLensReviewImprovementsOutput#lens_alias #lens_alias} => String @@ -2179,10 +2564,11 @@ # lens_alias: "LensAlias", # required # pillar_id: "PillarId", # milestone_number: 1, # next_token: "NextToken", # max_results: 1, + # question_priority: "PRIORITIZED", # accepts PRIORITIZED, NONE # }) # # @example Response structure # # resp.workload_id #=> String @@ -2256,10 +2642,15 @@ # resp.lens_review_summaries[0].lens_name #=> String # resp.lens_review_summaries[0].lens_status #=> String, one of "CURRENT", "NOT_CURRENT", "DEPRECATED", "DELETED", "UNSHARED" # resp.lens_review_summaries[0].updated_at #=> Time # resp.lens_review_summaries[0].risk_counts #=> Hash # resp.lens_review_summaries[0].risk_counts["Risk"] #=> Integer + # resp.lens_review_summaries[0].profiles #=> Array + # resp.lens_review_summaries[0].profiles[0].profile_arn #=> String + # resp.lens_review_summaries[0].profiles[0].profile_version #=> String + # resp.lens_review_summaries[0].prioritized_risk_counts #=> Hash + # resp.lens_review_summaries[0].prioritized_risk_counts["Risk"] #=> Integer # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListLensReviews AWS API Documentation # # @overload list_lens_reviews(params = {}) @@ -2294,11 +2685,11 @@ # # @option params [Integer] :max_results # The maximum number of results to return for this request. # # @option params [String] :status - # The status of a workload share. + # The status of the share request. # # @return [Types::ListLensSharesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListLensSharesOutput#lens_share_summaries #lens_share_summaries} => Array&lt;Types::LensShareSummary&gt; # * {Types::ListLensSharesOutput#next_token #next_token} => String @@ -2434,10 +2825,15 @@ # resp.milestone_summaries[0].workload_summary.lenses #=> Array # resp.milestone_summaries[0].workload_summary.lenses[0] #=> String # resp.milestone_summaries[0].workload_summary.risk_counts #=> Hash # resp.milestone_summaries[0].workload_summary.risk_counts["Risk"] #=> Integer # resp.milestone_summaries[0].workload_summary.improvement_status #=> String, one of "NOT_APPLICABLE", "NOT_STARTED", "IN_PROGRESS", "COMPLETE", "RISK_ACKNOWLEDGED" + # resp.milestone_summaries[0].workload_summary.profiles #=> Array + # resp.milestone_summaries[0].workload_summary.profiles[0].profile_arn #=> String + # resp.milestone_summaries[0].workload_summary.profiles[0].profile_version #=> String + # resp.milestone_summaries[0].workload_summary.prioritized_risk_counts #=> Hash + # resp.milestone_summaries[0].workload_summary.prioritized_risk_counts["Risk"] #=> Integer # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListMilestones AWS API Documentation # # @overload list_milestones(params = {}) @@ -2493,10 +2889,162 @@ def list_notifications(params = {}, options = {}) req = build_request(:list_notifications, params) req.send_request(options) end + # List profile notifications. + # + # @option params [String] :workload_id + # The ID assigned to the workload. This ID is unique within an Amazon + # Web Services Region. + # + # @option params [String] :next_token + # The token to use to retrieve the next set of results. + # + # @option params [Integer] :max_results + # The maximum number of results to return for this request. + # + # @return [Types::ListProfileNotificationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListProfileNotificationsOutput#notification_summaries #notification_summaries} => Array&lt;Types::ProfileNotificationSummary&gt; + # * {Types::ListProfileNotificationsOutput#next_token #next_token} => String + # + # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. + # + # @example Request syntax with placeholder values + # + # resp = client.list_profile_notifications({ + # workload_id: "WorkloadId", + # next_token: "NextToken", + # max_results: 1, + # }) + # + # @example Response structure + # + # resp.notification_summaries #=> Array + # resp.notification_summaries[0].current_profile_version #=> String + # resp.notification_summaries[0].latest_profile_version #=> String + # resp.notification_summaries[0].type #=> String, one of "PROFILE_ANSWERS_UPDATED", "PROFILE_DELETED" + # resp.notification_summaries[0].profile_arn #=> String + # resp.notification_summaries[0].profile_name #=> String + # resp.notification_summaries[0].workload_id #=> String + # resp.notification_summaries[0].workload_name #=> String + # resp.next_token #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileNotifications AWS API Documentation + # + # @overload list_profile_notifications(params = {}) + # @param [Hash] params ({}) + def list_profile_notifications(params = {}, options = {}) + req = build_request(:list_profile_notifications, params) + req.send_request(options) + end + + # List profile shares. + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [String] :shared_with_prefix + # The Amazon Web Services account ID, IAM role, organization ID, or + # organizational unit (OU) ID with which the profile is shared. + # + # @option params [String] :next_token + # The token to use to retrieve the next set of results. + # + # @option params [Integer] :max_results + # The maximum number of results to return for this request. + # + # @option params [String] :status + # The status of the share request. + # + # @return [Types::ListProfileSharesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListProfileSharesOutput#profile_share_summaries #profile_share_summaries} => Array&lt;Types::ProfileShareSummary&gt; + # * {Types::ListProfileSharesOutput#next_token #next_token} => String + # + # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. + # + # @example Request syntax with placeholder values + # + # resp = client.list_profile_shares({ + # profile_arn: "ProfileArn", # required + # shared_with_prefix: "SharedWithPrefix", + # next_token: "NextToken", + # max_results: 1, + # status: "ACCEPTED", # accepts ACCEPTED, REJECTED, PENDING, REVOKED, EXPIRED, ASSOCIATING, ASSOCIATED, FAILED + # }) + # + # @example Response structure + # + # resp.profile_share_summaries #=> Array + # resp.profile_share_summaries[0].share_id #=> String + # resp.profile_share_summaries[0].shared_with #=> String + # resp.profile_share_summaries[0].status #=> String, one of "ACCEPTED", "REJECTED", "PENDING", "REVOKED", "EXPIRED", "ASSOCIATING", "ASSOCIATED", "FAILED" + # resp.profile_share_summaries[0].status_message #=> String + # resp.next_token #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfileShares AWS API Documentation + # + # @overload list_profile_shares(params = {}) + # @param [Hash] params ({}) + def list_profile_shares(params = {}, options = {}) + req = build_request(:list_profile_shares, params) + req.send_request(options) + end + + # List profiles. + # + # @option params [String] :profile_name_prefix + # Prefix for profile name. + # + # @option params [String] :profile_owner_type + # Profile owner type. + # + # @option params [String] :next_token + # The token to use to retrieve the next set of results. + # + # @option params [Integer] :max_results + # The maximum number of results to return for this request. + # + # @return [Types::ListProfilesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::ListProfilesOutput#profile_summaries #profile_summaries} => Array&lt;Types::ProfileSummary&gt; + # * {Types::ListProfilesOutput#next_token #next_token} => String + # + # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}. + # + # @example Request syntax with placeholder values + # + # resp = client.list_profiles({ + # profile_name_prefix: "ProfileNamePrefix", + # profile_owner_type: "SELF", # accepts SELF, SHARED + # next_token: "NextToken", + # max_results: 1, + # }) + # + # @example Response structure + # + # resp.profile_summaries #=> Array + # resp.profile_summaries[0].profile_arn #=> String + # resp.profile_summaries[0].profile_version #=> String + # resp.profile_summaries[0].profile_name #=> String + # resp.profile_summaries[0].profile_description #=> String + # resp.profile_summaries[0].owner #=> String + # resp.profile_summaries[0].created_at #=> Time + # resp.profile_summaries[0].updated_at #=> Time + # resp.next_token #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListProfiles AWS API Documentation + # + # @overload list_profiles(params = {}) + # @param [Hash] params ({}) + def list_profiles(params = {}, options = {}) + req = build_request(:list_profiles, params) + req.send_request(options) + end + # List the workload invitations. # # @option params [String] :workload_name_prefix # An optional string added to the beginning of each workload name # returned in the results. @@ -2512,10 +3060,13 @@ # The token to use to retrieve the next set of results. # # @option params [Integer] :max_results # The maximum number of results to return for this request. # + # @option params [String] :profile_name_prefix + # Profile name prefix. + # # @return [Types::ListShareInvitationsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListShareInvitationsOutput#share_invitation_summaries #share_invitation_summaries} => Array&lt;Types::ShareInvitationSummary&gt; # * {Types::ListShareInvitationsOutput#next_token #next_token} => String # @@ -2524,27 +3075,30 @@ # @example Request syntax with placeholder values # # resp = client.list_share_invitations({ # workload_name_prefix: "WorkloadNamePrefix", # lens_name_prefix: "LensNamePrefix", - # share_resource_type: "WORKLOAD", # accepts WORKLOAD, LENS + # share_resource_type: "WORKLOAD", # accepts WORKLOAD, LENS, PROFILE # next_token: "NextToken", # max_results: 1, + # profile_name_prefix: "ProfileNamePrefix", # }) # # @example Response structure # # resp.share_invitation_summaries #=> Array # resp.share_invitation_summaries[0].share_invitation_id #=> String # resp.share_invitation_summaries[0].shared_by #=> String # resp.share_invitation_summaries[0].shared_with #=> String # resp.share_invitation_summaries[0].permission_type #=> String, one of "READONLY", "CONTRIBUTOR" - # resp.share_invitation_summaries[0].share_resource_type #=> String, one of "WORKLOAD", "LENS" + # resp.share_invitation_summaries[0].share_resource_type #=> String, one of "WORKLOAD", "LENS", "PROFILE" # resp.share_invitation_summaries[0].workload_name #=> String # resp.share_invitation_summaries[0].workload_id #=> String # resp.share_invitation_summaries[0].lens_name #=> String # resp.share_invitation_summaries[0].lens_arn #=> String + # resp.share_invitation_summaries[0].profile_name #=> String + # resp.share_invitation_summaries[0].profile_arn #=> String # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListShareInvitations AWS API Documentation # # @overload list_share_invitations(params = {}) @@ -2554,12 +3108,12 @@ req.send_request(options) end # List the tags for a resource. # - # <note markdown="1"> The WorkloadArn parameter can be either a workload ARN or a custom - # lens ARN. + # <note markdown="1"> The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or + # a profile ARN. # # </note> # # @option params [required, String] :workload_arn # The ARN for the workload. @@ -2603,11 +3157,11 @@ # # @option params [Integer] :max_results # The maximum number of results to return for this request. # # @option params [String] :status - # The status of a workload share. + # The status of the share request. # # @return [Types::ListWorkloadSharesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::ListWorkloadSharesOutput#workload_id #workload_id} => String # * {Types::ListWorkloadSharesOutput#workload_share_summaries #workload_share_summaries} => Array&lt;Types::WorkloadShareSummary&gt; @@ -2683,10 +3237,15 @@ # resp.workload_summaries[0].lenses #=> Array # resp.workload_summaries[0].lenses[0] #=> String # resp.workload_summaries[0].risk_counts #=> Hash # resp.workload_summaries[0].risk_counts["Risk"] #=> Integer # resp.workload_summaries[0].improvement_status #=> String, one of "NOT_APPLICABLE", "NOT_STARTED", "IN_PROGRESS", "COMPLETE", "RISK_ACKNOWLEDGED" + # resp.workload_summaries[0].profiles #=> Array + # resp.workload_summaries[0].profiles[0].profile_arn #=> String + # resp.workload_summaries[0].profiles[0].profile_version #=> String + # resp.workload_summaries[0].prioritized_risk_counts #=> Hash + # resp.workload_summaries[0].prioritized_risk_counts["Risk"] #=> Integer # resp.next_token #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/ListWorkloads AWS API Documentation # # @overload list_workloads(params = {}) @@ -2696,12 +3255,12 @@ req.send_request(options) end # Adds one or more tags to the specified resource. # - # <note markdown="1"> The WorkloadArn parameter can be either a workload ARN or a custom - # lens ARN. + # <note markdown="1"> The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or + # a profile ARN. # # </note> # # @option params [required, String] :workload_arn # The ARN for the workload. @@ -2729,12 +3288,12 @@ req.send_request(options) end # Deletes specified tags from a resource. # - # <note markdown="1"> The WorkloadArn parameter can be either a workload ARN or a custom - # lens ARN. + # <note markdown="1"> The WorkloadArn parameter can be a workload ARN, a custom lens ARN, or + # a profile ARN. # # </note> # # To specify multiple tags, use separate **tagKeys** parameters, for # example: @@ -2960,25 +3519,94 @@ # resp.lens_review.pillar_review_summaries[0].pillar_id #=> String # resp.lens_review.pillar_review_summaries[0].pillar_name #=> String # resp.lens_review.pillar_review_summaries[0].notes #=> String # resp.lens_review.pillar_review_summaries[0].risk_counts #=> Hash # resp.lens_review.pillar_review_summaries[0].risk_counts["Risk"] #=> Integer + # resp.lens_review.pillar_review_summaries[0].prioritized_risk_counts #=> Hash + # resp.lens_review.pillar_review_summaries[0].prioritized_risk_counts["Risk"] #=> Integer # resp.lens_review.updated_at #=> Time # resp.lens_review.notes #=> String # resp.lens_review.risk_counts #=> Hash # resp.lens_review.risk_counts["Risk"] #=> Integer # resp.lens_review.next_token #=> String + # resp.lens_review.profiles #=> Array + # resp.lens_review.profiles[0].profile_arn #=> String + # resp.lens_review.profiles[0].profile_version #=> String + # resp.lens_review.prioritized_risk_counts #=> Hash + # resp.lens_review.prioritized_risk_counts["Risk"] #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateLensReview AWS API Documentation # # @overload update_lens_review(params = {}) # @param [Hash] params ({}) def update_lens_review(params = {}, options = {}) req = build_request(:update_lens_review, params) req.send_request(options) end + # Update a profile. + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [String] :profile_description + # The profile description. + # + # @option params [Array<Types::ProfileQuestionUpdate>] :profile_questions + # Profile questions. + # + # @return [Types::UpdateProfileOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: + # + # * {Types::UpdateProfileOutput#profile #profile} => Types::Profile + # + # @example Request syntax with placeholder values + # + # resp = client.update_profile({ + # profile_arn: "ProfileArn", # required + # profile_description: "ProfileDescription", + # profile_questions: [ + # { + # question_id: "QuestionId", + # selected_choice_ids: ["ChoiceId"], + # }, + # ], + # }) + # + # @example Response structure + # + # resp.profile.profile_arn #=> String + # resp.profile.profile_version #=> String + # resp.profile.profile_name #=> String + # resp.profile.profile_description #=> String + # resp.profile.profile_questions #=> Array + # resp.profile.profile_questions[0].question_id #=> String + # resp.profile.profile_questions[0].question_title #=> String + # resp.profile.profile_questions[0].question_description #=> String + # resp.profile.profile_questions[0].question_choices #=> Array + # resp.profile.profile_questions[0].question_choices[0].choice_id #=> String + # resp.profile.profile_questions[0].question_choices[0].choice_title #=> String + # resp.profile.profile_questions[0].question_choices[0].choice_description #=> String + # resp.profile.profile_questions[0].selected_choice_ids #=> Array + # resp.profile.profile_questions[0].selected_choice_ids[0] #=> String + # resp.profile.profile_questions[0].min_selected_choices #=> Integer + # resp.profile.profile_questions[0].max_selected_choices #=> Integer + # resp.profile.owner #=> String + # resp.profile.created_at #=> Time + # resp.profile.updated_at #=> Time + # resp.profile.share_invitation_id #=> String + # resp.profile.tags #=> Hash + # resp.profile.tags["TagKey"] #=> String + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateProfile AWS API Documentation + # + # @overload update_profile(params = {}) + # @param [Hash] params ({}) + def update_profile(params = {}, options = {}) + req = build_request(:update_profile, params) + req.send_request(options) + end + # Update a workload or custom lens share invitation. # # <note markdown="1"> This API operation can be called independently of any resource. # Previous documentation implied that a workload ARN must be specified. # @@ -3002,14 +3630,15 @@ # }) # # @example Response structure # # resp.share_invitation.share_invitation_id #=> String - # resp.share_invitation.share_resource_type #=> String, one of "WORKLOAD", "LENS" + # resp.share_invitation.share_resource_type #=> String, one of "WORKLOAD", "LENS", "PROFILE" # resp.share_invitation.workload_id #=> String # resp.share_invitation.lens_alias #=> String # resp.share_invitation.lens_arn #=> String + # resp.share_invitation.profile_arn #=> String # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateShareInvitation AWS API Documentation # # @overload update_share_invitation(params = {}) # @param [Hash] params ({}) @@ -3209,10 +3838,15 @@ # resp.workload.discovery_config.trusted_advisor_integration_status #=> String, one of "ENABLED", "DISABLED" # resp.workload.discovery_config.workload_resource_definition #=> Array # resp.workload.discovery_config.workload_resource_definition[0] #=> String, one of "WORKLOAD_METADATA", "APP_REGISTRY" # resp.workload.applications #=> Array # resp.workload.applications[0] #=> String + # resp.workload.profiles #=> Array + # resp.workload.profiles[0].profile_arn #=> String + # resp.workload.profiles[0].profile_version #=> String + # resp.workload.prioritized_risk_counts #=> Hash + # resp.workload.prioritized_risk_counts["Risk"] #=> Integer # # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpdateWorkload AWS API Documentation # # @overload update_workload(params = {}) # @param [Hash] params ({}) @@ -3222,18 +3856,18 @@ end # Update a workload share. # # @option params [required, String] :share_id - # The ID associated with the workload share. + # The ID associated with the share. # # @option params [required, String] :workload_id # The ID assigned to the workload. This ID is unique within an Amazon # Web Services Region. # # @option params [required, String] :permission_type - # Permission granted on a workload share. + # Permission granted on a share request. # # @return [Types::UpdateWorkloadShareOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods: # # * {Types::UpdateWorkloadShareOutput#workload_id #workload_id} => String # * {Types::UpdateWorkloadShareOutput#workload_share #workload_share} => Types::WorkloadShare @@ -3323,10 +3957,61 @@ def upgrade_lens_review(params = {}, options = {}) req = build_request(:upgrade_lens_review, params) req.send_request(options) end + # Upgrade a profile. + # + # @option params [required, String] :workload_id + # The ID assigned to the workload. This ID is unique within an Amazon + # Web Services Region. + # + # @option params [required, String] :profile_arn + # The profile ARN. + # + # @option params [String] :milestone_name + # The name of the milestone in a workload. + # + # Milestone names must be unique within a workload. + # + # @option params [String] :client_request_token + # A unique case-sensitive string used to ensure that this request is + # idempotent (executes only once). + # + # You should not reuse the same token for other requests. If you retry a + # request with the same client request token and the same parameters + # after the original request has completed successfully, the result of + # the original request is returned. + # + # This token is listed as required, however, if you do not specify it, + # the Amazon Web Services SDKs automatically generate one for you. If + # you are not using the Amazon Web Services SDK or the CLI, you must + # provide this token or the request will fail. + # + # **A suitable default value is auto-generated.** You should normally + # not need to pass this option.** + # + # @return [Struct] Returns an empty {Seahorse::Client::Response response}. + # + # @example Request syntax with placeholder values + # + # resp = client.upgrade_profile_version({ + # workload_id: "WorkloadId", # required + # profile_arn: "ProfileArn", # required + # milestone_name: "MilestoneName", + # client_request_token: "ClientRequestToken", + # }) + # + # @see http://docs.aws.amazon.com/goto/WebAPI/wellarchitected-2020-03-31/UpgradeProfileVersion AWS API Documentation + # + # @overload upgrade_profile_version(params = {}) + # @param [Hash] params ({}) + def upgrade_profile_version(params = {}, options = {}) + req = build_request(:upgrade_profile_version, params) + req.send_request(options) + end + # @!endgroup # @param params ({}) # @api private def build_request(operation_name, params = {}) @@ -3336,10 +4021,10 @@ operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-wellarchitected' - context[:gem_version] = '1.23.0' + context[:gem_version] = '1.24.0' Seahorse::Client::Request.new(handlers, context) end # @api private # @deprecated