@chbrown's MTurk notes

Command line interface

Shortcut syntax for non-default sandbox URL:

SANDBOX="--endpoint-url https://mturk-requester-sandbox.us-east-1.amazonaws.com"

Get your account balance, in production (the default):

aws mturk get-account-balance

And in the sandbox:

aws mturk get-account-balance $SANDBOX

Create a HIT with an external URL (in the sandbox):

aws mturk create-hit $SANDBOX \
  --max-assignments 9 \
  --auto-approval-delay-in-seconds 86400 \
  --lifetime-in-seconds 7200 \
  --assignment-duration-in-seconds 3600 \
  --reward 0.06 \
  --title "Test integration with Qualtrics survey backend" \
  --description "Demonstrate that you can successfully use the embedded Qualtrics survey." \
  --question '<ExternalQuestion xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2006-07-14/ExternalQuestion.xsd"><ExternalURL>https://qualtrics.com/jfe/form/SV_YourFormId</ExternalURL><FrameHeight>600</FrameHeight></ExternalQuestion>'

Tack on this at the end, in production, to require the Masters qualification:

  --qualification-requirements QualificationTypeId=2F1QJWKUDD8XADTFD2Q0G6UTO95ALH,Comparator=Exists

Conversions

The aws mturk command line expects its time-based arguments to be in seconds.

Here’s a reference with some standard timing amounts.

Seconds Description
2419200 4 weeks
1814400 3 weeks
1209600 2 weeks
604800 1 week
518400 6 days
432000 5 days
345600 4 days
259200 3 days
172800 2 days
86400 1 day
64800 18 hours
43200 12 hours
21600 6 hours
14400 4 hours
10800 3 hours
7200 2 hours
5400 90 minutes
3600 1 hour
2700 45 minutes
1800 30 minutes
900 15 minutes
600 10 minutes
300 5 minutes
120 2 minutes
60 1 minute

aws mturk man pages

create-hit subcommand

Qualifications

Reference: API - Data Structures - QualificationRequirement

There are several “system” (built-in) qualifications:

Name Production Sandbox (if ≠ Production)
Masters 2F1QJWKUDD8XADTFD2Q0G6UTO95ALH 2ARFPLSP75KLA8M8DH1HTEQVJT3SY6
Worker_NumberHITsApproved 00000000000000000040  
Worker_Locale 00000000000000000071  
Worker_Adult 00000000000000000060  
Worker_PercentAssignmentsApproved (integer between 0 and 100) 000000000000000000L0