Turkopticon API

Overview

Turkopticon supports a limited API that may be expanded in the future. All API calls should be GET requests and accessed from https://api.turkopticon.info. All data returned will be in JSON.

Current version

By default, all requests will receive the latest version of the API, currently v2. Although not strictly necessary, it's recommended that you explicitly specify the version via the Accept header.

Accept: application/vnd.turkopticon.v2+json

This allows you to smoothly transition to future versions without dependent scripts or apps suffering from sudden or unexpected breakage.

Paths

There is only one path currently available: /requesters

Requesters

Returns the aggregate data and aliases for each requester specified.

GET /requesters(/:rid)

Parameters

Name Scope Type Description
rids stringlist List of requester IDs.
fields requesters stringlist List of attributes to return. If not specified, all attributes are returned. Can be one or more of rname, rid, aggregates, or aliases.

The requester ID must be included either in the canonical path (as rid) or the query string (assigned to rids). Only one ID can be in the canonical path. If both rid and rids are given in a request, rids will be ignored.

Examples:

GET /requesters/A1111
GET /requesters?rids=A1111
GET /requesters?rids=A0000,A1111,A9999

Response

The aggregates section may require further clarification. It is divided into all, which is aggregated data from all valid reviews, and recent, which is aggregated data limited to the past 90 days.

Property Type Description
reward array [p, t, nt] where
p is total pay in USD
t is total time in seconds
nt is total number of reviews with a completion time
pending number average time pending in seconds
comm array [c, nc, n] where
c is reported positive interactions
nc is reported attempts at contacting the requester
n is total reviews
recommend array [r, nr, n] where
r is positive recommendations
nr is total recommendations
n is total reviews
rejected array [x, nx, n] where
x is reviews indicating a rejection
nx is reviews without pending status
n is total reviews
tos array [tos, n]
broken array [broken, n]

Samples

Basic call, single requester, no rids parameter:

GET /requesters/A0009999

{
  "status": 200,
  "data": {
    "type": "requesters",
    "id": "A0009999",
    "attributes": {
      "name": "Osiris Group LLC",
      "rid": "A0009999",
      "aggregates": {
        "all": {
          "reward": [ 14.81, 8437, 11 ],
          "pending": 321643.10,
          "comm": [ 0, 0, 14 ],
          "recommend": [ 0, 0, 14 ],
          "rejected": [ 1, 6, 14 ],
          "tos": [ 3, 14 ],
          "broken": [ 7, 14 ]
        },
        "recent": {
          "reward": [ 0, 0, 0 ],
          "pending": 0,
          "comm": [ 0, 0, 0 ],
          "recommend": [ 0, 0, 0 ],
          "rejected": [ 0, 0, 0 ],
          "tos": [ 0, 0 ],
          "broken": [ 0, 0 ]
        }
      },
      "aliases": [
        "Odesza Bodyleak",
        "Cleplaix"
      ]
    }
  }
}

If you're only interested in their aliases:

GET /requesters?rids=A0009999,A1118888&fields[requesters]=aliases

{
  "status": 200,
  "data": [
    {
      "type": "requesters",
      "id": "A0009999",
      "attributes": {
        "aliases": [
          "Odesza Bodyleak",
          "Cleplaix
        ]
      }
    },
    {
      "type": "requesters",
      "id": "A1118888",
      "attributes": {
        "aliases": [
          "Shockolate Rimme"
        ]
      }
    }
  ]
}