Skip to main content

Prerequisites

To use this library, you’ll need first follow our account set-up instructions to set up your Mechanical Turk and AWS accounts to call the API.

Instantiating the client requires using a Session object from boto3 to authenticate. The boto3 docs describe how to manage your credentials in more detail.

Quick Start

First, install the library:

$ pip install mturk-crowd-beta-client

Then, from a Python interpreter or script, create your first task:

from mturk_crowd_beta_client import MTurkCrowdClient
from boto3.session import Session
import uuid

# This examples assume you have a local AWS profile called
# 'mturk-crowd-caller', but you can authenticate however you like,
# including by directly passing in your access key and secret key.
session = Session(profile_name='mturk-crowd-caller')

# Create the client
crowd_client = MTurkCrowdClient(session)

# For this example, we'll give our task a random, unique name. For real
# work, you'll probably want to pick a name based on your input source.
task_name = 'my-test-task-' + uuid.uuid4().hex
function_name = 'sentiment-analysis-test'

# Create the task
put_result = crowd_client.put_task(function_name,
                                   task_name,
                                   {'text': 'Everything is wonderful.'})
print('PUT response: {}'.format(
    {'status_code': put_result.status_code, 'task': put_result.json()}))
# => PUT response: {
#  'status_code': 201,
#  'task': {'input': {'text': 'Everything is wonderful.'},
#           'problemDetails': None,
#           'result': None,
#           'state': 'processing',
#           'taskName': 'my-test-task-73fbfb29f2bc451d9696d11103dcaf0e'}
#   }

# Get the task we just created. Note that for a production (i.e., non-test)
# task, we'd have to poll periodically until the task completed.
get_result = crowd_client.get_task(function_name, task_name)
print('GET response: {}'.format(
    {'status_code': get_result.status_code, 'task': get_result.json()}))
# => GET response: {
#  'status_code': 200,
#  'task': {'input': {'text': 'Everything is wonderful.'},
#           'problemDetails': None,
#           'result': {'sentiment': 'positive'}
#           'state': 'completed',
#           'taskName': 'my-test-task-73fbfb29f2bc451d9696d11103dcaf0e'}
#   }

Further Reading

Check out our usage instructions and API documentation for more details about how to use the API and this client.

Release files for mturk-crowd-beta-client 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mturk-crowd-beta-client 1.0.0
File Size Uploaded
mturk-crowd-beta-client-1.0.0.tar.gz 4.9 kB Details

Release files / mturk-crowd-beta-client-1.0.0.tar.gz

Download URL mturk-crowd-beta-client-1.0.0.tar.gz
Size 4.9 kB
Tags Source
SHA-256 checksum
How to use checksums
cee8b155225fae8b2397926bd3062c15b1cd38863c5bdcfddabfa4337439a558
BLAKE2b-256 checksum
How to use checksums
0b73c3922c26604d0d0748ac0634f2a9bcb10c5d2a2e9d2dc0476ddb27c22467
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page