Gerada a partir de schema/pipevine.schema.json, que por sua vez é gerado por
reflection sobre Pipevine.Model (Pipevine.Cli's comando schema) — nenhum dos
dois é escrito à mão. Para uma referência com descrição por campo, veja
Configuração YAML; para a política de
versionamento do schema, veja Versionamento.
raiz do documento
Campo
Tipo
Obrigatório
Descrição
apiVersion
string
sim
The document's apiVersion, e.g. pipevine.dev/v1 — versioned since day one so the schema can evolve without breaking existing documents.
kind
string
sim
The document's kind. Always Application today.
metadata
objeto (ver seção abaixo)
sim
The document's metadata block: name, version, and optional description.
spec
objeto (ver seção abaixo)
sim
The document's spec block: everything that defines what the application actually does.
raiz do documento → metadata
Campo
Tipo
Obrigatório
Descrição
name
string
sim
The application's identifier, e.g. orders.
version
string
sim
The application's version string, e.g. 1.0.0. Free-form — not tied to Pipevine.Model.AppDefinition.ApiVersion.
description
string
não
An optional human-readable description of the application.
raiz do documento → spec
Campo
Tipo
Obrigatório
Descrição
type
api | consumer
sim
Whether this application is an HTTP API or a message consumer.
auth
objeto (ver seção abaixo)
não
The default inbound auth scheme and the catalog of schemes routes/integrations can reference by id.
routes
lista de objeto (ver seção abaixo)
não
The HTTP routes, populated when is Pipevine.Model.AppKind.Api.
consumers
lista de objeto (ver seção abaixo)
não
The message consumers, populated when is Pipevine.Model.AppKind.Consumer.
dataSources
lista de objeto (ver seção abaixo)
não
The relational/document data sources a db.* step or an entity can reference by id.
caches
lista de objeto (ver seção abaixo)
não
The cache resources a cache.* step can reference by id.
brokers
lista de objeto (ver seção abaixo)
não
The message brokers a consumer or a publish step's event can reference by id.
entities
lista de objeto (ver seção abaixo)
não
The persisted shapes db.* steps read and write, each bound to one of Pipevine.Model.SpecDefinition.DataSources.
events
lista de objeto (ver seção abaixo)
não
The message shapes a publish step can emit, and what the AsyncAPI output documents.
integrations
lista de objeto (ver seção abaixo)
não
The outbound HTTP/gRPC dependencies an http.call/grpc.call step can reference by id.
schemas
lista de objeto (ver seção abaixo)
não
The named request/response shapes routes reference for typed contract generation and OpenAPI.
raiz do documento → spec → auth
Campo
Tipo
Obrigatório
Descrição
default
objeto (ver seção abaixo)
não
The auth scheme applied to any route/consumer that doesn't declare its own auth: and isn't anonymous: true.
schemes
lista de objeto (ver seção abaixo)
não
The catalog of auth schemes available to be referenced by id.
raiz do documento → spec → auth → default
Campo
Tipo
Obrigatório
Descrição
scheme
string
sim
The scheme kind at the call site, e.g. jwt — informational, not authoritative.
ref
string
sim
The id of the entry in Pipevine.Model.Auth.AuthDefinition.Schemes this reference resolves to.
raiz do documento → spec → auth → schemes
Campo
Tipo
Obrigatório
Descrição
id
string
sim
The identifier other parts of the YAML reference via ref:.
scheme
string
sim
The discriminator selecting which IInboundAuthScheme handles this entry, e.g. jwt.
raiz do documento → spec → routes
Campo
Tipo
Obrigatório
Descrição
id
string
sim
The route's identifier, used in logs/traces.
method
string
sim
The HTTP method, e.g. POST.
path
string
sim
The route template, e.g. /orders/{orderId}.
summary
string
não
A short human-readable summary, carried into the OpenAPI output.
tags
lista de string
não
OpenAPI tags for grouping this route in generated documentation.
request
objeto (ver seção abaixo)
não
What this route accepts: headers, query parameters, and the declared body shape.
auth
objeto (ver seção abaixo)
não
The auth scheme applied to this route. null falls back to spec.auth.default unless .
anonymous
boolean
não
When true, this route skips authentication entirely, regardless of spec.auth.default.
authorize
objeto (ver seção abaixo)
não
Additional authorization checks applied after authentication.
transaction
none | required
não
Whether the pipeline runs inside a shared, ambient data transaction.
cache
objeto (ver seção abaixo)
não
Cache-aside behavior for this route's response.
pipeline
lista de objeto (ver seção abaixo)
não
The steps run to handle a request to this route.
response
objeto (ver seção abaixo)
não
How the pipeline's outcome maps to an HTTP response.
errors
lista de objeto (ver seção abaixo)
não
How specific fail step codes map to HTTP status/title.
raiz do documento → spec → routes → request
Campo
Tipo
Obrigatório
Descrição
body
objeto (ver seção abaixo)
não
The declared shape/content type of the request body, for OpenAPI. Doesn't itself validate — see the pipeline's validate step.
headers
lista de objeto (ver seção abaixo)
não
The headers this route expects.
query
lista de objeto (ver seção abaixo)
não
The query parameters this route expects.
raiz do documento → spec → routes → request → body
Campo
Tipo
Obrigatório
Descrição
schema
string
não
The name of a Pipevine.Model.Resources.SchemaDefinition describing the body shape. Optional: a route can leave the request body untyped.
contentType
string
não
The expected media type, e.g. application/json. Carried into the OpenAPI output.
The failure ratio, within Pipevine.Model.Resources.CircuitBreakerDefinition.SamplingDuration, that trips the breaker (e.g. 0.5 for 50%).
samplingDuration
string
não
The rolling window over which Pipevine.Model.Resources.CircuitBreakerDefinition.FailureRatio is measured, e.g. 30s.
minimumThroughput
integer
não
The minimum number of calls within Pipevine.Model.Resources.CircuitBreakerDefinition.SamplingDuration before the breaker can trip — avoids tripping on a tiny sample.
breakDuration
string
não
How long the breaker stays open (rejecting calls) once tripped, e.g. 15s.