API changelog
The Spectral API uses a two-tier version scheme: a major (v1, v2, …) for
breaking resets, and dated revisions within a major for additive, migratable
changes. Pin a specific revision with the Spectral-Version
header; this page records what changed at each dated revision.
v1
2026-08-04: target reshape, closed enums, ElevenLabs targets
Pin Spectral-Version: 2026-08-04 or later to get these shapes; earlier pins keep working
against the 2026-06-15 shapes below.
Added
- ElevenLabs conversational-agent targets (
type: "elevenlabs_agent"). Create and manage them like any other target.
Changed
- API targets: the
apiandresponses_apitarget types merge into a singletype: "api", distinguished by a newprotocolfield (completionsorresponses). A request with the oldresponses_apitype, or one missingprotocol, is rejected. - Target
typeis now a closed set of values instead of any string. - These fields are now closed enums instead of free-form strings (existing values are unchanged
except where noted): classification
type, knowledge-base entrytype, job resourcetype, and connection-teststatus(the cancellation value is now spelledcanceled, notcancelled). - Job
statusgainscanceled. This value is not reachable yet (job cancellation isn't supported), added ahead of that support so the shape is already in place. - Build-step
status(on knowledge-base creation, task generation, persona generation, principle generation, and evaluation steps) uses the same status vocabulary as the rest of the API:queued,running,succeeded,failed,canceled. Steps are now cancel-aware: the step in-flight when an evaluation is canceled reportscanceledtoo, instead of the older vocabulary's ambiguous states. - Evaluations: the list feed (including the create/cancel/rerun job envelopes) and the get-by-id
read are now separate shapes. The list feed returns
current_steponly; the by-id read returnsstepsonly.
Removed
GET /reports/{rid}/pdf. UsePOST /reports/{rid}/pdf, which lets you select report sections.- The
from_evaluationandfrom_executionsreport-create request variants. Requests using either are migrated automatically to the equivalentbased_onshape ({"kind": "evaluation" | "execution", "ids": [...]}), with one behavior change:based_ononly resolves succeeded executions, where the legacy variants included executions of any status. A request naming non-succeeded or unknown executions/evaluations may now 422 with "based_on sources resolved to no succeeded executions" instead of returning a report built from in-progress data (or, for an unknown evaluation, the old 404); that 422 doesn't distinguish "no such evaluation" from "not finished yet." Migrate tobased_ondirectly to avoid relying on this automatic translation.
2026-06-15: initial version
First public release of the Spectral API. See the API reference.