Appen provides high-quality training data and data annotation services for AI models, leveraging a global crowd of over 500,000 contributors. With 30 years of experience, they offer data products across speech, vision, language, and structured data, supporting enterprises in building reliable AI systems. Their platform includes tools for data collection, labeling, validation, and evaluation, ensuring compliance and security with SOC 2 and ISO 27001 certifications.
Appen publishes 8 API contracts indexed on the APIs.io network, including Download API, Internal Contributors API, Jobs API, and 5 more. Tagged areas include Artificial Intelligence, Data, Annotation, Training Data, and Enterprise.
The Appen catalog on APIs.io includes 1 JSON-LD context and 1 Spectral governance ruleset.
Appen’s developer surface includes authentication, documentation, API reference, engineering blog, and 19 more developer resources.
Regulatory Posture applies to this provider. Its tags matched the
Horizontal (data, software, accessibility, platform) regime, so
Regulatory Posture carries 15 points of the composite.
If this regime is wrong for your business, say so on your
provider repo — the
applicability map is public and we will correct it.
Create-or-Update Ergonomics applies to this provider. This API accepts writes, so it
carries 10 points of the composite. It is scored from the published contracts
themselves: whether a caller can create-or-update in one call, whether the write accepts a key the caller already
holds, and whether the response says which branch ran. Without that, every write needs a search-and-branch in
front of it, and the first time that check is skipped a duplicate record is created.
Scored against the observed mean rather than raw — a provider at the catalog average is unchanged by this facet,
not penalised by it.
The six quality facets above are damped to 75 points between them,
because the conditional facet above carries the other
25. That is why each facet's contribution is shown against a damped
maximum: raising a quality facet moves the composite by 75% of its nominal
weight, not 100%. The full arithmetic is at apis.io/rating/.
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. Every facet and dimension name above is a link: it opens that measurement's own page — what it means, the exact checks that feed it, how the whole catalog distributes on it, and the providers at the top of it. This rating is computed from github.com/api-evangelist/appen: open an issue to ask a question, or submit a pull request to add artifacts.
Submit an artifact on GitHub — free →Manage your own listing — the Influence plan, $499/mo →
Generate and download reports for either a single job or an entire project, and download datasets from projects. - **Choose scope with exactly one of:** - jobId: download a Job-...
Project management operations for organizing and structuring your data annotation workflows. - **Project Structure:** - Projects serve as containers for organizing related jobs ...
Unit management operations for handling individual data rows and their distribution across jobs. - **Unit Operations:** - **List Units**: Retrieve and filter units within a proj...
Test question management operations for evaluating contributor performance and ensuring quality assurance in data annotation workflows. - **Key Operations:** - **Add Test Questi...
File upload operations for importing datasets and data into your projects and jobs. - **Dataset Upload Process:** - **Upload Files**: Send CSV files containing your data to exis...
Overlays applied on top of this provider's contracts. Each card says who wrote it: a document the provider publishes, or one API Evangelist derived or generated.
aid: appen
name: Appen
image: https://cdn.prod.website-files.com/656a605609413dfd3feb9d34/6aa317a84eab4c7f1644a689_Appen-social-share.png
description: Appen provides high-quality training data and data annotation services for AI models, leveraging a global crowd
of over 500,000 contributors. With 30 years of experience, they offer data products across speech, vision, language, and
structured data, supporting enterprises in building reliable AI systems. Their platform includes tools for data collection,
labeling, validation, and evaluation, ensuring compliance and security with SOC 2 and ISO 27001 certifications.
url: https://raw.githubusercontent.com/api-evangelist/appen/refs/heads/main/apis.yml
x-type: company
x-source: harvest:data
x-tier: profiled
x-tier-reason: enrichment pass 2026-09-22 (modular-v1; was harvest)
specificationVersion: '0.20'
created: '2026-09-22'
modified: '2026-09-22'
x-docs-platform: redocly
x-docs-platform-confidence: medium
x-docs-platform-checked: 2026-09-24
x-docs-hosting: aws-cloudfront
tags:
- Artificial Intelligence
- Data
- Annotation
- Training Data
- Enterprise
tags_raw:
- AI
- Data
- Annotation
- TrainingData
- Enterprise
maintainers:
- FN: Kin Lane
email: kin@apievangelist.com
- FN: APIs.json
email: info@apis.io
common:
- type: AgentSkill
url: skills/_index.yml
- type: AgenticAccess
url: agentic-access/appen-agentic-access.yml
- type: Spectral
url: rules/appen-rules.yml
- type: JSONLD
url: json-ld/appen-context.jsonld
- type: Vocabulary
url: vocabulary/appen-vocabulary.yml
- type: DataModel
url: data-model/appen-data-model.yml
- type: ErrorCatalog
url: errors/appen-problem-types.yml
- type: Conformance
url: conformance/appen-conformance.yml
- type: LLMsTxt
url: llms/appen-llms.txt
- type: SecurityTxt
url: well-known/appen-status-security.txt
- type: WellKnown
url: well-known/appen-well-known.yml
- type: Hosts
url: hosts/appen-hosts.yml
- type: Vendors
url: vendors/appen-vendors.yml
- type: StatusPage
url: https://status.appen.com/
- type: Authentication
url: authentication/appen-authentication.yml
- type: DomainSecurity
url: security/appen-domain-security.yml
- type: Website
url: https://appen.com/
- type: DeveloperPortal
url: https://developer.appen.com/
- type: Documentation
url: https://developer.appen.com/
- type: APIReference
url: https://developer.appen.com/open-api.yaml
- type: Blog
url: https://www.appen.com/blog
- type: GitHubOrganization
url: https://github.com/Appen
- type: PrivacyPolicy
url: https://www.appen.com/legal-policies/privacy-statement
apis:
- name: Appen AI Data Annotation Platform API
description: Appen AI Data Annotation Platform (ADAP) API
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
aid: appen:appen-ai-data-annotation-platform-api
- aid: appen:appen-download-api
name: Appen Download API
description: "Generate and download reports for either a single job or an entire project, and download datasets from projects.\n\
\n- **Choose scope with exactly one of:**\n - jobId: download a Job-level report\n - projectId: download a Project-level\
\ report or dataset\n (Do not send both.)\n\n- **Required query parameters:**\n - type: the report you want to generate\
\ or dataset to download\n - filename: the output file name (e.g., report.csv)\n\n- **How it works:**\n - When you trigger\
\ the API for the first time, the API returns 202 (in progress).\n - **You must call the same endpoint again with the\
\ exact same query parameters** to check the status. Repeat the request every 2-5 seconds until you receive a 200 response.\n\
\ - When the report is ready for download, the API returns 200 and streams the file directly in the response body.\n\
\ - **No separate URL fetch is needed** - the file content is streamed directly when ready (200 response).\n - The file\
\ is automatically saved to the path specified in your curl `-o` flag or your API tool's save location. \n\n- **Supported\
\ report types:**\n **Job-level (use jobId):**\n - full: All individual judgments\n - json: JSON report with aggregated\
\ and raw judgments\n - aggregated: Aggregated results (requires request body; see below)\n - workset: Contributor\
\ (Workset) report\n - source: Original source data uploaded to the job\n - ai_detector_report_contributor_level\n\
\ - ai_detector_report_unit_level\n - test_question_report_contributor_level\n - k_alpha_report: Inter-annotator\
\ agreement (Krippendorff’s alpha)\n - contributor_scores_report: Contributor Scores Report\n\n **Project-level (use\
\ projectId):**\n - job_daily_report_project_level\n - contributor_report_project_level\n - source_report_project_level\n\
\ - json_report_project_level\n\n **Dataset Download (use projectId):**\n - DATA_SET: Unit View dataset with customizable\
\ unit selection and column filtering\n - JUDGMENT_DATA_SET: Judgment View dataset with customizable unit selection\
\ and column filtering\n - Supports filtering by unit IDs and column selection\n - Optional filter support with\
\ filterName and userId/akonId parameters\n\n- **Aggregated reports (type=aggregated, Job-level only):**\n - Provide\
\ a request body with aggregation rules for every judgment column:\n judgmentColumnAggregation: [\n { judgmentColumn,\
\ aggregationAlgorithm, parameter? }\n ]\n - aggregationAlgorithm must be one of:\n - AGG (Best Answer)\n -\
\ AGG_X (Top # Answers) → requires parameter.numberOfAnswers\n - CAGG_X (Confidence Score) → requires parameter.minimumConfidence\
\ (0–1)\n - ALL (All Answers)\n - AVG (Numeric Average)\n - Example: choose one algorithm per column (e.g., \"\
_meta\", \"ask_question_here\").\n\n- **File format:**\n - Most types return CSV files; type=json returns a JSON file.\n\
\ - The final file name uses the provided filename parameter.\n\n- **Authentication:**\n - Authorization: Token token=your-api-key\n\
\n- **Responses:**\n - 200: DONE with downloadableUrl (and Location header)\n - 202: Report generation in progress\n\
\ - 400/403/404/500: Error with details"
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Downloads
tags_raw:
- Download
properties:
- type: OpenAPI
url: openapi/appen-download-api-openapi.yml
- aid: appen:appen-internal-contributors-api
name: Appen Internal Contributors API
description: The Internal Contributors API from Appen — 12 operation(s) for internal contributors.
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Internal Contributors
properties:
- type: OpenAPI
url: openapi/appen-internal-contributors-api-openapi.yml
- aid: appen:appen-jobs-api
name: Appen Jobs API
description: "Job management operations for creating, configuring, and controlling data annotation workflows.\n\n- **Job\
\ Lifecycle Management:**\n - **Create Jobs**: Initialize new annotation tasks with project association and type specification\n\
\ - **Update Settings**: Modify job configuration, instructions, and workflow parameters\n - **Launch Jobs**: Activate\
\ jobs from DRAFT to RUNNING state for contributor access\n - **Pause Jobs**: Temporarily halt job execution while preserving\
\ progress\n\n- **Job Types Supported:**\n - **WORK**: Standard annotation jobs for tasks\n - **QA**: Quality assurance\
\ jobs for reviewing, validating work and providing the feedback.\n\n- **Job States:**\n 1. **DRAFT**: Initial creation\
\ state, configurable but not accessible to contributors\n 2. **RUNNING**: Active state where contributors can work on\
\ assignments\n 3. **PAUSED**: Temporarily halted, preserving all progress and judgments"
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Job
tags_raw:
- Jobs
properties:
- type: OpenAPI
url: openapi/appen-jobs-api-openapi.yml
- type: JSONSchema
url: json-schema/appen-job-dto-schema.json
- type: JSONSchema
url: json-schema/appen-response-schema.json
- aid: appen:appen-projects-api
name: Appen Projects API
description: "Project management operations for organizing and structuring your data annotation workflows.\n\n- **Project\
\ Structure:**\n - Projects serve as containers for organizing related jobs and data\n - Each project belongs to a specific\
\ team and can contain multiple jobs\n - Projects provide a logical grouping for workflow management\n\n- **Key Operations:**\n\
\ - **Create Projects**: Initialize new project containers with a name.\n\n- **Project Components:**\n - **Jobs**: Individual\
\ annotation tasks within a project\n - **Units**: Data rows uploaded to projects for annotation\n - **Judgments**:\
\ Contributor responses collected on project units\n\n- **Project Lifecycle:**\n 1. **Creation**: Initialize project\
\ with name and description\n 2. **Configuration**: Set up project settings and access controls\n 3. **Population**:\
\ Add jobs, upload units, and configure workflows\n 4. **Execution**: Run jobs and collect judgments\n 5. **Analysis**:\
\ Generate reports and analyze results\n\n- **Integration Points:**\n - **Job Management**: Create and manage jobs within\
\ projects\n - **Data Upload**: Upload units and datasets to projects\n - **Unit Operations**: List, filter, and manage\
\ project units\n - **Workflow Routing**: Send units between jobs within project\n - **Reporting**: Generate project/job-level\
\ analytics and reports"
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Project
tags_raw:
- Projects
properties:
- type: OpenAPI
url: openapi/appen-projects-api-openapi.yml
- type: JSONSchema
url: json-schema/appen-response-schema.json
- aid: appen:appen-route-units-api
name: Appen Route Units API
description: "Unit management operations for handling individual data rows and their distribution across jobs.\n\n- **Unit\
\ Operations:**\n - **List Units**: Retrieve and filter units within a project with pagination capabilities\n - **Send\
\ Units to Job**: Route units from projects to specific jobs for annotation work\n - **Unit Filtering**: Filter units\
\ by job status, dataset row type, and other criteria\n - **Bulk Operations**: Handle multiple units simultaneously for\
\ efficient workflow management\n\n- **Unit Types:**\n - **Individual Units**: Single data rows ready for annotation\n\
\ - **Unit Groups**: Collections of related units that can be processed together\n - **Dataset Rows**: Structured data\
\ from uploaded CSV files\n\n- **Key Features:**\n - **Advanced Filtering**: Filter by job status, dataset type\n -\
\ **Pagination Support**: Handle large datasets with efficient pagination\n - **Sorting Options**: Customizable sorting\
\ for better data organization\n - **Status Tracking**: Monitor unit status across different job assignments\n\n- **Unit\
\ Lifecycle Management:**\n 1. **Creation**: Units are created when data is uploaded to projects\n 2. **Assignment**:\
\ Units are distributed to jobs for contributor work\n 3. **Processing**: Contributors annotate units and submit judgments\n\
\ 4. **Routing**: Units can be moved between jobs (e.g., work to QA)\n 5. **Completion**: Units receive required judgments\
\ and are marked complete"
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Route Units
properties:
- type: OpenAPI
url: openapi/appen-route-units-api-openapi.yml
- type: JSONSchema
url: json-schema/appen-response-schema.json
- aid: appen:appen-test-questions-api
name: Appen Test Questions API
description: "Test question management operations for evaluating contributor performance and ensuring quality assurance\
\ in data annotation workflows.\n\n- **Key Operations:**\n - **Add Test Questions**: Create new test questions and link\
\ them to specific units\n - **Upload Test Questions**: Bulk upload test questions from CSV files\n - **Update Test\
\ Questions**: Modify existing test questions and its settings\n\n- **Test Question Features:**\n - **Enable/Disable**:\
\ Control whether test questions are active for contributor evaluation\n - **Hide/Show**: Manage visibility of test question\
\ answers and explanation\n - **Content Management**: Update question content, answers, and explanations\n - **Mode\
\ Configuration**: Set QUIZ, WORK, or QUIZ+WORK modes for different evaluation types\n - **Performance Tracking**: Monitor\
\ contributor scores metrics\n - **Calibration**: Ensure consistent annotation quality across different contributors\n\
\n- **Authentication:**\n - Authorization: Token token=your-api-key\n\n- **Common Responses:**\n - 200: Success with\
\ test question data\n - 400: Bad request - Invalid parameters or duplicate test questions\n - 403: Access denied\n\
\ - 404: Project, job, or test question not found\n - 500: Internal server error"
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Test Questions
properties:
- type: OpenAPI
url: openapi/appen-test-questions-api-openapi.yml
- type: JSONSchema
url: json-schema/appen-update-test-question-request-schema.json
- aid: appen:appen-upload-api
name: Appen Upload API
description: "File upload operations for importing datasets and data into your projects and jobs.\n\n- **Dataset Upload\
\ Process:**\n - **Upload Files**: Send CSV files containing your data to existing projects\n - **Status Monitoring**:\
\ Track upload progress and completion status\n - **File Validation**: Automatic validation of CSV format, headers, and\
\ content\n\n- **Supported File Formats:**\n - **CSV Files**: Primary format for data import\n - **Encoding**: UTF-8\
\ encoding recommended\n - **Headers**: Required column headers for data organization\n - **Data Types**: Text, numeric,\
\ date, and structured data support\n\n- **Upload Workflow:**\n 1. **File Preparation**: Ensure CSV format with proper\
\ headers\n 2. **Upload Initiation**: Send file to project with metadata\n 3. **Processing**: System validates and processes\
\ the data\n 4. **Status Polling**: Monitor status until completion\n 5. **Data Integration**: Units become available\
\ for job assignments\n\n- **Key Features:**\n - **Batch Processing**: Handle large datasets efficiently\n - **Progress\
\ Tracking**: Real-time upload status monitoring\n - **Error Handling**: Detailed validation error messages\n - **File\
\ Management**: Track uploaded files and their metadata\n\n- **Integration Points:**\n - **Project Association**: Uploads\
\ are linked to specific projects\n - **Unit Creation**: Each row becomes a unit for annotation\n - **Job Routing**:\
\ Units can be sent to jobs for contributor work"
humanURL: https://developer.appen.com/open-api.yaml
baseURL: https://api.appen.com
tags:
- Upload
properties:
- type: OpenAPI
url: openapi/appen-upload-api-openapi.yml
x-enrichment:
date: '2026-09-22'
status: enriched
artifacts_added: 20
pass: modular-v1
engine: identity=local,contract=local,surfaces=local,docs=local
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.