/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace MTurk { /** * Amazon Mechanical Turk API Reference */ class AWS_MTURK_API MTurkClient : public Aws::Client::AWSJsonClient, public Aws::Client::ClientWithAsyncTemplateMethods { public: typedef Aws::Client::AWSJsonClient BASECLASS; static const char* SERVICE_NAME; static const char* ALLOCATION_TAG; typedef MTurkClientConfiguration ClientConfigurationType; typedef MTurkEndpointProvider EndpointProviderType; /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ MTurkClient(const Aws::MTurk::MTurkClientConfiguration& clientConfiguration = Aws::MTurk::MTurkClientConfiguration(), std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG)); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ MTurkClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::MTurk::MTurkClientConfiguration& clientConfiguration = Aws::MTurk::MTurkClientConfiguration()); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ MTurkClient(const std::shared_ptr& credentialsProvider, std::shared_ptr endpointProvider = Aws::MakeShared(ALLOCATION_TAG), const Aws::MTurk::MTurkClientConfiguration& clientConfiguration = Aws::MTurk::MTurkClientConfiguration()); /* Legacy constructors due deprecation */ /** * Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ MTurkClient(const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config * is not specified, it will be initialized to default values. */ MTurkClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration); /** * Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied, * the default http client factory will be used */ MTurkClient(const std::shared_ptr& credentialsProvider, const Aws::Client::ClientConfiguration& clientConfiguration); /* End of legacy constructors due deprecation */ virtual ~MTurkClient(); /** *

The AcceptQualificationRequest operation approves a Worker's * request for a Qualification.

Only the owner of the Qualification type * can grant a Qualification request for that type.

A successful request * for the AcceptQualificationRequest operation returns with no errors * and an empty body.

See Also:

AWS * API Reference

*/ virtual Model::AcceptQualificationRequestOutcome AcceptQualificationRequest(const Model::AcceptQualificationRequestRequest& request) const; /** * A Callable wrapper for AcceptQualificationRequest that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AcceptQualificationRequestOutcomeCallable AcceptQualificationRequestCallable(const AcceptQualificationRequestRequestT& request) const { return SubmitCallable(&MTurkClient::AcceptQualificationRequest, request); } /** * An Async wrapper for AcceptQualificationRequest that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AcceptQualificationRequestAsync(const AcceptQualificationRequestRequestT& request, const AcceptQualificationRequestResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::AcceptQualificationRequest, request, handler, context); } /** *

The ApproveAssignment operation approves the results of a * completed assignment.

Approving an assignment initiates two payments * from the Requester's Amazon.com account

  • The Worker who * submitted the results is paid the reward specified in the HIT.

  • *

    Amazon Mechanical Turk fees are debited.

If the * Requester's account does not have adequate funds for these payments, the call to * ApproveAssignment returns an exception, and the approval is not processed. You * can include an optional feedback message with the approval, which the Worker can * see in the Status section of the web site.

You can also call this * operation for assignments that were previous rejected and approve them by * explicitly overriding the previous rejection. This only works on rejected * assignments that were submitted within the previous 30 days and only if the * assignment's related HIT has not been deleted.

See Also:

AWS * API Reference

*/ virtual Model::ApproveAssignmentOutcome ApproveAssignment(const Model::ApproveAssignmentRequest& request) const; /** * A Callable wrapper for ApproveAssignment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ApproveAssignmentOutcomeCallable ApproveAssignmentCallable(const ApproveAssignmentRequestT& request) const { return SubmitCallable(&MTurkClient::ApproveAssignment, request); } /** * An Async wrapper for ApproveAssignment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ApproveAssignmentAsync(const ApproveAssignmentRequestT& request, const ApproveAssignmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ApproveAssignment, request, handler, context); } /** *

The AssociateQualificationWithWorker operation gives a Worker a * Qualification. AssociateQualificationWithWorker does not require * that the Worker submit a Qualification request. It gives the Qualification * directly to the Worker.

You can only assign a Qualification of a * Qualification type that you created (using the * CreateQualificationType operation).

Note: * AssociateQualificationWithWorker does not affect any pending * Qualification requests for the Qualification by the Worker. If you assign a * Qualification to a Worker, then later grant a Qualification request made by the * Worker, the granting of the request may modify the Qualification score. To * resolve a pending Qualification request without affecting the Qualification the * Worker already has, reject the request with the * RejectQualificationRequest operation.

See * Also:

AWS * API Reference

*/ virtual Model::AssociateQualificationWithWorkerOutcome AssociateQualificationWithWorker(const Model::AssociateQualificationWithWorkerRequest& request) const; /** * A Callable wrapper for AssociateQualificationWithWorker that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::AssociateQualificationWithWorkerOutcomeCallable AssociateQualificationWithWorkerCallable(const AssociateQualificationWithWorkerRequestT& request) const { return SubmitCallable(&MTurkClient::AssociateQualificationWithWorker, request); } /** * An Async wrapper for AssociateQualificationWithWorker that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void AssociateQualificationWithWorkerAsync(const AssociateQualificationWithWorkerRequestT& request, const AssociateQualificationWithWorkerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::AssociateQualificationWithWorker, request, handler, context); } /** *

The CreateAdditionalAssignmentsForHIT operation increases the * maximum number of assignments of an existing HIT.

To extend the maximum * number of assignments, specify the number of additional assignments.

*
  • HITs created with fewer than 10 assignments cannot be extended to * have 10 or more assignments. Attempting to add assignments in a way that brings * the total number of assignments for a HIT from fewer than 10 assignments to 10 * or more assignments will result in an * AWS.MechanicalTurk.InvalidMaximumAssignmentsIncrease exception.

    *
  • HITs that were created before July 22, 2015 cannot be extended. * Attempting to extend HITs that were created before July 22, 2015 will result in * an AWS.MechanicalTurk.HITTooOldForExtension exception.

  • *

See Also:

AWS * API Reference

*/ virtual Model::CreateAdditionalAssignmentsForHITOutcome CreateAdditionalAssignmentsForHIT(const Model::CreateAdditionalAssignmentsForHITRequest& request) const; /** * A Callable wrapper for CreateAdditionalAssignmentsForHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateAdditionalAssignmentsForHITOutcomeCallable CreateAdditionalAssignmentsForHITCallable(const CreateAdditionalAssignmentsForHITRequestT& request) const { return SubmitCallable(&MTurkClient::CreateAdditionalAssignmentsForHIT, request); } /** * An Async wrapper for CreateAdditionalAssignmentsForHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateAdditionalAssignmentsForHITAsync(const CreateAdditionalAssignmentsForHITRequestT& request, const CreateAdditionalAssignmentsForHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::CreateAdditionalAssignmentsForHIT, request, handler, context); } /** *

The CreateHIT operation creates a new Human Intelligence Task * (HIT). The new HIT is made available for Workers to find and accept on the * Amazon Mechanical Turk website.

This operation allows you to specify a * new HIT by passing in values for the properties of the HIT, such as its title, * reward amount and number of assignments. When you pass these values to * CreateHIT, a new HIT is created for you, with a new * HITTypeID. The HITTypeID can be used to create additional HITs in * the future without needing to specify common parameters such as the title, * description and reward amount each time.

An alternative way to create * HITs is to first generate a HITTypeID using the CreateHITType * operation and then call the CreateHITWithHITType operation. This is * the recommended best practice for Requesters who are creating large numbers of * HITs.

CreateHIT also supports several ways to provide question data: by * providing a value for the Question parameter that fully specifies * the contents of the HIT, or by providing a HitLayoutId and * associated HitLayoutParameters.

If a HIT is created * with 10 or more maximum assignments, there is an additional fee. For more * information, see Amazon Mechanical * Turk Pricing.

See Also:

AWS * API Reference

*/ virtual Model::CreateHITOutcome CreateHIT(const Model::CreateHITRequest& request) const; /** * A Callable wrapper for CreateHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateHITOutcomeCallable CreateHITCallable(const CreateHITRequestT& request) const { return SubmitCallable(&MTurkClient::CreateHIT, request); } /** * An Async wrapper for CreateHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateHITAsync(const CreateHITRequestT& request, const CreateHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::CreateHIT, request, handler, context); } /** *

The CreateHITType operation creates a new HIT type. This * operation allows you to define a standard set of HIT properties to use when * creating HITs. If you register a HIT type with values that match an existing HIT * type, the HIT type ID of the existing type will be returned.

See * Also:

AWS * API Reference

*/ virtual Model::CreateHITTypeOutcome CreateHITType(const Model::CreateHITTypeRequest& request) const; /** * A Callable wrapper for CreateHITType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateHITTypeOutcomeCallable CreateHITTypeCallable(const CreateHITTypeRequestT& request) const { return SubmitCallable(&MTurkClient::CreateHITType, request); } /** * An Async wrapper for CreateHITType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateHITTypeAsync(const CreateHITTypeRequestT& request, const CreateHITTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::CreateHITType, request, handler, context); } /** *

The CreateHITWithHITType operation creates a new Human * Intelligence Task (HIT) using an existing HITTypeID generated by the * CreateHITType operation.

This is an alternative way to * create HITs from the CreateHIT operation. This is the recommended * best practice for Requesters who are creating large numbers of HITs.

*

CreateHITWithHITType also supports several ways to provide question data: by * providing a value for the Question parameter that fully specifies * the contents of the HIT, or by providing a HitLayoutId and * associated HitLayoutParameters.

If a HIT is created * with 10 or more maximum assignments, there is an additional fee. For more * information, see Amazon Mechanical * Turk Pricing.

See Also:

AWS * API Reference

*/ virtual Model::CreateHITWithHITTypeOutcome CreateHITWithHITType(const Model::CreateHITWithHITTypeRequest& request) const; /** * A Callable wrapper for CreateHITWithHITType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateHITWithHITTypeOutcomeCallable CreateHITWithHITTypeCallable(const CreateHITWithHITTypeRequestT& request) const { return SubmitCallable(&MTurkClient::CreateHITWithHITType, request); } /** * An Async wrapper for CreateHITWithHITType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateHITWithHITTypeAsync(const CreateHITWithHITTypeRequestT& request, const CreateHITWithHITTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::CreateHITWithHITType, request, handler, context); } /** *

The CreateQualificationType operation creates a new * Qualification type, which is represented by a QualificationType * data structure.

See Also:

AWS * API Reference

*/ virtual Model::CreateQualificationTypeOutcome CreateQualificationType(const Model::CreateQualificationTypeRequest& request) const; /** * A Callable wrapper for CreateQualificationType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateQualificationTypeOutcomeCallable CreateQualificationTypeCallable(const CreateQualificationTypeRequestT& request) const { return SubmitCallable(&MTurkClient::CreateQualificationType, request); } /** * An Async wrapper for CreateQualificationType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateQualificationTypeAsync(const CreateQualificationTypeRequestT& request, const CreateQualificationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::CreateQualificationType, request, handler, context); } /** *

The CreateWorkerBlock operation allows you to prevent a Worker * from working on your HITs. For example, you can block a Worker who is producing * poor quality work. You can block up to 100,000 Workers.

See Also:

* AWS * API Reference

*/ virtual Model::CreateWorkerBlockOutcome CreateWorkerBlock(const Model::CreateWorkerBlockRequest& request) const; /** * A Callable wrapper for CreateWorkerBlock that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::CreateWorkerBlockOutcomeCallable CreateWorkerBlockCallable(const CreateWorkerBlockRequestT& request) const { return SubmitCallable(&MTurkClient::CreateWorkerBlock, request); } /** * An Async wrapper for CreateWorkerBlock that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void CreateWorkerBlockAsync(const CreateWorkerBlockRequestT& request, const CreateWorkerBlockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::CreateWorkerBlock, request, handler, context); } /** *

The DeleteHIT operation is used to delete HIT that is no longer * needed. Only the Requester who created the HIT can delete it.

You can * only dispose of HITs that are in the Reviewable state, with all of * their submitted assignments already either approved or rejected. If you call the * DeleteHIT operation on a HIT that is not in the Reviewable state * (for example, that has not expired, or still has active assignments), or on a * HIT that is Reviewable but without all of its submitted assignments already * approved or rejected, the service will return an error.

  • *

    HITs are automatically disposed of after 120 days.

  • After * you dispose of a HIT, you can no longer approve the HIT's rejected assignments. *

  • Disposed HITs are not returned in results for the ListHITs * operation.

  • Disposing HITs can improve the performance of * operations such as ListReviewableHITs and ListHITs.

*

See Also:

AWS * API Reference

*/ virtual Model::DeleteHITOutcome DeleteHIT(const Model::DeleteHITRequest& request) const; /** * A Callable wrapper for DeleteHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteHITOutcomeCallable DeleteHITCallable(const DeleteHITRequestT& request) const { return SubmitCallable(&MTurkClient::DeleteHIT, request); } /** * An Async wrapper for DeleteHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteHITAsync(const DeleteHITRequestT& request, const DeleteHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::DeleteHIT, request, handler, context); } /** *

The DeleteQualificationType deletes a Qualification type and * deletes any HIT types that are associated with the Qualification type.

*

This operation does not revoke Qualifications already assigned to Workers * because the Qualifications might be needed for active HITs. If there are any * pending requests for the Qualification type, Amazon Mechanical Turk rejects * those requests. After you delete a Qualification type, you can no longer use it * to create HITs or HIT types.

DeleteQualificationType must wait for * all the HITs that use the deleted Qualification type to be deleted before * completing. It may take up to 48 hours before DeleteQualificationType completes * and the unique name of the Qualification type is available for reuse with * CreateQualificationType.

See Also:

AWS * API Reference

*/ virtual Model::DeleteQualificationTypeOutcome DeleteQualificationType(const Model::DeleteQualificationTypeRequest& request) const; /** * A Callable wrapper for DeleteQualificationType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteQualificationTypeOutcomeCallable DeleteQualificationTypeCallable(const DeleteQualificationTypeRequestT& request) const { return SubmitCallable(&MTurkClient::DeleteQualificationType, request); } /** * An Async wrapper for DeleteQualificationType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteQualificationTypeAsync(const DeleteQualificationTypeRequestT& request, const DeleteQualificationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::DeleteQualificationType, request, handler, context); } /** *

The DeleteWorkerBlock operation allows you to reinstate a * blocked Worker to work on your HITs. This operation reverses the effects of the * CreateWorkerBlock operation. You need the Worker ID to use this operation. If * the Worker ID is missing or invalid, this operation fails and returns the * message “WorkerId is invalid.” If the specified Worker is not blocked, this * operation returns successfully.

See Also:

AWS * API Reference

*/ virtual Model::DeleteWorkerBlockOutcome DeleteWorkerBlock(const Model::DeleteWorkerBlockRequest& request) const; /** * A Callable wrapper for DeleteWorkerBlock that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DeleteWorkerBlockOutcomeCallable DeleteWorkerBlockCallable(const DeleteWorkerBlockRequestT& request) const { return SubmitCallable(&MTurkClient::DeleteWorkerBlock, request); } /** * An Async wrapper for DeleteWorkerBlock that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DeleteWorkerBlockAsync(const DeleteWorkerBlockRequestT& request, const DeleteWorkerBlockResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::DeleteWorkerBlock, request, handler, context); } /** *

The DisassociateQualificationFromWorker revokes a previously * granted Qualification from a user.

You can provide a text message * explaining why the Qualification was revoked. The user who had the Qualification * can see this message.

See Also:

AWS * API Reference

*/ virtual Model::DisassociateQualificationFromWorkerOutcome DisassociateQualificationFromWorker(const Model::DisassociateQualificationFromWorkerRequest& request) const; /** * A Callable wrapper for DisassociateQualificationFromWorker that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::DisassociateQualificationFromWorkerOutcomeCallable DisassociateQualificationFromWorkerCallable(const DisassociateQualificationFromWorkerRequestT& request) const { return SubmitCallable(&MTurkClient::DisassociateQualificationFromWorker, request); } /** * An Async wrapper for DisassociateQualificationFromWorker that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void DisassociateQualificationFromWorkerAsync(const DisassociateQualificationFromWorkerRequestT& request, const DisassociateQualificationFromWorkerResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::DisassociateQualificationFromWorker, request, handler, context); } /** *

The GetAccountBalance operation retrieves the Prepaid HITs * balance in your Amazon Mechanical Turk account if you are a Prepaid Requester. * Alternatively, this operation will retrieve the remaining available AWS Billing * usage if you have enabled AWS Billing. Note: If you have enabled AWS Billing and * still have a remaining Prepaid HITs balance, this balance can be viewed on the * My Account page in the Requester console.

See Also:

AWS * API Reference

*/ virtual Model::GetAccountBalanceOutcome GetAccountBalance(const Model::GetAccountBalanceRequest& request) const; /** * A Callable wrapper for GetAccountBalance that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetAccountBalanceOutcomeCallable GetAccountBalanceCallable(const GetAccountBalanceRequestT& request) const { return SubmitCallable(&MTurkClient::GetAccountBalance, request); } /** * An Async wrapper for GetAccountBalance that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetAccountBalanceAsync(const GetAccountBalanceRequestT& request, const GetAccountBalanceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::GetAccountBalance, request, handler, context); } /** *

The GetAssignment operation retrieves the details of the * specified Assignment.

See Also:

AWS * API Reference

*/ virtual Model::GetAssignmentOutcome GetAssignment(const Model::GetAssignmentRequest& request) const; /** * A Callable wrapper for GetAssignment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetAssignmentOutcomeCallable GetAssignmentCallable(const GetAssignmentRequestT& request) const { return SubmitCallable(&MTurkClient::GetAssignment, request); } /** * An Async wrapper for GetAssignment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetAssignmentAsync(const GetAssignmentRequestT& request, const GetAssignmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::GetAssignment, request, handler, context); } /** *

The GetFileUploadURL operation generates and returns a * temporary URL. You use the temporary URL to retrieve a file uploaded by a Worker * as an answer to a FileUploadAnswer question for a HIT. The temporary URL is * generated the instant the GetFileUploadURL operation is called, and is valid for * 60 seconds. You can get a temporary file upload URL any time until the HIT is * disposed. After the HIT is disposed, any uploaded files are deleted, and cannot * be retrieved. Pending Deprecation on December 12, 2017. The Answer Specification * structure will no longer support the FileUploadAnswer element to be * used for the QuestionForm data structure. Instead, we recommend that Requesters * who want to create HITs asking Workers to upload files to use Amazon S3. *

See Also:

AWS * API Reference

*/ virtual Model::GetFileUploadURLOutcome GetFileUploadURL(const Model::GetFileUploadURLRequest& request) const; /** * A Callable wrapper for GetFileUploadURL that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetFileUploadURLOutcomeCallable GetFileUploadURLCallable(const GetFileUploadURLRequestT& request) const { return SubmitCallable(&MTurkClient::GetFileUploadURL, request); } /** * An Async wrapper for GetFileUploadURL that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetFileUploadURLAsync(const GetFileUploadURLRequestT& request, const GetFileUploadURLResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::GetFileUploadURL, request, handler, context); } /** *

The GetHIT operation retrieves the details of the specified * HIT.

See Also:

AWS * API Reference

*/ virtual Model::GetHITOutcome GetHIT(const Model::GetHITRequest& request) const; /** * A Callable wrapper for GetHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetHITOutcomeCallable GetHITCallable(const GetHITRequestT& request) const { return SubmitCallable(&MTurkClient::GetHIT, request); } /** * An Async wrapper for GetHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetHITAsync(const GetHITRequestT& request, const GetHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::GetHIT, request, handler, context); } /** *

The GetQualificationScore operation returns the value of a * Worker's Qualification for a given Qualification type.

To get a * Worker's Qualification, you must know the Worker's ID. The Worker's ID is * included in the assignment data returned by the * ListAssignmentsForHIT operation.

Only the owner of a * Qualification type can query the value of a Worker's Qualification of that * type.

See Also:

AWS * API Reference

*/ virtual Model::GetQualificationScoreOutcome GetQualificationScore(const Model::GetQualificationScoreRequest& request) const; /** * A Callable wrapper for GetQualificationScore that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetQualificationScoreOutcomeCallable GetQualificationScoreCallable(const GetQualificationScoreRequestT& request) const { return SubmitCallable(&MTurkClient::GetQualificationScore, request); } /** * An Async wrapper for GetQualificationScore that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetQualificationScoreAsync(const GetQualificationScoreRequestT& request, const GetQualificationScoreResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::GetQualificationScore, request, handler, context); } /** *

The GetQualificationTypeoperation retrieves information about a * Qualification type using its ID.

See Also:

AWS * API Reference

*/ virtual Model::GetQualificationTypeOutcome GetQualificationType(const Model::GetQualificationTypeRequest& request) const; /** * A Callable wrapper for GetQualificationType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::GetQualificationTypeOutcomeCallable GetQualificationTypeCallable(const GetQualificationTypeRequestT& request) const { return SubmitCallable(&MTurkClient::GetQualificationType, request); } /** * An Async wrapper for GetQualificationType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void GetQualificationTypeAsync(const GetQualificationTypeRequestT& request, const GetQualificationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::GetQualificationType, request, handler, context); } /** *

The ListAssignmentsForHIT operation retrieves completed * assignments for a HIT. You can use this operation to retrieve the results for a * HIT.

You can get assignments for a HIT at any time, even if the HIT is * not yet Reviewable. If a HIT requested multiple assignments, and has received * some results but has not yet become Reviewable, you can still retrieve the * partial results with this operation.

Use the AssignmentStatus parameter * to control which set of assignments for a HIT are returned. The * ListAssignmentsForHIT operation can return submitted assignments awaiting * approval, or it can return assignments that have already been approved or * rejected. You can set AssignmentStatus=Approved,Rejected to get assignments that * have already been approved and rejected together in one result set.

* Only the Requester who created the HIT can retrieve the assignments for that * HIT.

Results are sorted and divided into numbered pages and the * operation returns a single page of results. You can use the parameters of the * operation to control sorting and pagination.

See Also:

AWS * API Reference

*/ virtual Model::ListAssignmentsForHITOutcome ListAssignmentsForHIT(const Model::ListAssignmentsForHITRequest& request) const; /** * A Callable wrapper for ListAssignmentsForHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListAssignmentsForHITOutcomeCallable ListAssignmentsForHITCallable(const ListAssignmentsForHITRequestT& request) const { return SubmitCallable(&MTurkClient::ListAssignmentsForHIT, request); } /** * An Async wrapper for ListAssignmentsForHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListAssignmentsForHITAsync(const ListAssignmentsForHITRequestT& request, const ListAssignmentsForHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListAssignmentsForHIT, request, handler, context); } /** *

The ListBonusPayments operation retrieves the amounts of * bonuses you have paid to Workers for a given HIT or assignment.

See * Also:

AWS * API Reference

*/ virtual Model::ListBonusPaymentsOutcome ListBonusPayments(const Model::ListBonusPaymentsRequest& request) const; /** * A Callable wrapper for ListBonusPayments that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListBonusPaymentsOutcomeCallable ListBonusPaymentsCallable(const ListBonusPaymentsRequestT& request) const { return SubmitCallable(&MTurkClient::ListBonusPayments, request); } /** * An Async wrapper for ListBonusPayments that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListBonusPaymentsAsync(const ListBonusPaymentsRequestT& request, const ListBonusPaymentsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListBonusPayments, request, handler, context); } /** *

The ListHITs operation returns all of a Requester's HITs. The * operation returns HITs of any status, except for HITs that have been deleted of * with the DeleteHIT operation or that have been auto-deleted.

See * Also:

AWS * API Reference

*/ virtual Model::ListHITsOutcome ListHITs(const Model::ListHITsRequest& request) const; /** * A Callable wrapper for ListHITs that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListHITsOutcomeCallable ListHITsCallable(const ListHITsRequestT& request) const { return SubmitCallable(&MTurkClient::ListHITs, request); } /** * An Async wrapper for ListHITs that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListHITsAsync(const ListHITsRequestT& request, const ListHITsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListHITs, request, handler, context); } /** *

The ListHITsForQualificationType operation returns the HITs * that use the given Qualification type for a Qualification requirement. The * operation returns HITs of any status, except for HITs that have been deleted * with the DeleteHIT operation or that have been auto-deleted. *

See Also:

AWS * API Reference

*/ virtual Model::ListHITsForQualificationTypeOutcome ListHITsForQualificationType(const Model::ListHITsForQualificationTypeRequest& request) const; /** * A Callable wrapper for ListHITsForQualificationType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListHITsForQualificationTypeOutcomeCallable ListHITsForQualificationTypeCallable(const ListHITsForQualificationTypeRequestT& request) const { return SubmitCallable(&MTurkClient::ListHITsForQualificationType, request); } /** * An Async wrapper for ListHITsForQualificationType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListHITsForQualificationTypeAsync(const ListHITsForQualificationTypeRequestT& request, const ListHITsForQualificationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListHITsForQualificationType, request, handler, context); } /** *

The ListQualificationRequests operation retrieves requests for * Qualifications of a particular Qualification type. The owner of the * Qualification type calls this operation to poll for pending requests, and * accepts them using the AcceptQualification operation.

See Also:

* AWS * API Reference

*/ virtual Model::ListQualificationRequestsOutcome ListQualificationRequests(const Model::ListQualificationRequestsRequest& request) const; /** * A Callable wrapper for ListQualificationRequests that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListQualificationRequestsOutcomeCallable ListQualificationRequestsCallable(const ListQualificationRequestsRequestT& request) const { return SubmitCallable(&MTurkClient::ListQualificationRequests, request); } /** * An Async wrapper for ListQualificationRequests that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListQualificationRequestsAsync(const ListQualificationRequestsRequestT& request, const ListQualificationRequestsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListQualificationRequests, request, handler, context); } /** *

The ListQualificationTypes operation returns a list of * Qualification types, filtered by an optional search term.

See * Also:

AWS * API Reference

*/ virtual Model::ListQualificationTypesOutcome ListQualificationTypes(const Model::ListQualificationTypesRequest& request) const; /** * A Callable wrapper for ListQualificationTypes that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListQualificationTypesOutcomeCallable ListQualificationTypesCallable(const ListQualificationTypesRequestT& request) const { return SubmitCallable(&MTurkClient::ListQualificationTypes, request); } /** * An Async wrapper for ListQualificationTypes that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListQualificationTypesAsync(const ListQualificationTypesRequestT& request, const ListQualificationTypesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListQualificationTypes, request, handler, context); } /** *

The ListReviewPolicyResultsForHIT operation retrieves the * computed results and the actions taken in the course of executing your Review * Policies for a given HIT. For information about how to specify Review Policies * when you call CreateHIT, see Review Policies. The ListReviewPolicyResultsForHIT * operation can return results for both Assignment-level and HIT-level review * results.

See Also:

AWS * API Reference

*/ virtual Model::ListReviewPolicyResultsForHITOutcome ListReviewPolicyResultsForHIT(const Model::ListReviewPolicyResultsForHITRequest& request) const; /** * A Callable wrapper for ListReviewPolicyResultsForHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListReviewPolicyResultsForHITOutcomeCallable ListReviewPolicyResultsForHITCallable(const ListReviewPolicyResultsForHITRequestT& request) const { return SubmitCallable(&MTurkClient::ListReviewPolicyResultsForHIT, request); } /** * An Async wrapper for ListReviewPolicyResultsForHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListReviewPolicyResultsForHITAsync(const ListReviewPolicyResultsForHITRequestT& request, const ListReviewPolicyResultsForHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListReviewPolicyResultsForHIT, request, handler, context); } /** *

The ListReviewableHITs operation retrieves the HITs with Status * equal to Reviewable or Status equal to Reviewing that belong to the Requester * calling the operation.

See Also:

AWS * API Reference

*/ virtual Model::ListReviewableHITsOutcome ListReviewableHITs(const Model::ListReviewableHITsRequest& request) const; /** * A Callable wrapper for ListReviewableHITs that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListReviewableHITsOutcomeCallable ListReviewableHITsCallable(const ListReviewableHITsRequestT& request) const { return SubmitCallable(&MTurkClient::ListReviewableHITs, request); } /** * An Async wrapper for ListReviewableHITs that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListReviewableHITsAsync(const ListReviewableHITsRequestT& request, const ListReviewableHITsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListReviewableHITs, request, handler, context); } /** *

The ListWorkersBlocks operation retrieves a list of Workers who * are blocked from working on your HITs.

See Also:

AWS * API Reference

*/ virtual Model::ListWorkerBlocksOutcome ListWorkerBlocks(const Model::ListWorkerBlocksRequest& request) const; /** * A Callable wrapper for ListWorkerBlocks that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListWorkerBlocksOutcomeCallable ListWorkerBlocksCallable(const ListWorkerBlocksRequestT& request) const { return SubmitCallable(&MTurkClient::ListWorkerBlocks, request); } /** * An Async wrapper for ListWorkerBlocks that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListWorkerBlocksAsync(const ListWorkerBlocksRequestT& request, const ListWorkerBlocksResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListWorkerBlocks, request, handler, context); } /** *

The ListWorkersWithQualificationType operation returns all of * the Workers that have been associated with a given Qualification type. *

See Also:

AWS * API Reference

*/ virtual Model::ListWorkersWithQualificationTypeOutcome ListWorkersWithQualificationType(const Model::ListWorkersWithQualificationTypeRequest& request) const; /** * A Callable wrapper for ListWorkersWithQualificationType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::ListWorkersWithQualificationTypeOutcomeCallable ListWorkersWithQualificationTypeCallable(const ListWorkersWithQualificationTypeRequestT& request) const { return SubmitCallable(&MTurkClient::ListWorkersWithQualificationType, request); } /** * An Async wrapper for ListWorkersWithQualificationType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void ListWorkersWithQualificationTypeAsync(const ListWorkersWithQualificationTypeRequestT& request, const ListWorkersWithQualificationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::ListWorkersWithQualificationType, request, handler, context); } /** *

The NotifyWorkers operation sends an email to one or more * Workers that you specify with the Worker ID. You can specify up to 100 Worker * IDs to send the same message with a single call to the NotifyWorkers operation. * The NotifyWorkers operation will send a notification email to a Worker only if * you have previously approved or rejected work from the Worker.

See * Also:

AWS * API Reference

*/ virtual Model::NotifyWorkersOutcome NotifyWorkers(const Model::NotifyWorkersRequest& request) const; /** * A Callable wrapper for NotifyWorkers that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::NotifyWorkersOutcomeCallable NotifyWorkersCallable(const NotifyWorkersRequestT& request) const { return SubmitCallable(&MTurkClient::NotifyWorkers, request); } /** * An Async wrapper for NotifyWorkers that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void NotifyWorkersAsync(const NotifyWorkersRequestT& request, const NotifyWorkersResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::NotifyWorkers, request, handler, context); } /** *

The RejectAssignment operation rejects the results of a * completed assignment.

You can include an optional feedback message with * the rejection, which the Worker can see in the Status section of the web site. * When you include a feedback message with the rejection, it helps the Worker * understand why the assignment was rejected, and can improve the quality of the * results the Worker submits in the future.

Only the Requester who * created the HIT can reject an assignment for the HIT.

See Also:

* AWS * API Reference

*/ virtual Model::RejectAssignmentOutcome RejectAssignment(const Model::RejectAssignmentRequest& request) const; /** * A Callable wrapper for RejectAssignment that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RejectAssignmentOutcomeCallable RejectAssignmentCallable(const RejectAssignmentRequestT& request) const { return SubmitCallable(&MTurkClient::RejectAssignment, request); } /** * An Async wrapper for RejectAssignment that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RejectAssignmentAsync(const RejectAssignmentRequestT& request, const RejectAssignmentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::RejectAssignment, request, handler, context); } /** *

The RejectQualificationRequest operation rejects a user's * request for a Qualification.

You can provide a text message explaining * why the request was rejected. The Worker who made the request can see this * message.

See Also:

AWS * API Reference

*/ virtual Model::RejectQualificationRequestOutcome RejectQualificationRequest(const Model::RejectQualificationRequestRequest& request) const; /** * A Callable wrapper for RejectQualificationRequest that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::RejectQualificationRequestOutcomeCallable RejectQualificationRequestCallable(const RejectQualificationRequestRequestT& request) const { return SubmitCallable(&MTurkClient::RejectQualificationRequest, request); } /** * An Async wrapper for RejectQualificationRequest that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void RejectQualificationRequestAsync(const RejectQualificationRequestRequestT& request, const RejectQualificationRequestResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::RejectQualificationRequest, request, handler, context); } /** *

The SendBonus operation issues a payment of money from your * account to a Worker. This payment happens separately from the reward you pay to * the Worker when you approve the Worker's assignment. The SendBonus operation * requires the Worker's ID and the assignment ID as parameters to initiate payment * of the bonus. You must include a message that explains the reason for the bonus * payment, as the Worker may not be expecting the payment. Amazon Mechanical Turk * collects a fee for bonus payments, similar to the HIT listing fee. This * operation fails if your account does not have enough funds to pay for both the * bonus and the fees.

See Also:

AWS * API Reference

*/ virtual Model::SendBonusOutcome SendBonus(const Model::SendBonusRequest& request) const; /** * A Callable wrapper for SendBonus that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::SendBonusOutcomeCallable SendBonusCallable(const SendBonusRequestT& request) const { return SubmitCallable(&MTurkClient::SendBonus, request); } /** * An Async wrapper for SendBonus that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void SendBonusAsync(const SendBonusRequestT& request, const SendBonusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::SendBonus, request, handler, context); } /** *

The SendTestEventNotification operation causes Amazon * Mechanical Turk to send a notification message as if a HIT event occurred, * according to the provided notification specification. This allows you to test * notifications without setting up notifications for a real HIT type and trying to * trigger them using the website. When you call this operation, the service * attempts to send the test notification immediately.

See Also:

* AWS * API Reference

*/ virtual Model::SendTestEventNotificationOutcome SendTestEventNotification(const Model::SendTestEventNotificationRequest& request) const; /** * A Callable wrapper for SendTestEventNotification that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::SendTestEventNotificationOutcomeCallable SendTestEventNotificationCallable(const SendTestEventNotificationRequestT& request) const { return SubmitCallable(&MTurkClient::SendTestEventNotification, request); } /** * An Async wrapper for SendTestEventNotification that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void SendTestEventNotificationAsync(const SendTestEventNotificationRequestT& request, const SendTestEventNotificationResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::SendTestEventNotification, request, handler, context); } /** *

The UpdateExpirationForHIT operation allows you update the * expiration time of a HIT. If you update it to a time in the past, the HIT will * be immediately expired.

See Also:

AWS * API Reference

*/ virtual Model::UpdateExpirationForHITOutcome UpdateExpirationForHIT(const Model::UpdateExpirationForHITRequest& request) const; /** * A Callable wrapper for UpdateExpirationForHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateExpirationForHITOutcomeCallable UpdateExpirationForHITCallable(const UpdateExpirationForHITRequestT& request) const { return SubmitCallable(&MTurkClient::UpdateExpirationForHIT, request); } /** * An Async wrapper for UpdateExpirationForHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateExpirationForHITAsync(const UpdateExpirationForHITRequestT& request, const UpdateExpirationForHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::UpdateExpirationForHIT, request, handler, context); } /** *

The UpdateHITReviewStatus operation updates the status of a * HIT. If the status is Reviewable, this operation can update the status to * Reviewing, or it can revert a Reviewing HIT back to the Reviewable status. *

See Also:

AWS * API Reference

*/ virtual Model::UpdateHITReviewStatusOutcome UpdateHITReviewStatus(const Model::UpdateHITReviewStatusRequest& request) const; /** * A Callable wrapper for UpdateHITReviewStatus that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateHITReviewStatusOutcomeCallable UpdateHITReviewStatusCallable(const UpdateHITReviewStatusRequestT& request) const { return SubmitCallable(&MTurkClient::UpdateHITReviewStatus, request); } /** * An Async wrapper for UpdateHITReviewStatus that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateHITReviewStatusAsync(const UpdateHITReviewStatusRequestT& request, const UpdateHITReviewStatusResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::UpdateHITReviewStatus, request, handler, context); } /** *

The UpdateHITTypeOfHIT operation allows you to change the * HITType properties of a HIT. This operation disassociates the HIT from its old * HITType properties and associates it with the new HITType properties. The HIT * takes on the properties of the new HITType in place of the old ones. *

See Also:

AWS * API Reference

*/ virtual Model::UpdateHITTypeOfHITOutcome UpdateHITTypeOfHIT(const Model::UpdateHITTypeOfHITRequest& request) const; /** * A Callable wrapper for UpdateHITTypeOfHIT that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateHITTypeOfHITOutcomeCallable UpdateHITTypeOfHITCallable(const UpdateHITTypeOfHITRequestT& request) const { return SubmitCallable(&MTurkClient::UpdateHITTypeOfHIT, request); } /** * An Async wrapper for UpdateHITTypeOfHIT that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateHITTypeOfHITAsync(const UpdateHITTypeOfHITRequestT& request, const UpdateHITTypeOfHITResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::UpdateHITTypeOfHIT, request, handler, context); } /** *

The UpdateNotificationSettings operation creates, updates, * disables or re-enables notifications for a HIT type. If you call the * UpdateNotificationSettings operation for a HIT type that already has a * notification specification, the operation replaces the old specification with a * new one. You can call the UpdateNotificationSettings operation to enable or * disable notifications for the HIT type, without having to modify the * notification specification itself by providing updates to the Active status * without specifying a new notification specification. To change the Active status * of a HIT type's notifications, the HIT type must already have a notification * specification, or one must be provided in the same call to * UpdateNotificationSettings.

See Also:

AWS * API Reference

*/ virtual Model::UpdateNotificationSettingsOutcome UpdateNotificationSettings(const Model::UpdateNotificationSettingsRequest& request) const; /** * A Callable wrapper for UpdateNotificationSettings that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateNotificationSettingsOutcomeCallable UpdateNotificationSettingsCallable(const UpdateNotificationSettingsRequestT& request) const { return SubmitCallable(&MTurkClient::UpdateNotificationSettings, request); } /** * An Async wrapper for UpdateNotificationSettings that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateNotificationSettingsAsync(const UpdateNotificationSettingsRequestT& request, const UpdateNotificationSettingsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::UpdateNotificationSettings, request, handler, context); } /** *

The UpdateQualificationType operation modifies the attributes * of an existing Qualification type, which is represented by a QualificationType * data structure. Only the owner of a Qualification type can modify its * attributes.

Most attributes of a Qualification type can be changed * after the type has been created. However, the Name and Keywords fields cannot be * modified. The RetryDelayInSeconds parameter can be modified or added to change * the delay or to enable retries, but RetryDelayInSeconds cannot be used to * disable retries.

You can use this operation to update the test for a * Qualification type. The test is updated based on the values specified for the * Test, TestDurationInSeconds and AnswerKey parameters. All three parameters * specify the updated test. If you are updating the test for a type, you must * specify the Test and TestDurationInSeconds parameters. The AnswerKey parameter * is optional; omitting it specifies that the updated test does not have an answer * key.

If you omit the Test parameter, the test for the Qualification * type is unchanged. There is no way to remove a test from a Qualification type * that has one. If the type already has a test, you cannot update it to be * AutoGranted. If the Qualification type does not have a test and one is provided * by an update, the type will henceforth have a test.

If you want to * update the test duration or answer key for an existing test without changing the * questions, you must specify a Test parameter with the original questions, along * with the updated values.

If you provide an updated Test but no * AnswerKey, the new test will not have an answer key. Requests for such * Qualifications must be granted manually.

You can also update the * AutoGranted and AutoGrantedValue attributes of the Qualification * type.

See Also:

AWS * API Reference

*/ virtual Model::UpdateQualificationTypeOutcome UpdateQualificationType(const Model::UpdateQualificationTypeRequest& request) const; /** * A Callable wrapper for UpdateQualificationType that returns a future to the operation so that it can be executed in parallel to other requests. */ template Model::UpdateQualificationTypeOutcomeCallable UpdateQualificationTypeCallable(const UpdateQualificationTypeRequestT& request) const { return SubmitCallable(&MTurkClient::UpdateQualificationType, request); } /** * An Async wrapper for UpdateQualificationType that queues the request into a thread executor and triggers associated callback when operation has finished. */ template void UpdateQualificationTypeAsync(const UpdateQualificationTypeRequestT& request, const UpdateQualificationTypeResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const { return SubmitAsync(&MTurkClient::UpdateQualificationType, request, handler, context); } void OverrideEndpoint(const Aws::String& endpoint); std::shared_ptr& accessEndpointProvider(); private: friend class Aws::Client::ClientWithAsyncTemplateMethods; void init(const MTurkClientConfiguration& clientConfiguration); MTurkClientConfiguration m_clientConfiguration; std::shared_ptr m_executor; std::shared_ptr m_endpointProvider; }; } // namespace MTurk } // namespace Aws