application/json
Structured response bodyBody structurat al răspunsului
Complete request schemaSchema completă a cererii
{
"$ref": "#/components/schemas/EmptyObject",
"type": "object",
"additionalProperties": false,
"maxProperties": 0
}{}
DevelopersDezvoltatori/api/v1/contracts/{contractId}/versions/{versionNumber}/deprecateDeprecate a published immutable contract version. Validates the documented inputs and creates or triggers the canonical outcome. Required inputs: contractId, versionNumber, Origin, X-CSRF-Token, request body. HTTP success: 200; documented failures: 401, 403, 404, 405, 409, 415, 422, 500, 503. Preserve draft revision, immutable version, publication, and deprecation identities.Retrage o versiune publicată și imuabilă a contractului. Validează intrările documentate și creează sau declanșează rezultatul canonic. Intrări obligatorii: contractId, versionNumber, Origin, X-CSRF-Token, request body. Succes HTTP: 200; erori documentate: 401, 403, 404, 405, 409, 415, 422, 500, 503. Păstrează identitățile ciornei, versiunii imuabile, publicării și retragerii.
Content-TypeRequired request headerHeader obligatoriu al cereriiOriginRequired request headerHeader obligatoriu al cereriiX-CSRF-TokenRequired request headerHeader obligatoriu al cereriicontractIdpath · requiredobligatoriu11111111-1111-4111-8111-000000000001{
"type": "string",
"format": "uuid"
}versionNumberpath · requiredobligatoriu1{
"type": "integer",
"minimum": 1
}Originheader · requiredobligatoriuhttp://127.0.0.1:18081{
"type": "string",
"format": "uri"
}X-CSRF-Tokenheader · requiredobligatoriusynthetic-csrf-token{
"type": "string",
"minLength": 1
}curl --request POST "$DOCULA_URL/api/v1/contracts/$CONTRACT_ID/versions/$VERSION_NUMBER/deprecate" \
--cookie "$COOKIE_JAR" \
--header "Content-Type: application/json" \
--header "Origin: $DOCULA_URL" \
--header "X-CSRF-Token: $CSRF_TOKEN" \
--data-binary @request.jsonRequest body: requiredBody cerere: obligatoriu
Structured response bodyBody structurat al răspunsului
{
"$ref": "#/components/schemas/EmptyObject",
"type": "object",
"additionalProperties": false,
"maxProperties": 0
}{}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"$ref": "#/components/schemas/VersionMutation",
"type": "object",
"additionalProperties": false,
"required": [
"version",
"correlation_id"
],
"properties": {
"version": {
"$ref": "#/components/schemas/ContractVersion",
"type": "object",
"additionalProperties": false,
"required": [
"id",
"contract_id",
"number",
"schema",
"content_hash",
"status",
"source_revision",
"created_by",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"contract_id": {
"type": "string",
"format": "uuid"
},
"number": {
"type": "integer",
"minimum": 1
},
"schema": {
"type": "string",
"minLength": 1
},
"content_hash": {
"type": "string",
"pattern": "^[0-9a-f]{64}$"
},
"status": {
"type": "string",
"enum": [
"versioned",
"published",
"deprecated"
]
},
"source_revision": {
"type": "integer",
"minimum": 1
},
"created_by": {
"type": "string",
"format": "uuid"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"published_at": {
"type": "string",
"format": "date-time"
},
"deprecated_at": {
"type": "string",
"format": "date-time"
}
}
},
"correlation_id": {
"type": "string",
"minLength": 1
}
}
}{
"version": {
"id": "11111111-1111-4111-8111-000000000001",
"contract_id": "11111111-1111-4111-8111-000000000001",
"number": 1,
"schema": "synthetic-example",
"content_hash": "0000000000000000000000000000000000000000000000000000000000000000",
"status": "versioned",
"source_revision": 1,
"created_by": "11111111-1111-4111-8111-000000000001",
"created_at": "2026-08-01T10:00:00Z"
},
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 401
},
"code": {
"const": "authentication_required"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 401,
"code": "authentication_required",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 403
},
"code": {
"enum": [
"csrf_rejected",
"forbidden"
]
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 403,
"code": "csrf_rejected",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 404
},
"code": {
"const": "not_found"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 404,
"code": "not_found",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
AllowThe exact method or method set supported by this path.Metoda sau setul exact de metode acceptate de această cale.Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 405
},
"code": {
"const": "method_not_allowed"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 405,
"code": "method_not_allowed",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 409
},
"code": {
"const": "conflict"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 409,
"code": "conflict",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 415
},
"code": {
"const": "unsupported_media_type"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 415,
"code": "unsupported_media_type",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 422
},
"code": {
"const": "validation_failed"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 422,
"code": "validation_failed",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 500
},
"code": {
"const": "internal_error"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 500,
"code": "internal_error",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Structured response bodyBody structurat al răspunsului
Structured response bodyBody structurat al răspunsului
{
"allOf": [
{
"$ref": "#/components/schemas/Problem",
"type": "object",
"additionalProperties": false,
"required": [
"type",
"title",
"status",
"code",
"detail",
"correlation_id"
],
"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",
"invalid_credentials",
"origin_rejected",
"validation_failed",
"rate_limited",
"authentication_required",
"csrf_rejected",
"forbidden",
"conflict",
"not_found",
"method_not_allowed",
"unsupported_media_type",
"content_unavailable",
"precondition_required",
"precondition_failed"
]
},
"detail": {
"type": "string",
"minLength": 1
},
"correlation_id": {
"type": "string",
"minLength": 1
},
"dependencies": {
"type": "array",
"maxItems": 3,
"items": {
"$ref": "#/components/schemas/PublicDependency",
"type": "object",
"additionalProperties": false,
"required": [
"name",
"status"
],
"properties": {
"name": {
"type": "string",
"enum": [
"postgresql",
"nats",
"s3",
"outbox"
]
},
"status": {
"type": "string",
"enum": [
"ready",
"unavailable"
]
}
}
}
}
}
},
{
"type": "object",
"properties": {
"status": {
"const": 503
},
"code": {
"const": "dependency_unavailable"
}
}
}
]
}{
"type": "/problems/synthetic_example",
"title": "synthetic-example",
"status": 503,
"code": "dependency_unavailable",
"detail": "synthetic-example",
"correlation_id": "11111111-1111-4111-8111-000000000001"
}Contract lifecycle workflows are API-only; see the operational tasks guide.Operația rămâne intenționat disponibilă doar prin API.
This operation is not part of the finite Story 5.3 course.Această operație nu face parte din cursul finit Story 5.3.