HIT Types

HIT Types

In many common uses of Mechanical Turk, you will want to ask many questions of the same kind, such as identifying an object in each of thousands of photos. A single Worker can answer one or many of these questions. To make it easy for Workers to find your HITs, Mechanical Turk groups similar HITs together, and Workers search and browse the groups. If a Worker qualifies for HITs in the group, the Worker may preview a single HIT, then accept it and begin work. When a Worker completes one HIT in a group, Mechanical Turk shows the Worker another HIT from the same group. Most Workers will complete many similar HITs in a single session.

Mechanical Turk groups HITs together based on their HIT type. A HIT type is defined by the values for a set of common properties. Two HITs with identical values for these properties are considered to be of the same HIT type, and appear in the same group on the Mechanical Turk web site.

Your application can use HIT types to manage different kinds of work. Each HIT type has a HIT type ID, which your application can use to query for HITs of a particular type. The HIT type ID may also be used with the CreateHIT operation in place of the common property values, to ensure that the new HIT will be assigned the same type as other HITs.

Properties of a HIT Type

The HIT properties that define a HIT type are the following:

  • Title

  • Description

  • Keywords

  • Reward

  • AssignmentDurationInSeconds

  • AutoApprovalDelayInSeconds

  • A set of zero or more QualificationRequirements

How HIT Types Are Created

You can explicitly register a new HIT type by calling the RegisterHITType operation. This operation takes values for the common parameters, and returns a HIT type ID for the type that matches the values. You can create HITs using the new type by calling the CreateHIT operation with the type ID, and values for the properties specific to the HIT (such as the Question).

You can create a HIT without specifying a HIT type ID by passing values for the common parameters directly to the call to CreateHIT . If the values match an existing HIT type, the HIT will be given the existing type. If the values do not match an existing HIT type, a new type is created with those values. In either case, the HIT type ID is returned with the HIT data in the response from the call to CreateHIT .

[Tip]Tip

To avoid accidentally passing mismatched values for two HITs that ought to be part of the same type, register the HIT type using the RegisterHITType operation, then create the HITs using the HIT type ID.

How to Change the HIT Type

Once you have created a HIT, you might want to change the HIT type. Use the ChangeHITTypeOfHIT operation to do this.

Properties Specific to a HIT

HITs of the same HIT type can have differing values for the following properties:

  • Question

  • MaxAssignments

  • LifetimeInSeconds

  • RequesterAnnotation