Content Gathering
Using the crowd to search for and collect content matching your criteria, rather than reviewing content you already have.
Every other crowd job in this section assumes you already have the content — an image, a claim, a dataset — and you're asking workers to review, label, or verify it. Content gathering inverts that: you describe what you're looking for, and workers search the web and social platforms to find and submit matching content on your behalf.
Content gathering is a jobs.category value ("gathering"), not a separate resource. It uses the same job creation, task assignment, and payment mechanics as every other crowd job — see Crowd Jobs for the shared fields.
How Gathering Jobs Differ From Survey Jobs
A survey job distributes a fixed, pre-defined set of input data records to workers — each worker sees one record and answers questions about it. A gathering job has no predefined content to distribute, so it's configured differently:
| Field | Survey job | Gathering job |
|---|---|---|
inputDataSetId | Usually set — one task variant per record | Omitted — there's nothing to pre-enumerate |
forceUniqueTasks | Usually true | Set to false — the same worker can submit multiple items toward the target |
maxRepetitionsPerVariant | Responses per input record | Interpreted as the total number of items you want gathered, shared across all workers |
maxAssignments | Usually 1 | Set higher — the number of items a single worker may submit |
Gathering Criteria
When creating a gathering job, attach a gatheringCriteria object describing what workers should look for:
{
"name": "Springfield flooding coverage",
"title": "Find social media posts about the Springfield flooding",
"description": "Search for photos, videos, or eyewitness posts about the November 2026 flooding in Springfield.",
"category": "gathering",
"surveyTemplateVersionId": "tmplv_abc123def456ghi789jkl01",
"maxRepetitionsPerVariant": 50,
"maxAssignments": 10,
"forceUniqueTasks": false,
"rewardCredits": 15,
"gatheringCriteria": {
"keywords": ["springfield flooding", "springfield flood 2026"],
"platforms": ["twitter", "telegram", "instagram"],
"languages": ["en"],
"contentTypes": ["image", "video", "text"],
"useWebResearch": true
}
}| Field | Type | Description |
|---|---|---|
keywords | string[] | Search terms workers should use as a starting point. |
platforms | string[] | Social networks, messengers, or sites to focus on. |
languages | string[] | Acceptable content languages. |
contentTypes | string[] | Acceptable content types (e.g. image, video, text). |
dateRangeFrom / dateRangeTo | ISO 8601 timestamp | Restrict results to a publication window. |
minEngagement | object | Minimum engagement thresholds per metric (e.g. {"likes": 100}), enforced editorially by reviewers rather than by the platform. |
useWebResearch | boolean | Whether workers get access to the in-task search assistant (see below). |
What Workers Submit
Gathering-job task templates use a repeating question that lets a worker submit one or more items per task, each with:
| Field | Description |
|---|---|
url | Link to the content (required). |
platform | Where it was found. |
content_type | Type of content. |
author_handle | Account or byline associated with the content, if visible. |
text_content | Post text or a transcription/description, if applicable. |
metrics | Engagement numbers the worker observed (likes, shares, views), if visible. |
Workers can optionally use an in-task search assistant to look for content without leaving the task page. Every submitted item is deduplicated per job by URL — if two workers submit the same link, only the first counts toward your target and payout.
Reviewing Gathered Items
Each submitted item becomes a row you can review independently of the worker's overall answer:
GET https://api.crowdee.ai/v2/crowd-jobs/{jobId}/gathered-items?reviewStatus=pending
X-API-Key: crw_YOUR_API_KEYUpdate an item's status as you triage the results:
curl -X PATCH https://api.crowdee.ai/v2/gathered-items/{itemId} \
-H "X-API-Key: crw_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"reviewStatus": "accepted"}'| Status | Meaning |
|---|---|
pending | Not yet reviewed (default on submission). |
accepted | Confirmed as relevant and usable. |
rejected | Not relevant, low quality, or otherwise unusable. |
duplicate | Same underlying content as another item already gathered. |
Reviewing gathered items is independent of accepting or rejecting the worker's answer. A worker is paid for submitting a complete, good-faith task — rejecting an individual gathered item doesn't claw back payment, since worker payment happens at the task level (see Crowd Jobs), while item review controls what flows into your downstream dataset.
Exporting Gathered Content
Accepted items feed directly into Crowdee's other tools rather than sitting in a one-off table.
Export to a dataset — turns accepted items' attached files (photos, videos, screenshots) into a new dataset you can run through multimedia verification pipelines:
curl -X POST https://api.crowdee.ai/v2/crowd-jobs/{jobId}/gathered-items/export-to-dataset \
-H "X-API-Key: crw_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"datasetName": "Springfield flooding media", "reviewStatus": "accepted"}'Export to input data — turns accepted items' URLs (and text content, where present) into a new input data set:
curl -X POST https://api.crowdee.ai/v2/crowd-jobs/{jobId}/gathered-items/export-to-input-data \
-H "X-API-Key: crw_YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"inputDataName": "Springfield flooding sources", "reviewStatus": "accepted"}'The resulting URLs are a natural input to Source Research & Credibility Assessment runs — gather content with the crowd, then trace each item back to its origin.
Both export endpoints only consider items matching the requested reviewStatus (defaults to accepted). Review your gathered items before exporting — items left at pending are excluded by default.
How is this guide?
Crowd Jobs
Creating and managing crowdsourcing jobs — define tasks, publish to workers, and control the job lifecycle.
Answers
Reviewing, accepting, and exporting crowd worker answers — and converting them into datasets or input data for further pipeline runs.