Skip to content

The .NET app includes a curated list of helper functions with ability to perform advanced Requester tasks programmatically on Amazon Mechanical Turk crowdsourcing platform.

License

Notifications You must be signed in to change notification settings

ehsan-ashik/mturk-api-helpers-console-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Amazon MTurk Requester API Helpers - .NET Console App

The .NET app includes a curated list of helper functions with ability to perform advanced Requester tasks programmatically on Amazon Mechanical Turk crowdsourcing platform. The app leverages AWS MTurk SDKs toward performing the requester jobs that typically cannot be done from the MTurk Web Requester Portal.

Features

  1. Includes a curated list of helper functions that perform advanced Requester taks (e.g., emailing Workers) on MTurk.
  2. Supports generating excel worksheets with Worker data based on QualificationTypes.
  3. Supports Logging mechanism for sensitive tasks such as sending emails to workers along wth functionality to forward email logs to the Requester.

List of Available MTurk API Helpers

  • ListAllHITs - List all the HITs associated with the Requester Account
  • GetWorkerIdsForHit - Get all the Workers who completed a specific HIT
  • GetQualificationType - Get QualificationType object from the provided name
  • GetQualificationTypeId - Get ID of the QualificationType object from the provided name
  • AssignQualificationTypeToWorkers - Assigns QualificationType to Workers from a specific HIT or from a list of workers
  • RemoveQualificationTypeFromWorkers - Removes QualificationType from all workers in the HIT
  • GenerateBatchDataForWorkersWithQualificationTypeExcel - Generate a list of all Workers assigned to a QualficationType and save the result in a excel file in the current directory
  • SendMessageToWorker - Send a email message to a certain Worker with a speific Subject and Message
  • SendMessageToWorkers - Send email to a lis of Workers while generating logs of the email sending job and sending out log email to the Requester

Dependencies

Here are a list of dependencies for the app:

Usage (Visual Studio)

  1. Clone the repo using the command: git clone https://github.com/ehsan-ashik/mturk-api-helpers.git
  2. Open the MTurkAPIHelpers.sln with Visual Studio
  3. Set the AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET (AWS IAM/root user with permission to access Mechanical Turk) properties in the MTurkAPIHelpers/Constants/Config file.
  4. Build and Run the Solution.

Usage (VS Code/Command Line)

Here are a list of steps to run the app locally:

  1. Clone the repo using the command: git clone https://github.com/ehsan-ashik/mturk-api-helpers.git
  2. Open the repo with code and cd into MTurkAPIHelpers
  3. Set the AWS_ACCESS_KEY_ID and AWS_ACCESS_KEY_SECRET (AWS IAM/root user with permission to access Mechanical Turk) properties in the MTurkAPIHelpers/Constants/Config file.
  4. Build the project in the command line with the command: dotnet build
  5. Run the project with the command: dotnet run

References

  1. Tutorial to setup/link AWS account with Mturk - https://docs.aws.amazon.com/AWSMechTurk/latest/AWSMechanicalTurkGettingStartedGuide/SetUp.html
  2. Creating IAM user in AWS - https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html
  3. Adding permission to the IAM User - https://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_change-permissions.html

About

The .NET app includes a curated list of helper functions with ability to perform advanced Requester tasks programmatically on Amazon Mechanical Turk crowdsourcing platform.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages