API & Schema
Across the 1.13 → 2.0 jump the REST surface gains 208 endpoints and loses 10 (Collate’s own surface adds 76 and removes 47 on top of that). The JSON Schema specification gains 86 files, modifies 107, and removes 3 — verified directly against theopenmetadata-spec module at the
2.0.0 tag. This page covers the schema and contract changes that cut across components; component
pages cover the domain-specific ones.
The Suggestions API is removed
Breaking. Affects API clients, SDKs, and automation bots. The entire/v1/suggestions namespace
(ten endpoints, including accept-all/reject-all) is gone — see
Collaboration for the full replacement mapping onto
/v1/tasks.
search_after becomes a repeated parameter
Breaking. Affects anyone paginating/v1/search/query. Each sort value is now carried as its
own search_after parameter, rather than one comma-joined string, so values containing a comma (a
glossary term’s fully qualified name, for example) are safe:
deleted parameter on the
same endpoint is deprecated for removal — express deleted-entity filtering through query_filter
instead. Separately, GET /v1/dataQuality/testCases now binds testCaseStatus as a repeated
parameter too, validated against the enum, with an unknown value returning 400 naming the allowed
values.
Entity name validation is tightened
Breaking. Affects every write path, ingestion connectors and CSV import.entityName and
testCaseEntityName change pattern:
openmetadata-spec/.../type/basic.json — confirmed present at the 2.0.0
tag and absent at 1.13.4-release. In addition to the existing :: restriction, names may no longer
contain >, ", or any ASCII control character. Entities already stored with these characters are
not rewritten by the migration, but the next PUT or PATCH that revalidates the name will fail —
audit source systems whose object names can contain quotes or angle brackets before upgrading.
Enum values are removed and added across several schemas
Breaking where values are removed, additive-with-caveats where they’re added.
Only
Metadata remains, and the corresponding application configuration schemas are deleted
entirely. Additions worth checking exhaustive switch statements or pattern matching against:
resourceDescriptor.operation gains the five task operations, changeEventType gains
taskCreated/taskUpdated/three lineage event types, entityRelationship.relationshipType gains
assignedTo, backgroundJob.jobType gains CSV_IMPORT/CSV_EXPORT/AUDIT_EXPORT, and
table.tableType gains SemanticView.
Default values change for RDF, workflow timing and connector filters
Behavioural. Affects deployments that never set these explicitly.Schema reference relocations affect generated models
Behavioural. Affects code generated from the specification and JSON Schema validators. Chartfunction and kpiDetails definitions moved out of dataInsightCustomChart.json into a new
dataInsight/custom/chartFunctions.json — formulaHolder.json, lineChart.json, summaryCard.json
and dataInsightCustomChartResultList.json all update their $ref accordingly. Regenerate any
client model built from the JSON Schema; if you resolve $ref pointers by hand, update the paths.