canonical: https://jentic.com/apis/encord.com/encord

# Encord AI Data Platform API

Jentic publishes the only available OpenAPI specification for Encord AI Data Platform API, keeping it validated and agent-ready. Encord provides programmatic access to AI training data infrastructure, including labeling projects, datasets, ontologies, and label exports. Agents can list and create projects, provision new datasets, and pull labels for downstream model training pipelines. The API targets ML teams that need to coordinate annotation workflows and version their training label corpora.

## For AI agents

List and create Encord labeling projects, manage datasets, and retrieve labels and ontologies for AI training data pipelines.

## Scope

Does not handle model training, inference serving, or data storage - use for managing Encord labeling projects, datasets, labels, and ontologies only.

## Capabilities

- Create new labeling projects and inspect their configuration
- List and provision datasets that hold raw annotation source data
- Retrieve labels exported from completed annotation tasks
- Inspect ontologies that define label classes and attributes
- Look up an individual project or dataset by ID for status checks

## Use cases

### Bootstrapping a Labeling Project

Spin up a new annotation project in Encord by creating a dataset and a project that points to it, then retrieving the ontology so labelers know which classes to apply. The API exposes POST /projects and POST /datasets so an agent can provision a labeling workspace without clicking through the UI. This is useful when ML teams need to launch annotation runs on demand for new data drops.

Example prompt: Create a dataset called 'street-scenes-2026', then create a project linked to it and return the new project_id

### Pulling Labels for Model Training

Export labels from completed annotation projects via GET /labels and feed them into a training pipeline. This avoids manual JSON downloads and lets agents close the loop between annotation and model retraining. Teams that retrain weekly can schedule label pulls programmatically.

Example prompt: Fetch all labels for project_id 'abc-123' and write them to a JSONL file ready for training

### Inventorying Datasets and Projects

Run GET /projects and GET /datasets to enumerate the labeling workspace, surface stale projects, and reconcile what exists in Encord against an internal registry. Useful for ML platform teams that need a single source of truth across many annotation efforts.

Example prompt: List every project and dataset, then report which datasets have no associated project

### Agent-Driven Annotation Orchestration

An AI agent reads a request like 'set up a new pedestrian-detection labeling run', searches Jentic for the relevant Encord operations, and chains create-dataset, create-project, and ontology lookup calls. Jentic supplies validated input schemas so the agent calls the right endpoints without browsing docs.

Example prompt: On request 'start labeling for batch 14', create the dataset, create a project linked to ontology_id 'ped-v3', and return both IDs

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/projects` | List labeling projects |
| POST | `/projects` | Create a labeling project |
| GET | `/projects/{project_id}` | Get a project by ID |
| GET | `/datasets` | List datasets |
| POST | `/datasets` | Create a dataset |
| GET | `/labels` | Retrieve exported labels |
| GET | `/ontologies` | List ontologies |

## Key resources

- **Projects** — Create and inspect labeling projects
- **Datasets** — Provision and list datasets that back labeling work
- **Labels** — Retrieve exported labels from completed annotations
- **Ontologies** — Inspect class and attribute definitions used by projects

## Why Jentic

- **Setup:** Wiring the Encord AI Data Platform API by hand means setting up its API key in the Authorization header, formatting project, dataset, label, and ontology calls, and handling your own retries against https://api.encord.com/v2. Through Jentic you install once, import the Encord AI Data Platform API from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** The Encord AI Data Platform API puts the project id in the URL path (`/projects/{project_id}`), so a rule can pin your agent to one labeling project: it can read that project and nothing else. You choose the operations it may call, so ones like creating projects or datasets are not included unless you add them.
- **Credential handling:** Your Encord API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list labeling projects' or 'read a dataset', and Jentic returns the matching Encord operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **EngageBay CRM REST API** — EngageBay manages customer records; Encord manages AI training data - pair them when building AI features that use customer signals.
- **Diarupt Engine API** — Diarupt provides conversational AI sessions; Encord provides the labeled training data behind models like that.
- **Endor Labs AppSec API** — Different domain (security vs ML data) but both surface namespace-scoped resource APIs an agent might query in a CI pipeline.

## FAQ

### Why is there no official OpenAPI spec for Encord AI Data Platform API?

Encord does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Encord AI Data Platform API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Encord AI Data Platform API use?

The API uses API key authentication via an `apiKey` security scheme. Through Jentic, the key is stored in the encrypted credential vault and never enters the agent's prompt context - agents receive scoped access at execution time only.

### Can I create new labeling projects with the Encord API?

Yes. Call POST /projects to create a project and POST /datasets to provision the underlying dataset. The 8-endpoint surface covers project, dataset, label, and ontology operations needed to bootstrap annotation work.

### What are the rate limits for the Encord AI Data Platform API?

The OpenAPI spec does not declare rate limits. Treat the public endpoints as rate-limited per workspace and back off on HTTP 429 responses. Confirm exact thresholds against your Encord plan documentation.

### How do I retrieve labels through Jentic?

Run `pip install jentic`, then search 'fetch encord labels for training' against Jentic. The platform returns the GET /labels operation with its input schema so the agent can supply the project filter and execute against base URL https://api.encord.com/v2.

### Is the Encord AI Data Platform API free?

Encord is a paid platform. API access is included with paid Encord workspaces; pricing depends on your plan. Jentic itself does not add platform fees on top of vendor API costs.

### Can I limit what my agent is allowed to do with the Encord AI Data Platform API?

Yes. Because you run Jentic One yourself, your own rules decide which Encord operations and credentials the agent can use. Since the project id sits in the URL path (`/projects/{project_id}`), you can pin the agent to a single labeling project so it reads that project and nothing else. You also choose the operation set, so write actions like POST /projects or POST /datasets stay off limits unless you explicitly grant them, leaving read-only calls such as GET /projects, GET /datasets, GET /labels, and GET /ontologies.
