3.0.2 • Published 9 years ago
mturk-api v3.0.2
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
Operation | Required Parameters | Unit 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 } | ✓ |
GetAccountBalance | None | ✓ |
GetAssignment | { AssignmentId:String } | |
GetAssignmentsForHIT | { HITId:String } | |
GetBlockedWorkers | None | ✓ |
GetBonusPayments | { HITId:String } OR { AssignmentId:String } | |
GetFileUploadURL | { AssignmentId:String, QuestionIdentifier:String } | |
GetHIT | { HITId:String } | ✓ |
GetHITsForQualificationType | { QualificationTypeId:String } | |
GetQualificationsForQualificationType | { QualificationTypeId:String } | |
GetQualificationRequests | None | |
GetQualificationScore | { QualificationTypeId:String, SubjectId:String} | |
GetQualificationType | { QualificationTypeId:String } | |
GetRequesterStatistic | { Statistic:String, TimePeriod:String } | |
GetRequesterWorkerStatistic | {Statistic:String, WorkerId:String, TimePeriod:String } | |
GetReviewableHITs | None | |
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 } | |
SearchHITs | None | ✓ |
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