---
title: "Create dataset example"
method: POST
path: "/api/v1/automations/{id}/examples"
tags: ["Evaluation"]
---

# Create dataset example

`POST /api/v1/automations/{id}/examples`

Create one dataset example from JSON fields. Use dataset import for archive-based uploads and file-bearing examples.

## Path parameters

- `id` string, required — Automation id or typed alias, such as `workflows.slug` or `agents.slug`.

## Request body

- DatasetExampleMutation — Fields used to create or update a dataset example.
  - `name` string, nullable — Example name. Required on create; omitted or null uses a generated name where supported.
  - `input` object, nullable — Input arguments for the example.
  - `expected` unknown
  - `metadata` object, nullable — Caller-managed metadata.
  - `annotation` string, nullable — Human note about the example. Null clears the annotation.
  - `rowOrder` integer, nullable — Optional display order. Null clears the order.
  - `overrides` object, nullable — Step output overrides used during example runs.

## Response `201`

Created dataset example.

- DatasetExample — One input/expected-output row in an automation dataset.
  - `id` string, required — Stable public example id. Workflow examples use DB ids; agent examples use deterministic name-derived ids.
  - `name` string, required — Human-readable dataset example name.
  - `automationId` string, required — Automation that owns this example.
  - `automationType` 'workflow' | 'agent', required
  - `input` object, nullable, required — Input arguments used when this example is run.
  - `expected` unknown, required
  - `expectedFiles` object[], required — Expected files attached to this example.
    - `name` string, required — Expected file name.
    - `url` string — Download URL for the expected file.
  - `metadata` object, nullable, required — Caller-managed metadata for sorting or filtering examples.
  - `annotation` string, nullable, required — Human note about the example.
  - `rowOrder` number, nullable, required — Optional display order within the dataset.
  - `overrides` object, nullable, required — Step output overrides used when running this example.
  - `latestRunId` string, nullable, required — Most recent run id created from this example.
  - `createdAt` union
    - string
    - string
  - `updatedAt` union
    - string
    - string

## Other responses

- `400` — Validation error. Request shape did not match the spec.
- `401` — Missing or invalid API key
- `403` — API key lacks required scope
- `404` — Resource not found
- `413` — Payload too large. Upload exceeded the per-request size cap.
- `429` — Rate limit exceeded
- `500` — Internal server error

---

[API](https://skmtc.dev/eigenpal/apis/eigenpal-api.md) · [All operations](https://skmtc.dev/eigenpal/apis/eigenpal-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/eigenpal/eigenpal-api/revisions/dddcddf1975c/schema)
