DoculaDevelopersDezvoltatori
API 0.8.0 · BuildVersiune produs 0.33.0
Documentation navigationNavigare documentație
POST/api/v1/configuration-deployments/validate

Dry-run a canonical configuration deployment without writesSimulează aplicarea unei configurații canonice fără scrieri

Only administrator and engineer sessions may validate. operator, auditor, and business_viewer are denied. Validation preserves item order, resolves at most 100 local references, and creates no canonical state.Numai administratorul și inginerul pot valida; celelalte roluri sunt refuzate. Validarea nu creează stare canonică.

Roles: administrator, engineerRoluri: administrator (administrator), engineer (inginer)Host-local session requiredEste necesară sesiunea hostuluiBody ≤ 2,097,152 bytesBody ≤ 2.097.152 bytes

A session with must_change_password=true is forbidden regardless of role; only session read, password change, and logout remain authorized.O sesiune cu must_change_password=true este interzisă indiferent de rol; rămân autorizate doar citirea sesiunii, schimbarea parolei și deconectarea.

Required headers and parametersHeadere și parametri obligatorii

Content-TypeRequired request headerHeader obligatoriu al cererii
Idempotency-KeyRequired request headerHeader obligatoriu al cererii
OriginRequired request headerHeader obligatoriu al cererii
X-CSRF-TokenRequired request headerHeader obligatoriu al cererii
Originheader · requiredobligatoriu
Must be one configured exact browser origin and its host must equal the request Host; no Referer fallback is accepted.Trebuie să fie una dintre originile exacte configurate pentru browser, iar hostul ei trebuie să coincidă cu Host-ul cererii. Un Referer corespunzător este acceptat numai când Origin lipsește.
http://127.0.0.1:18081
Complete parameter schemaSchema completă a parametrului
{
  "type": "string",
  "format": "uri"
}
X-CSRF-Tokenheader · requiredobligatoriu
Per-session HMAC token returned by login or session-read; it is accepted only with that host's session and exact matching Origin.Token HMAC specific sesiunii, returnat la autentificare sau la citirea sesiunii; este acceptat numai împreună cu sesiunea acelui host și cu un Origin exact corespunzător.
synthetic-csrf-token
Complete parameter schemaSchema completă a parametrului
{
  "type": "string",
  "minLength": 1
}
Idempotency-Keyheader · requiredobligatoriu
Actor-scoped request identity. An exact replay returns the original result; different canonical content conflicts.Identitatea cererii, limitată la actor. O reluare identică returnează rezultatul inițial; un conținut canonic diferit produce conflict.
docs-example-0001
Complete parameter schemaSchema completă a parametrului
{
  "type": "string",
  "minLength": 8,
  "maxLength": 128,
  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{7,127}$"
}

Parameter limitsLimitele parametrilor

{"name":"Idempotency-Key","maximum":null,"max_length":128}

Lifecycle and conventionsCiclu și convenții

Open the related API conventionDeschide convenția API asociată

Request examplesExemple de cerere

Synthetic curl · copy onlycurl sintetic · numai pentru copiere
curl --request POST "$DOCULA_URL/api/v1/configuration-deployments/validate" \
  --cookie "$COOKIE_JAR" \
  --header "Content-Type: application/json" \
  --header "Idempotency-Key: $IDEMPOTENCY_KEY" \
  --header "Origin: $DOCULA_URL" \
  --header "X-CSRF-Token: $CSRF_TOKEN" \
  --data-binary @request.json

Request body: requiredBody cerere: obligatoriu

application/json

Structured response bodyBody structurat al răspunsului

Complete request schemaSchema completă a cererii
{
  "$ref": "#/components/schemas/ConfigurationDeploymentManifest",
  "type": "object",
  "additionalProperties": false,
  "x-docula-max-bytes": 2097152,
  "required": [
    "schema",
    "items"
  ],
  "properties": {
    "schema": {
      "const": "docula-configuration-deployment-v1"
    },
    "items": {
      "type": "array",
      "minItems": 1,
      "maxItems": 100,
      "items": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ConfigurationDeploymentIngestionModelItem",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "local_ref",
              "kind",
              "operation",
              "family",
              "definition",
              "effective_from"
            ],
            "properties": {
              "local_ref": {
                "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                "type": "string",
                "pattern": "^[a-z][a-z0-9._-]{0,63}$"
              },
              "kind": {
                "const": "ingestion_model"
              },
              "operation": {
                "const": "deploy"
              },
              "family": {
                "$ref": "#/components/schemas/ConfigurationDeploymentFamily",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "slug",
                  "name"
                ],
                "properties": {
                  "slug": {
                    "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 2000
                  }
                }
              },
              "expected_revision": {
                "type": "integer",
                "minimum": 1
              },
              "definition": {
                "$ref": "#/components/schemas/ConfigurationDeploymentIngestionModelDefinition",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "contract_version_id",
                  "contract_hash",
                  "definition"
                ],
                "properties": {
                  "contract_version_id": {
                    "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                    "type": "string",
                    "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                  },
                  "contract_hash": {
                    "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                    "type": "string",
                    "pattern": "^[0-9A-Fa-f]{64}$"
                  },
                  "definition": {}
                }
              },
              "effective_from": {
                "$ref": "#/components/schemas/CanonicalTimestamp",
                "type": "string",
                "format": "date-time",
                "description": "UTC timestamp serialized with RFC3339Nano precision."
              }
            }
          },
          {
            "$ref": "#/components/schemas/ConfigurationDeploymentTransformerItem",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "local_ref",
              "kind",
              "operation",
              "family",
              "definition",
              "effective_from"
            ],
            "properties": {
              "local_ref": {
                "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                "type": "string",
                "pattern": "^[a-z][a-z0-9._-]{0,63}$"
              },
              "kind": {
                "const": "transformer"
              },
              "operation": {
                "const": "deploy"
              },
              "family": {
                "$ref": "#/components/schemas/ConfigurationDeploymentFamily",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "slug",
                  "name"
                ],
                "properties": {
                  "slug": {
                    "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 2000
                  }
                }
              },
              "expected_revision": {
                "type": "integer",
                "minimum": 1
              },
              "definition": {
                "$ref": "#/components/schemas/ConfigurationDeploymentTransformerDefinition",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "format",
                  "source"
                ],
                "properties": {
                  "format": {
                    "type": "string",
                    "enum": [
                      "json",
                      "yaml"
                    ]
                  },
                  "source": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 262144
                  }
                }
              },
              "effective_from": {
                "$ref": "#/components/schemas/CanonicalTimestamp",
                "type": "string",
                "format": "date-time",
                "description": "UTC timestamp serialized with RFC3339Nano precision."
              }
            }
          },
          {
            "$ref": "#/components/schemas/ConfigurationDeploymentTemplateItem",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "local_ref",
              "kind",
              "operation",
              "family",
              "definition",
              "effective_from"
            ],
            "properties": {
              "local_ref": {
                "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                "type": "string",
                "pattern": "^[a-z][a-z0-9._-]{0,63}$"
              },
              "kind": {
                "const": "template"
              },
              "operation": {
                "const": "deploy"
              },
              "family": {
                "$ref": "#/components/schemas/ConfigurationDeploymentFamily",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "slug",
                  "name"
                ],
                "properties": {
                  "slug": {
                    "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                    "type": "string",
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "description": {
                    "type": "string",
                    "maxLength": 2000
                  }
                }
              },
              "expected_revision": {
                "type": "integer",
                "minimum": 0
              },
              "definition": {
                "$ref": "#/components/schemas/ConfigurationDeploymentTemplateDefinition",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "draft_content_hash"
                ],
                "properties": {
                  "draft_content_hash": {
                    "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                    "type": "string",
                    "pattern": "^[0-9A-Fa-f]{64}$"
                  }
                }
              },
              "effective_from": {
                "$ref": "#/components/schemas/CanonicalTimestamp",
                "type": "string",
                "format": "date-time",
                "description": "UTC timestamp serialized with RFC3339Nano precision."
              }
            }
          },
          {
            "$ref": "#/components/schemas/ConfigurationDeploymentTransformationReleaseItem",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "local_ref",
              "kind",
              "operation",
              "processing_kind",
              "name",
              "ingestion_model",
              "transformer",
              "validation_evidence"
            ],
            "properties": {
              "local_ref": {
                "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                "type": "string",
                "pattern": "^[a-z][a-z0-9._-]{0,63}$"
              },
              "kind": {
                "const": "release"
              },
              "operation": {
                "const": "publish"
              },
              "processing_kind": {
                "const": "transformation"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 160
              },
              "description": {
                "type": "string",
                "maxLength": 2000
              },
              "ingestion_model": {
                "$ref": "#/components/schemas/ConfigurationDeploymentResourceRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "slug",
                      "version",
                      "content_hash"
                    ],
                    "properties": {
                      "slug": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                        "type": "string",
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "transformer": {
                "$ref": "#/components/schemas/ConfigurationDeploymentResourceRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "slug",
                      "version",
                      "content_hash"
                    ],
                    "properties": {
                      "slug": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                        "type": "string",
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "node_address": {
                "$ref": "#/components/schemas/ConfigurationDeploymentNodeAddress",
                "type": "string",
                "maxLength": 1024,
                "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
              },
              "input_mode": {
                "type": "string",
                "enum": [
                  "submission",
                  "parent_output"
                ]
              },
              "producer_node_address": {
                "$ref": "#/components/schemas/ConfigurationDeploymentNodeAddress",
                "type": "string",
                "maxLength": 1024,
                "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
              },
              "producer_release": {
                "$ref": "#/components/schemas/ConfigurationDeploymentProducerReleaseRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "content_hash"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "validation_evidence": {
                "$ref": "#/components/schemas/ConfigurationDeploymentTransformationEvidence",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "case_id",
                      "case_hash",
                      "output_hash"
                    ],
                    "properties": {
                      "case_id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      },
                      "case_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "validation_input_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "output_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "validation_input",
                      "validation_input_hash",
                      "output_hash"
                    ],
                    "properties": {
                      "validation_input": {
                        "not": {
                          "type": "null"
                        }
                      },
                      "validation_input_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "output_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              }
            }
          },
          {
            "$ref": "#/components/schemas/ConfigurationDeploymentDocumentReleaseItem",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "local_ref",
              "kind",
              "operation",
              "processing_kind",
              "name",
              "ingestion_model",
              "transformer",
              "template",
              "validation_evidence"
            ],
            "properties": {
              "local_ref": {
                "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                "type": "string",
                "pattern": "^[a-z][a-z0-9._-]{0,63}$"
              },
              "kind": {
                "const": "release"
              },
              "operation": {
                "const": "publish"
              },
              "processing_kind": {
                "const": "document_generation"
              },
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 160
              },
              "description": {
                "type": "string",
                "maxLength": 2000
              },
              "ingestion_model": {
                "$ref": "#/components/schemas/ConfigurationDeploymentResourceRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "slug",
                      "version",
                      "content_hash"
                    ],
                    "properties": {
                      "slug": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                        "type": "string",
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "transformer": {
                "$ref": "#/components/schemas/ConfigurationDeploymentResourceRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "slug",
                      "version",
                      "content_hash"
                    ],
                    "properties": {
                      "slug": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                        "type": "string",
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "template": {
                "$ref": "#/components/schemas/ConfigurationDeploymentResourceRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "slug",
                      "version",
                      "content_hash"
                    ],
                    "properties": {
                      "slug": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentSlug",
                        "type": "string",
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "node_address": {
                "$ref": "#/components/schemas/ConfigurationDeploymentNodeAddress",
                "type": "string",
                "maxLength": 1024,
                "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
              },
              "input_mode": {
                "type": "string",
                "enum": [
                  "submission",
                  "parent_output"
                ]
              },
              "producer_node_address": {
                "$ref": "#/components/schemas/ConfigurationDeploymentNodeAddress",
                "type": "string",
                "maxLength": 1024,
                "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
              },
              "producer_release": {
                "$ref": "#/components/schemas/ConfigurationDeploymentProducerReleaseRef",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "local_ref"
                    ],
                    "properties": {
                      "local_ref": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
                        "type": "string",
                        "pattern": "^[a-z][a-z0-9._-]{0,63}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "content_hash"
                    ],
                    "properties": {
                      "id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      },
                      "content_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              },
              "validation_evidence": {
                "$ref": "#/components/schemas/ConfigurationDeploymentDocumentEvidence",
                "oneOf": [
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "case_id",
                      "case_hash",
                      "output_hash",
                      "bindings_hash"
                    ],
                    "properties": {
                      "case_id": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentUUID",
                        "type": "string",
                        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$"
                      },
                      "case_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "validation_input_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "output_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "bindings_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  },
                  {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "validation_input",
                      "validation_input_hash",
                      "output_hash",
                      "bindings_hash"
                    ],
                    "properties": {
                      "validation_input": {
                        "not": {
                          "type": "null"
                        }
                      },
                      "validation_input_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "output_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      },
                      "bindings_hash": {
                        "$ref": "#/components/schemas/ConfigurationDeploymentInputHash",
                        "type": "string",
                        "pattern": "^[0-9A-Fa-f]{64}$"
                      }
                    }
                  }
                ]
              }
            }
          }
        ]
      }
    }
  }
}
Synthetic validateConfigurationDeployment request · syntheticExemplu sintetic · application/json
{
  "schema": "docula-configuration-deployment-v1",
  "items": [
    {
      "local_ref": "synthetic-example",
      "kind": "ingestion_model",
      "operation": "deploy",
      "family": {
        "slug": "synthetic-example",
        "name": "synthetic-example"
      },
      "definition": {
        "contract_version_id": "11111111-1111-4111-8111-111111111111",
        "contract_hash": "0000000000000000000000000000000000000000000000000000000000000000",
        "definition": "synthetic-example"
      },
      "effective_from": "2026-08-01T10:00:00Z"
    }
  ]
}

Responses and failuresRăspunsuri și erori

200Deterministic side-effect-free validation with at most 100 ordered outcomes and 100 safe issues.Validare deterministă fără efecte secundare, cu cel mult 100 de rezultate ordonate și 100 de probleme sigure.

Structured response bodyBody structurat al răspunsului

application/json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "$ref": "#/components/schemas/ConfigurationDeploymentValidation",
  "type": "object",
  "additionalProperties": false,
  "x-docula-max-bytes": 528384,
  "required": [
    "schema",
    "manifest_hash",
    "valid",
    "items",
    "errors",
    "correlation_id"
  ],
  "properties": {
    "schema": {
      "const": "docula-configuration-deployment-v1"
    },
    "manifest_hash": {
      "$ref": "#/components/schemas/ConfigurationDeploymentHash",
      "type": "string",
      "pattern": "^[0-9a-f]{64}$"
    },
    "valid": {
      "type": "boolean"
    },
    "items": {
      "type": "array",
      "minItems": 1,
      "maxItems": 100,
      "items": {
        "$ref": "#/components/schemas/ConfigurationDeploymentValidationOutcome",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "position",
          "local_ref",
          "resource_kind",
          "operation",
          "outcome",
          "dependencies"
        ],
        "properties": {
          "position": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100
          },
          "local_ref": {
            "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
            "type": "string",
            "pattern": "^[a-z][a-z0-9._-]{0,63}$"
          },
          "resource_kind": {
            "type": "string",
            "enum": [
              "ingestion_model",
              "transformer",
              "template",
              "release"
            ]
          },
          "operation": {
            "type": "string",
            "enum": [
              "deploy",
              "publish"
            ]
          },
          "outcome": {
            "const": "validated"
          },
          "content_hash": {
            "$ref": "#/components/schemas/ConfigurationDeploymentHash",
            "type": "string",
            "pattern": "^[0-9a-f]{64}$"
          },
          "dependencies": {
            "type": "array",
            "maxItems": 100,
            "uniqueItems": true,
            "items": {
              "$ref": "#/components/schemas/ConfigurationDeploymentLocalRef",
              "type": "string",
              "pattern": "^[a-z][a-z0-9._-]{0,63}$"
            }
          }
        }
      }
    },
    "errors": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "$ref": "#/components/schemas/ConfigurationIssue",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "code",
          "stage",
          "resource_kind",
          "message",
          "correlation_id"
        ],
        "properties": {
          "code": {
            "type": "string",
            "maxLength": 64,
            "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
          },
          "stage": {
            "type": "string",
            "maxLength": 64,
            "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
          },
          "resource_kind": {
            "type": "string",
            "maxLength": 64,
            "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
          },
          "resource_id": {
            "type": "string",
            "maxLength": 128
          },
          "path": {
            "type": "string",
            "maxLength": 512
          },
          "message": {
            "type": "string",
            "minLength": 1,
            "maxLength": 512
          },
          "dependency": {
            "type": "string",
            "maxLength": 64,
            "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
          },
          "context": {
            "type": "object",
            "maxProperties": 16,
            "additionalProperties": {
              "type": "string",
              "maxLength": 256
            }
          },
          "correlation_id": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128
          }
        }
      }
    },
    "correlation_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "pattern": "^[A-Za-z0-9._:-]+$"
    }
  }
}
Synthetic ConfigurationDeploymentValidationOK responseExemplu sintetic HTTP 200
{
  "schema": "docula-configuration-deployment-v1",
  "manifest_hash": "0000000000000000000000000000000000000000000000000000000000000000",
  "valid": false,
  "items": [
    {
      "position": 1,
      "local_ref": "synthetic-example",
      "resource_kind": "ingestion_model",
      "operation": "deploy",
      "outcome": "validated",
      "dependencies": [
        "synthetic-example"
      ]
    }
  ],
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ],
  "correlation_id": "11111111-1111-4111-8111-000000000001"
}
401A valid session is required.Este necesară o sesiune validă.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 401
        },
        "code": {
          "const": "authentication_required"
        }
      }
    }
  ]
}
Synthetic ConfigurationAuthenticationRequired responseExemplu sintetic HTTP 401
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 401,
  "code": "authentication_required",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}
403The current role cannot access configuration, or same-origin CSRF protection rejected a mutation.Rolul curent nu poate accesa configurarea sau protecția CSRF same-origin a respins o mutație.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 403
        },
        "code": {
          "enum": [
            "csrf_rejected",
            "forbidden"
          ]
        }
      }
    }
  ]
}
Synthetic ConfigurationForbidden responseExemplu sintetic HTTP 403
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 403,
  "code": "csrf_rejected",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}
405The method is not supported by this canonical path.Metoda nu este acceptată de această cale canonică.

Structured response bodyBody structurat al răspunsului

Response headersHeaderele răspunsului

AllowThe exact method or method set supported by this path.Metoda sau setul exact de metode acceptate de această cale.

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 405
        },
        "code": {
          "const": "method_not_allowed"
        }
      }
    }
  ]
}
Synthetic ConfigurationMethodNotAllowed responseExemplu sintetic HTTP 405
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 405,
  "code": "method_not_allowed",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}
415Content-Type must be application/json.Content-Type trebuie să fie application/json.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 415
        },
        "code": {
          "const": "unsupported_media_type"
        }
      }
    }
  ]
}
Synthetic ConfigurationUnsupportedMediaType responseExemplu sintetic HTTP 415
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 415,
  "code": "unsupported_media_type",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}
422The request, query, header, or canonical configuration is invalid.Cererea, query-ul, headerul sau configurarea canonică este invalidă.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 422
        },
        "code": {
          "const": "validation_failed"
        }
      }
    }
  ]
}
Synthetic ConfigurationValidationFailed responseExemplu sintetic HTTP 422
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 422,
  "code": "validation_failed",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}
500Canonical configuration failed safely.Configurarea canonică a eșuat în siguranță.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 500
        },
        "code": {
          "const": "internal_error"
        }
      }
    }
  ]
}
Synthetic ConfigurationInternalError responseExemplu sintetic HTTP 500
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 500,
  "code": "internal_error",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}
503A canonical configuration dependency is unavailable or returned unsafe evidence.O dependență a configurării canonice este indisponibilă sau a returnat dovezi nesigure.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConfigurationProblem",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "type",
        "title",
        "status",
        "code",
        "detail",
        "correlation_id",
        "errors"
      ],
      "properties": {
        "type": {
          "type": "string",
          "pattern": "^/problems/[a-z_]+$"
        },
        "title": {
          "type": "string",
          "minLength": 1
        },
        "status": {
          "type": "integer",
          "minimum": 400,
          "maximum": 599
        },
        "code": {
          "type": "string",
          "enum": [
            "internal_error",
            "dependency_unavailable",
            "authentication_required",
            "csrf_rejected",
            "forbidden",
            "conflict",
            "not_found",
            "method_not_allowed",
            "unsupported_media_type",
            "validation_failed",
            "precondition_required",
            "precondition_failed"
          ]
        },
        "detail": {
          "type": "string",
          "minLength": 1
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "errors": {
          "type": "array",
          "maxItems": 100,
          "items": {
            "$ref": "#/components/schemas/ConfigurationIssue",
            "type": "object",
            "additionalProperties": false,
            "required": [
              "code",
              "stage",
              "resource_kind",
              "message",
              "correlation_id"
            ],
            "properties": {
              "code": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "stage": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_kind": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "resource_id": {
                "type": "string",
                "maxLength": 128
              },
              "path": {
                "type": "string",
                "maxLength": 512
              },
              "message": {
                "type": "string",
                "minLength": 1,
                "maxLength": 512
              },
              "dependency": {
                "type": "string",
                "maxLength": 64,
                "pattern": "^[a-z][a-z0-9_.:-]{0,63}$"
              },
              "context": {
                "type": "object",
                "maxProperties": 16,
                "additionalProperties": {
                  "type": "string",
                  "maxLength": 256
                }
              },
              "correlation_id": {
                "type": "string",
                "minLength": 1,
                "maxLength": 128
              }
            }
          }
        }
      }
    },
    {
      "properties": {
        "status": {
          "const": 503
        },
        "code": {
          "const": "dependency_unavailable"
        }
      }
    }
  ]
}
Synthetic ConfigurationDependencyUnavailable responseExemplu sintetic HTTP 503
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 503,
  "code": "dependency_unavailable",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "errors": [
    {
      "code": "synthetic-example",
      "stage": "synthetic-example",
      "resource_kind": "synthetic-example",
      "message": "synthetic-example",
      "correlation_id": "11111111-1111-4111-8111-000000000001"
    }
  ]
}

Frontend capabilityCapabilitate frontend

API-onlyDoar API
PlannedPlanificatNoNuImplementedImplementatNoNuAcceptedAcceptatNoNu

Configuration-deployment workflows are API-only; see the operational tasks guide.Operația rămâne intenționat disponibilă doar prin API.

Guided courseCurs ghidat