DoculaDevelopersDezvoltatori
API 0.8.0 · BuildVersiune produs 0.33.0
Documentation navigationNavigare documentație
POST/api/v1/submissions

Persist an idempotent source submission and run its internal ingestion decisionSalvează idempotent o solicitare și execută decizia internă de ingestie

Persist an idempotent source submission and run its internal ingestion decision. Validates the documented inputs and creates or triggers the canonical outcome. Required inputs: Origin, X-CSRF-Token, Idempotency-Key, request body. HTTP success: 200, 202; documented failures: 401, 403, 405, 409, 415, 422, 500, 503. Reuse the request key only for an exact replay; changed canonical content conflicts.Salvează idempotent o solicitare și execută decizia internă de ingestie. Validează intrările documentate și creează sau declanșează rezultatul canonic. Intrări obligatorii: Origin, X-CSRF-Token, Idempotency-Key, request body. Succes HTTP: 200, 202; erori documentate: 401, 403, 405, 409, 415, 422, 500, 503. Refolosește cheia cererii numai pentru o reluare identică; un conținut canonic diferit produce conflict.

Roles: administrator, engineer, operatorRoluri: administrator (administrator), engineer (inginer), operator (operator)Host-local session requiredEste necesară sesiunea hostuluiBody ≤ 1,048,576 bytesBody ≤ 1.048.576 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/submissions" \
  --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/SubmitSubmissionRequest",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "metadata",
    "payload"
  ],
  "properties": {
    "metadata": {
      "$ref": "#/components/schemas/SubmissionMetadata",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "model_slug",
        "object_reference",
        "object_effective_at",
        "source_system",
        "source_actor"
      ],
      "properties": {
        "model_slug": {
          "type": "string",
          "minLength": 1,
          "maxLength": 64,
          "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
        },
        "object_reference": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
        },
        "object_effective_at": {
          "type": "string",
          "format": "date-time"
        },
        "source_system": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
        },
        "source_actor": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128,
          "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
        }
      }
    },
    "payload": {
      "x-docula-max-bytes": 524288
    }
  }
}
Synthetic createSubmission request · syntheticExemplu sintetic · application/json
{
  "metadata": {
    "model_slug": "synthetic-example",
    "object_reference": "synthetic-example",
    "object_effective_at": "2026-08-01T10:00:00Z",
    "source_system": "synthetic-example",
    "source_actor": "synthetic-example"
  },
  "payload": "synthetic-example"
}

Responses and failuresRăspunsuri și erori

200The exact actor-scoped idempotent request replayed the originally pinned Submission and selection.Cererea idempotentă exactă limitată la actor a reluat Submission-ul și selecția fixate inițial.

Structured response bodyBody structurat al răspunsului

Response headersHeaderele răspunsului

Idempotent-ReplayTrue when the response replays an earlier exact actor-scoped request without new work.True când răspunsul reia o cerere exactă anterioară, limitată la actor, fără procesare nouă.
LocationCanonical resource path for the created or replayed result.Calea canonică a resursei pentru rezultatul creat sau reluat.

application/json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/SubmissionMutation",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "submission",
        "correlation_id",
        "result_url",
        "idempotent_replay"
      ],
      "properties": {
        "submission": {
          "$ref": "#/components/schemas/SubmissionRecord",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "id",
            "ingestion_id",
            "submitted_by",
            "correlation_id",
            "metadata",
            "original_payload_hash",
            "canonical_payload_hash",
            "request_hash",
            "ingestion_status",
            "processing_triggered",
            "received_at",
            "plan"
          ],
          "properties": {
            "id": {
              "type": "string",
              "format": "uuid"
            },
            "ingestion_id": {
              "type": "string",
              "format": "uuid"
            },
            "submitted_by": {
              "type": "string",
              "format": "uuid"
            },
            "correlation_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128
            },
            "metadata": {
              "$ref": "#/components/schemas/SubmissionMetadata",
              "type": "object",
              "additionalProperties": false,
              "required": [
                "model_slug",
                "object_reference",
                "object_effective_at",
                "source_system",
                "source_actor"
              ],
              "properties": {
                "model_slug": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                },
                "object_reference": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
                },
                "object_effective_at": {
                  "type": "string",
                  "format": "date-time"
                },
                "source_system": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
                },
                "source_actor": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
                }
              }
            },
            "original_payload_hash": {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            "canonical_payload_hash": {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            "request_hash": {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            "ingestion_status": {
              "type": "string",
              "enum": [
                "received",
                "accepted",
                "rejected"
              ]
            },
            "processing_triggered": {
              "type": "boolean"
            },
            "reason_code": {
              "type": "string",
              "maxLength": 128,
              "pattern": "^[a-z0-9]+(?:_[a-z0-9]+)*$"
            },
            "model": {
              "$ref": "#/components/schemas/DefinitionSelection",
              "type": "object",
              "additionalProperties": false,
              "required": [
                "family_id",
                "activation_id",
                "version_id",
                "version",
                "slug",
                "content_hash",
                "effective_from"
              ],
              "properties": {
                "family_id": {
                  "type": "string",
                  "format": "uuid"
                },
                "activation_id": {
                  "type": "string",
                  "format": "uuid"
                },
                "version_id": {
                  "type": "string",
                  "format": "uuid"
                },
                "version": {
                  "type": "integer",
                  "minimum": 1
                },
                "slug": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                },
                "content_hash": {
                  "type": "string",
                  "pattern": "^[0-9a-f]{64}$"
                },
                "effective_from": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "received_at": {
              "type": "string",
              "format": "date-time"
            },
            "ingestion_completed_at": {
              "type": "string",
              "format": "date-time"
            },
            "plan": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "$ref": "#/components/schemas/SubmissionPlanNode",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "id",
                  "submission_id",
                  "kind",
                  "name",
                  "slug",
                  "address",
                  "position",
                  "transform",
                  "release"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "submission_id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "parent_node_id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "kind": {
                    "type": "string",
                    "enum": [
                      "transformation",
                      "document_generation"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "slug": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "address": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 1024
                  },
                  "position": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 100
                  },
                  "transform": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "template": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "release": {
                    "$ref": "#/components/schemas/ReleaseSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "content_hash"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "node_address": {
                        "type": "string",
                        "minLength": 3,
                        "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": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1024,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
                      },
                      "producer_release_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "producer_release_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "validation_input_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      }
                    },
                    "oneOf": [
                      {
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "node_address"
                              ]
                            },
                            {
                              "required": [
                                "input_mode"
                              ]
                            },
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            },
                            {
                              "required": [
                                "validation_input_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "submission"
                          }
                        },
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "producer_node_address",
                          "producer_release_id",
                          "producer_release_hash",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "parent_output"
                          }
                        }
                      }
                    ]
                  }
                },
                "allOf": [
                  {
                    "if": {
                      "properties": {
                        "kind": {
                          "const": "document_generation"
                        }
                      },
                      "required": [
                        "kind"
                      ]
                    },
                    "then": {
                      "required": [
                        "template"
                      ]
                    }
                  },
                  {
                    "if": {
                      "properties": {
                        "kind": {
                          "const": "transformation"
                        }
                      },
                      "required": [
                        "kind"
                      ]
                    },
                    "then": {
                      "not": {
                        "required": [
                          "template"
                        ]
                      }
                    }
                  }
                ]
              }
            },
            "selection_snapshot": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "$ref": "#/components/schemas/IngestionSelectionNode",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "kind",
                  "name",
                  "slug",
                  "address",
                  "position"
                ],
                "properties": {
                  "kind": {
                    "type": "string",
                    "enum": [
                      "transformation",
                      "document_generation"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "slug": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "address": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 1024
                  },
                  "parent_address": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 1024
                  },
                  "position": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 100
                  },
                  "transform": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "template": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "release": {
                    "$ref": "#/components/schemas/ReleaseSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "content_hash"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "node_address": {
                        "type": "string",
                        "minLength": 3,
                        "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": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1024,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
                      },
                      "producer_release_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "producer_release_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "validation_input_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      }
                    },
                    "oneOf": [
                      {
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "node_address"
                              ]
                            },
                            {
                              "required": [
                                "input_mode"
                              ]
                            },
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            },
                            {
                              "required": [
                                "validation_input_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "submission"
                          }
                        },
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "producer_node_address",
                          "producer_release_id",
                          "producer_release_hash",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "parent_output"
                          }
                        }
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "result_url": {
          "type": "string",
          "pattern": "^/api/v1/submissions/[0-9a-f-]{36}$"
        },
        "idempotent_replay": {
          "type": "boolean"
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "idempotent_replay": {
          "const": true
        }
      }
    }
  ]
}
Synthetic SubmissionReplay responseExemplu sintetic HTTP 200
{
  "submission": {
    "id": "11111111-1111-4111-8111-000000000001",
    "ingestion_id": "11111111-1111-4111-8111-000000000001",
    "submitted_by": "11111111-1111-4111-8111-000000000001",
    "correlation_id": "11111111-1111-4111-8111-000000000001",
    "metadata": {
      "model_slug": "synthetic-example",
      "object_reference": "DOCS-EXAMPLE-0001",
      "object_effective_at": "2026-08-01T10:00:00Z",
      "source_system": "synthetic-example",
      "source_actor": "synthetic-example"
    },
    "original_payload_hash": "0000000000000000000000000000000000000000000000000000000000000000",
    "canonical_payload_hash": "0000000000000000000000000000000000000000000000000000000000000000",
    "request_hash": "0000000000000000000000000000000000000000000000000000000000000000",
    "ingestion_status": "received",
    "processing_triggered": false,
    "received_at": "2026-08-01T10:00:00Z",
    "plan": [
      {
        "id": "11111111-1111-4111-8111-000000000001",
        "submission_id": "11111111-1111-4111-8111-000000000001",
        "kind": "transformation",
        "name": "synthetic-example",
        "slug": "synthetic-example",
        "address": "synthetic-example",
        "position": 1,
        "transform": {
          "family_id": "11111111-1111-4111-8111-000000000001",
          "activation_id": "11111111-1111-4111-8111-000000000001",
          "version_id": "11111111-1111-4111-8111-000000000001",
          "version": 1,
          "slug": "synthetic-example",
          "content_hash": "0000000000000000000000000000000000000000000000000000000000000000",
          "effective_from": "2026-08-01T10:00:00Z"
        },
        "release": {
          "id": "11111111-1111-4111-8111-000000000001",
          "content_hash": "0000000000000000000000000000000000000000000000000000000000000000"
        }
      }
    ]
  },
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "result_url": "/api/v1/submissions/11111111-1111-4111-8111-111111111111",
  "idempotent_replay": true
}
202The valid request was persisted before its ingestion decision and returned without replaying prior work.Cererea validă a fost persistată înaintea deciziei de ingestie și returnată fără reluarea procesării anterioare.

Structured response bodyBody structurat al răspunsului

Response headersHeaderele răspunsului

LocationCanonical resource path for the created or replayed result.Calea canonică a resursei pentru rezultatul creat sau reluat.

application/json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "allOf": [
    {
      "$ref": "#/components/schemas/SubmissionMutation",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "submission",
        "correlation_id",
        "result_url",
        "idempotent_replay"
      ],
      "properties": {
        "submission": {
          "$ref": "#/components/schemas/SubmissionRecord",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "id",
            "ingestion_id",
            "submitted_by",
            "correlation_id",
            "metadata",
            "original_payload_hash",
            "canonical_payload_hash",
            "request_hash",
            "ingestion_status",
            "processing_triggered",
            "received_at",
            "plan"
          ],
          "properties": {
            "id": {
              "type": "string",
              "format": "uuid"
            },
            "ingestion_id": {
              "type": "string",
              "format": "uuid"
            },
            "submitted_by": {
              "type": "string",
              "format": "uuid"
            },
            "correlation_id": {
              "type": "string",
              "minLength": 1,
              "maxLength": 128
            },
            "metadata": {
              "$ref": "#/components/schemas/SubmissionMetadata",
              "type": "object",
              "additionalProperties": false,
              "required": [
                "model_slug",
                "object_reference",
                "object_effective_at",
                "source_system",
                "source_actor"
              ],
              "properties": {
                "model_slug": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                },
                "object_reference": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
                },
                "object_effective_at": {
                  "type": "string",
                  "format": "date-time"
                },
                "source_system": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
                },
                "source_actor": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 128,
                  "pattern": "^[A-Za-z0-9][A-Za-z0-9._:@+-]{0,127}$"
                }
              }
            },
            "original_payload_hash": {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            "canonical_payload_hash": {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            "request_hash": {
              "type": "string",
              "pattern": "^[0-9a-f]{64}$"
            },
            "ingestion_status": {
              "type": "string",
              "enum": [
                "received",
                "accepted",
                "rejected"
              ]
            },
            "processing_triggered": {
              "type": "boolean"
            },
            "reason_code": {
              "type": "string",
              "maxLength": 128,
              "pattern": "^[a-z0-9]+(?:_[a-z0-9]+)*$"
            },
            "model": {
              "$ref": "#/components/schemas/DefinitionSelection",
              "type": "object",
              "additionalProperties": false,
              "required": [
                "family_id",
                "activation_id",
                "version_id",
                "version",
                "slug",
                "content_hash",
                "effective_from"
              ],
              "properties": {
                "family_id": {
                  "type": "string",
                  "format": "uuid"
                },
                "activation_id": {
                  "type": "string",
                  "format": "uuid"
                },
                "version_id": {
                  "type": "string",
                  "format": "uuid"
                },
                "version": {
                  "type": "integer",
                  "minimum": 1
                },
                "slug": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                },
                "content_hash": {
                  "type": "string",
                  "pattern": "^[0-9a-f]{64}$"
                },
                "effective_from": {
                  "type": "string",
                  "format": "date-time"
                }
              }
            },
            "received_at": {
              "type": "string",
              "format": "date-time"
            },
            "ingestion_completed_at": {
              "type": "string",
              "format": "date-time"
            },
            "plan": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "$ref": "#/components/schemas/SubmissionPlanNode",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "id",
                  "submission_id",
                  "kind",
                  "name",
                  "slug",
                  "address",
                  "position",
                  "transform",
                  "release"
                ],
                "properties": {
                  "id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "submission_id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "parent_node_id": {
                    "type": "string",
                    "format": "uuid"
                  },
                  "kind": {
                    "type": "string",
                    "enum": [
                      "transformation",
                      "document_generation"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "slug": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "address": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 1024
                  },
                  "position": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 100
                  },
                  "transform": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "template": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "release": {
                    "$ref": "#/components/schemas/ReleaseSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "content_hash"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "node_address": {
                        "type": "string",
                        "minLength": 3,
                        "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": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1024,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
                      },
                      "producer_release_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "producer_release_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "validation_input_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      }
                    },
                    "oneOf": [
                      {
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "node_address"
                              ]
                            },
                            {
                              "required": [
                                "input_mode"
                              ]
                            },
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            },
                            {
                              "required": [
                                "validation_input_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "submission"
                          }
                        },
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "producer_node_address",
                          "producer_release_id",
                          "producer_release_hash",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "parent_output"
                          }
                        }
                      }
                    ]
                  }
                },
                "allOf": [
                  {
                    "if": {
                      "properties": {
                        "kind": {
                          "const": "document_generation"
                        }
                      },
                      "required": [
                        "kind"
                      ]
                    },
                    "then": {
                      "required": [
                        "template"
                      ]
                    }
                  },
                  {
                    "if": {
                      "properties": {
                        "kind": {
                          "const": "transformation"
                        }
                      },
                      "required": [
                        "kind"
                      ]
                    },
                    "then": {
                      "not": {
                        "required": [
                          "template"
                        ]
                      }
                    }
                  }
                ]
              }
            },
            "selection_snapshot": {
              "type": "array",
              "maxItems": 100,
              "items": {
                "$ref": "#/components/schemas/IngestionSelectionNode",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "kind",
                  "name",
                  "slug",
                  "address",
                  "position"
                ],
                "properties": {
                  "kind": {
                    "type": "string",
                    "enum": [
                      "transformation",
                      "document_generation"
                    ]
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "slug": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 64,
                    "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                  },
                  "address": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 1024
                  },
                  "parent_address": {
                    "type": "string",
                    "minLength": 3,
                    "maxLength": 1024
                  },
                  "position": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 100
                  },
                  "transform": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "template": {
                    "$ref": "#/components/schemas/DefinitionSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "family_id",
                      "activation_id",
                      "version_id",
                      "version",
                      "slug",
                      "content_hash",
                      "effective_from"
                    ],
                    "properties": {
                      "family_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "activation_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "version": {
                        "type": "integer",
                        "minimum": 1
                      },
                      "slug": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "effective_from": {
                        "type": "string",
                        "format": "date-time"
                      }
                    }
                  },
                  "release": {
                    "$ref": "#/components/schemas/ReleaseSelection",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "id",
                      "content_hash"
                    ],
                    "properties": {
                      "id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "content_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "node_address": {
                        "type": "string",
                        "minLength": 3,
                        "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": {
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 1024,
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*(?::[a-z0-9]+(?:-[a-z0-9]+)*){1,15}$"
                      },
                      "producer_release_id": {
                        "type": "string",
                        "format": "uuid"
                      },
                      "producer_release_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      },
                      "validation_input_hash": {
                        "type": "string",
                        "pattern": "^[0-9a-f]{64}$"
                      }
                    },
                    "oneOf": [
                      {
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "node_address"
                              ]
                            },
                            {
                              "required": [
                                "input_mode"
                              ]
                            },
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            },
                            {
                              "required": [
                                "validation_input_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "submission"
                          }
                        },
                        "not": {
                          "anyOf": [
                            {
                              "required": [
                                "producer_node_address"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_id"
                              ]
                            },
                            {
                              "required": [
                                "producer_release_hash"
                              ]
                            }
                          ]
                        }
                      },
                      {
                        "required": [
                          "node_address",
                          "input_mode",
                          "producer_node_address",
                          "producer_release_id",
                          "producer_release_hash",
                          "validation_input_hash"
                        ],
                        "properties": {
                          "input_mode": {
                            "const": "parent_output"
                          }
                        }
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "correlation_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 128
        },
        "result_url": {
          "type": "string",
          "pattern": "^/api/v1/submissions/[0-9a-f-]{36}$"
        },
        "idempotent_replay": {
          "type": "boolean"
        }
      }
    },
    {
      "type": "object",
      "properties": {
        "idempotent_replay": {
          "const": false
        }
      }
    }
  ]
}
Synthetic SubmissionAccepted responseExemplu sintetic HTTP 202
{
  "submission": {
    "id": "11111111-1111-4111-8111-000000000001",
    "ingestion_id": "11111111-1111-4111-8111-000000000001",
    "submitted_by": "11111111-1111-4111-8111-000000000001",
    "correlation_id": "11111111-1111-4111-8111-000000000001",
    "metadata": {
      "model_slug": "synthetic-example",
      "object_reference": "DOCS-EXAMPLE-0001",
      "object_effective_at": "2026-08-01T10:00:00Z",
      "source_system": "synthetic-example",
      "source_actor": "synthetic-example"
    },
    "original_payload_hash": "0000000000000000000000000000000000000000000000000000000000000000",
    "canonical_payload_hash": "0000000000000000000000000000000000000000000000000000000000000000",
    "request_hash": "0000000000000000000000000000000000000000000000000000000000000000",
    "ingestion_status": "received",
    "processing_triggered": false,
    "received_at": "2026-08-01T10:00:00Z",
    "plan": [
      {
        "id": "11111111-1111-4111-8111-000000000001",
        "submission_id": "11111111-1111-4111-8111-000000000001",
        "kind": "transformation",
        "name": "synthetic-example",
        "slug": "synthetic-example",
        "address": "synthetic-example",
        "position": 1,
        "transform": {
          "family_id": "11111111-1111-4111-8111-000000000001",
          "activation_id": "11111111-1111-4111-8111-000000000001",
          "version_id": "11111111-1111-4111-8111-000000000001",
          "version": 1,
          "slug": "synthetic-example",
          "content_hash": "0000000000000000000000000000000000000000000000000000000000000000",
          "effective_from": "2026-08-01T10:00:00Z"
        },
        "release": {
          "id": "11111111-1111-4111-8111-000000000001",
          "content_hash": "0000000000000000000000000000000000000000000000000000000000000000"
        }
      }
    ]
  },
  "correlation_id": "11111111-1111-4111-8111-000000000001",
  "result_url": "/api/v1/submissions/11111111-1111-4111-8111-111111111111",
  "idempotent_replay": false
}
401A valid server-side session is required.Este necesară o sesiune validă pe server.

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/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"
        }
      }
    }
  ]
}
Synthetic AuthenticationRequired 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"
}
403The session protection failed or the authenticated role cannot mutate this resource.Protecția sesiunii a eșuat sau rolul autentificat nu poate modifica această resursă.

Structured response bodyBody structurat al răspunsului

application/problem+json

Structured response bodyBody structurat al răspunsului

Complete response schemaSchema completă a răspunsului
{
  "$ref": "#/components/schemas/MutationProblem",
  "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",
      "const": 403
    },
    "code": {
      "type": "string",
      "enum": [
        "csrf_rejected",
        "forbidden"
      ]
    },
    "detail": {
      "type": "string",
      "minLength": 1
    },
    "correlation_id": {
      "type": "string",
      "minLength": 1
    }
  }
}
Synthetic MutationRejected 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"
}
405The method is not supported by this path.Metoda nu este acceptată de această cale.

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/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"
        }
      }
    }
  ]
}
Synthetic MethodNotAllowed 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"
}
409The resource changed before the requested mutation could be applied.Resursa s-a schimbat înainte ca mutația solicitată să poată fi aplicată.

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/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"
        }
      }
    }
  ]
}
Synthetic Conflict responseExemplu sintetic HTTP 409
{
  "type": "/problems/synthetic_example",
  "title": "synthetic-example",
  "status": 409,
  "code": "conflict",
  "detail": "synthetic-example",
  "correlation_id": "11111111-1111-4111-8111-000000000001"
}
415The mutation is missing the exact supported JSON content type.Mutației îi lipsește tipul de conținut JSON acceptat exact.

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/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"
        }
      }
    }
  ]
}
Synthetic UnsupportedMediaType 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"
}
422The request is invalid.Cererea 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/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"
        }
      }
    }
  ]
}
Synthetic ValidationFailed 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"
}
500An internal handler failure occurred.A apărut o eroare internă în handler.

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/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"
        }
      }
    }
  ]
}
Synthetic InternalError 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"
}
503A required dependency is unavailable.O dependență obligatorie este indisponibilă.

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/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"
        }
      }
    }
  ]
}
Synthetic DependencyUnavailable 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"
}

Frontend capabilityCapabilitate frontend

Owner: business-ui · /app/ingestionsResponsabil: business-ui · /app/ingestions
PlannedPlanificatNoNuImplementedImplementatYesDaAcceptedAcceptatNoNu

Submission and journey workflows are served by the React application.Operația este folosită de aplicația React de pe ruta indicată.

Guided courseCurs ghidat