Reference¶
| Page | What it holds |
|---|---|
| The HTTP API | Four endpoints, their status codes, and why they are not Confluent's |
| Schema languages | JSON Schema and protobuf, and exactly what each validator proves |
| Errors | Every sentinel, when it is returned, and what to do about it |
The Go API is on pkg.go.dev.
The packages¶
| Import path | Purpose | Notable dependency |
|---|---|---|
.../go/schema |
Types, Store, Registry, Guard, sentinels |
None beyond go/errors and the URN grammar |
.../go/schema/jsonschema |
JSON Schema validator and no-op checker | The JSON Schema compiler |
.../go/schema/protobuf |
Protobuf validator and no-op checker | The protobuf runtime |
.../go/schema/httpapi |
The read and write handlers | net/http |
.../go/schema/client |
HTTP-backed resolver | net/http |
.../go/schema/serve |
go/transport wiring |
go/transport, go/controls |
The split is enforced by tests, not convention. The root package pulls none of the others'
dependencies, the two validators do not pull each other's, and only serve pulls a server.
Identifiers¶
The URN grammar lives in
go/cloudevents/urn and is cited here rather
than restated. Two copies with two test suites drift while both stay green.