Configuration reference
The two published schemas of the configuration and of the contract extensions, and what every key carries: type, default, version, reload.
ReferenceOperationsSince version 1.7.0
Configuration referenceEvery configuration key, its type, its default and the version it arrived in.
Operations guide: configure, deploy and observe the gateway. What the feature does, product side: product guide; calling it: developer guide.
Know, for every keyword, its syntax, options and allowed values - before writing it.
The published schemas
The reference is the published schema, written from the gateway's model at every version - never by hand, so never behind the code:
| File | What it describes | Address |
|---|---|---|
flexway.schema.json |
All of flexway.yaml, and the config of every policy type (under $defs, policy.<type>) |
https://flexway.io/schema/v1/flexway.schema.json |
architecture.schema.json (since 1.7.0) |
The flexway.architecture.v1 architecture model the console's Architecture screen serves: routes, stations, interchanges, refusals, what is not drawn |
https://flexway.io/schema/v1/architecture.schema.json |
contract-extensions.schema.json |
Every x-flexway-* contract extension (OpenAPI, AsyncAPI, A2A card) and the gRPC option flexway.v1.operation |
https://flexway.io/schema/v1/contract-extensions.schema.json |
policy-fragment.schema.json |
A policy fragment file (kind: PolicyFragment, shared fragments) - since 1.7.0 |
https://flexway.io/schema/v1/policy-fragment.schema.json |
Each file is attached to the releases from the one that delivers it, and written by flexway schema from the version's image
(validate in your editor).
What every key carries
| Schema field | Meaning |
|---|---|
type, enum, pattern, minimum, maximum |
Syntax and allowed values; a duration is written 3s, 250ms, 1m30s, a size 1MiB, 512KiB |
default |
The value in force when the key is absent |
required |
The keys to write as soon as the block holding them is written |
additionalProperties: false |
Decoding is strict: an unknown key is refused |
description (English), x-flexway-description (fr, en) |
What the key does, its options, its refusals |
x-flexway-since |
The version that brought the key |
x-flexway-reloadable |
false: changing this key requires a restart, the reload is refused whole |
x-flexway-reference |
A secret: a ${VAR} or file:/path reference, never the value |
x-flexway-places (extensions) |
Where the extension is read: openapi.info, openapi.operation, asyncapi.operation, asyncapi.parameter, asyncapi.message, a2a.card, grpc.method |
Example
flexway schema --out . then look up a key, for instance server.timeouts.connect:
type: string, default: "5s", x-flexway-since: "0.2.0", x-flexway-reloadable: true and its
description.
Note
The schema describes each key on its own; the rules that cross the configuration and the contracts
remain those of flexway validate.