3.0.2 • Published 9 years ago

mturk-api v3.0.2

Weekly downloads
50
License
MIT
Repository
github
Last release
9 years ago

NPM version Downloads

alt text

Install

npm install mturk-api

Basic usage

var mturk = require('mturk-api');

var config = {
    access : 'ACCESS_KEY_GOES_HERE',
    secret : 'SECRET_KEY_GOES_HERE',
    sandbox: true
}


mturk.createClient(config).then(function(api){


  api.req('GetAccountBalance').then(function(res){
    //Do something
  }).catch(console.error);


  //Example operation, with params
  api.req('SearchHITs', { PageSize: 100 }).then(function(res){
     //Do something
  }).catch(console.error)


  //MTurk limits the velocity of requests. Normally,
  //if you exceed their request rate-limit, you will receive a
  //'503 Service Unavailable' response. As of v2.0, our interface
  //automatically throttles your requests to 3 per second.
  for(var i=0; i < 20; i++){
    //These requests will be queued and executed at a rate of 3 per second
    api.req('SearchHITs', { PageNumber: i }).then(function(res){
      //Do something
    }).catch(console.error);
  }


}).catch(console.error);

###Create HIT Example

//Import an XML file. You can use one of our examples in the templates folder *
fs.readFile('./templates/HTMLQuestion.xml', 'utf8', function(err, unescapedXML){
  if(err){console.error(err);return}
  
  //HIT options
  var params = {
    Title: "Create HIT Example",
    Description: "An example of how to create a HIT",
    Question: _.escape(unescapedXML),//IMPORTANT: XML NEEDS TO BE ESCAPED!
    AssignmentDurationInSeconds: 180, // Allow 3 minutes to answer
    AutoApprovalDelayInSeconds: 86400 * 1, // 1 day auto approve
    MaxAssignments: 100, // 100 worker responses
    LifetimeInSeconds: 86400 * 3, // Expire in 3 days
    Reward: {CurrencyCode:'USD', Amount:0.50}
  };
  
  api.req('CreateHIT', params).then(function(res){
    //DO SOMETHING
  }).catch(console.error);
  
})

* To see the all available Question templates, go to our templates folder

Supported API Operations

OperationRequired ParametersUnit test
ApproveAssignment{ AssignmentId:String }
ApproveRejectedAssignment{ AssignmentId:String }
AssignQualification{ QualificationTypeId:String, WorkerId:String }
BlockWorker{ WorkerId:String, Reason:String }
ChangeHITTypeOfHIT{ HITId:String, HITTypeId:String}
CreateHIT{ Title:String, Description:String, AssignmentDurationInSeconds:Number, LifetimeInSeconds:Number } OR {HITTypeId:String, LifetimeInSeconds:Number }
CreateQualificationType{ Name:String, Description:String, QualificationTypeStatus:String }
DisableHIT{ HITId:String }
DisposeHIT{ HITId:String }
DisposeQualificationType{QualificationTypeId:String}
ExtendHIT{ HITId:String }
ForceExpireHIT{ HITId:String }
GetAccountBalanceNone
GetAssignment{ AssignmentId:String }
GetAssignmentsForHIT{ HITId:String }
GetBlockedWorkersNone
GetBonusPayments{ HITId:String } OR { AssignmentId:String }
GetFileUploadURL{ AssignmentId:String, QuestionIdentifier:String }
GetHIT{ HITId:String }
GetHITsForQualificationType{ QualificationTypeId:String }
GetQualificationsForQualificationType{ QualificationTypeId:String }
GetQualificationRequestsNone
GetQualificationScore{ QualificationTypeId:String, SubjectId:String}
GetQualificationType{ QualificationTypeId:String }
GetRequesterStatistic{ Statistic:String, TimePeriod:String }
GetRequesterWorkerStatistic{Statistic:String, WorkerId:String, TimePeriod:String }
GetReviewableHITsNone
GetReviewResultsForHIT{ HITId:String }
GrantBonus{ WorkerId:String, AssignmentId:String, BonusAmount:Object, Reason:String }
GrantQualification{ QualificationRequestId:String }
NotifyWorkers{ Subject:String, MessageText:String, WorkerId:Array}
RegisterHITType{ Title:String, Description:String, Reward:Object, AssignmentDurationInSeconds:Number }
RejectAssignment{ AssignmentId:String }
RejectQualificationRequest{ QualificationRequestId:String }
RevokeQualification{ Subject:String, QualificationTypeId:String, Reason:String }
SearchHITsNone
SearchQualificationTypes{ MustBeRequestable:Boolean }
SendTestEventNotification{ Notification:Object, TestEventType:Object }
SetHITAsReviewing{ HITId:String }
SetHITTypeNotification{ HITTypeId:String, Notification:Object, }
UnblockWorker{ WorkerId:String, }
UpdateQualificationScore{ QualificationTypeId:String, SubjectId:String, IntegerValue:Number }
UpdateQualificationType{ QualificationTypeId:String }

License

MIT © Jose Barrios

Banner derived from Cosmin Cuciureanu's BrainUP

3.0.2

9 years ago

3.0.1

9 years ago

2.2.2

9 years ago

2.2.1

9 years ago

2.2.0

9 years ago

2.1.1

9 years ago

2.1.0

9 years ago

2.0.1

9 years ago

2.0.0

9 years ago

3.0.0

9 years ago

1.3.5

9 years ago

1.3.4

9 years ago

1.3.2

10 years ago

1.3.1

10 years ago

1.3.0

10 years ago

1.2.1

10 years ago

1.2.0

10 years ago

1.1.2

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.10

10 years ago

1.0.9

10 years ago

1.0.8

10 years ago

1.0.7

10 years ago

1.0.5

10 years ago

1.0.4

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago

0.0.13

10 years ago

0.0.12

10 years ago

0.0.11

10 years ago

0.0.10

10 years ago

0.0.9

10 years ago

0.0.8

10 years ago

0.0.7

10 years ago

0.0.6

10 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago