generated: '2026-09-09' method: derived source: openapi/ (145 harvested Fenergo OpenAPI contracts, 2,381 operations, 4,681 distinct component schemas) docs: https://docs.fenergox.com/developer-hub/api-overview/api-principles-and-patterns note: 'Derived by walking path parameters and path containment across every harvested contract, not from a published ERD — Fenergo does not publish one. Because the platform is CQRS + event-sourced, the same entity appears in a Command service and a Query service with different shapes; the entity list below is the union. Draft-vs-verified is the platform''s core state pattern: most business entities exist first as a draft attached to a journey, then are verified and published.' core_pattern: name: draft / verified description: A change is written as a draft against a journey, reviewed, then verified and published. Events entitydata:draftcreated -> draftupdated -> draftverified -> dataPublished trace it. evidence: asyncapi/fenergo-event-notifications-webhooks.yml root_entity: entity: entity note: The Legal Entity is the root of the model; journeys, policies, products, associations, documents, risk and screening all hang off it. entity_count: 40 entities: - entity: entity id_references: 180 services: - associationquery-v1-0 - entitydatacommand-v2-0 - entitydatacommand-v3-0 - screeningcommand-v3-0 - entity: journey id_references: 177 services: - associationquery-v1-0 - documentmanagementquery-v1-0 - externaldataquery-v1-0 - productquery-v1-0 - entity: set id_references: 137 services: - docgencommand-v1-0 - documentmanagementcommand-v1-0 - documentmanagementcommand-v2-0 - productpolicycommand-v1-0 - entity: provider id_references: 80 services: - creditassessmentcommand-v1-0 - creditscreeningcommand-v1-0 - externaldatacommand-v1-0 - financialanalysiscommand-v1-0 - entity: task id_references: 62 services: - creditscreeningquery-v1-0 - externaldataquery-v1-0 - journeycommand-v1-0 - changemanagementcommand-v1-0 - entity: entityPolicy id_references: 54 services: - policyquery-v4-0 - policycommand-v2-0 - entity: scopingRuleSet id_references: 51 services: - digitalidvcommand-v1-0 - digitalidvcommand-v2-0 - riskcommand-v1-0 - screeningcommand-v1-0 - entity: configuration id_references: 37 services: - financialanalysiscommand-v1-0 - dataprotectioncommand-v1-0 - integrationcore-v1-0 - changemanagementquery-v1-0 - entity: journeyInstance id_references: 26 services: - journeycommand-v1-0 - smartdocs-v1-0 - journeyquery-v1-0 - reviewquery-v1-0 - entity: batch id_references: 20 services: - screeningquery-v4-0 - screeningquery-v2-0 - screeningquery-v3-0 - screeningquery-v1-0 - entity: product id_references: 16 services: - productcommand-v1-0 - documentmanagementquery-v1-0 - associationquery-v1-0 - productquery-v1-0 - entity: localisation id_references: 15 services: - localisationcommand-v1-0 - localisationquery-v1-0 - entity: lookup id_references: 15 services: - lookupcommand-v1-0 - lookupquery-v1-0 - entity: document id_references: 14 services: - policyagent-v1-0 - screeningcommand-v3-0 - smartdocs-v1-0 - entity: requirementSet id_references: 13 services: - dealscommand-v1-0 - dealsquery-v1-0 - policycommand-v1-0 - entity: extraction id_references: 12 services: - policyagent-v1-0 - entity: context id_references: 11 services: - externaldatabff-v1-0 - entity: deal id_references: 10 services: - documentmanagementquery-v1-0 - dealscommand-v1-0 - dealsquery-v1-0 - associationquery-v1-0 - entity: journeySchema id_references: 10 services: - journeycommand-v1-0 - journeyquery-v1-0 - entity: agent id_references: 9 services: - associationquery-v1-0 - digitalagentscommand-v1-0 - digitalagentsquery-v1-0 - screeningquery-v3-0 - entity: job id_references: 9 services: - bulkloadquery-v1-0 - bulkloadcommand-v1-0 - tm-dataexport-api-spec - tm-observability-api-spec - entity: process id_references: 9 services: - screeningquery-v1-0 - screeningquery-v2-0 - screeningquery-v3-0 - screeningquery-v4-0 - entity: dataGroup id_references: 9 services: - policyquery-v1-0 - policyquery-v2-0 - policycommand-v1-0 - policyprovidersquery-v1-0 - entity: user id_references: 8 services: - authorizationcommand-v1-0 - dashboardsquery-v1-0-0 - auditquery-v3-0 - entity: execution id_references: 8 services: - integrationcore-v1-0 - tm-rule-execution-api-spec - entity: journeySchedule id_references: 8 services: - journeycommand-v1-0 - journeyquery-v1-0 - entity: entityRule id_references: 8 services: - reviewcommand-v1-0 - reviewquery-v1-0 - entity: productRule id_references: 8 services: - reviewcommand-v1-0 - reviewquery-v1-0 - entity: match id_references: 8 services: - screeningcommand-v3-0 - screeningquery-v4-0 - screeningquery-v1-0 - screeningquery-v2-0 - entity: collateral id_references: 7 services: - collateralcommand-v1-0 - associationquery-v1-0 - collateralquery-v1-0 - entity: contextName id_references: 7 services: - localisationcommand-v1-0 - localisationquery-v1-0 - entity: client id_references: 6 services: - identitymanagementcommand-v1-0 - identitymanagementquery-v1-0 - entity: flow id_references: 6 services: - integrationcore-v1-0 - integrationcallback-v1-0 - entity: action id_references: 5 services: - advanceddashboardquery-v1-0-0 - advanceddashboardcommand-v1-0 - entity: asset id_references: 5 services: - collateralcommand-v1-0 - associationquery-v1-0 - collateralquery-v1-0 - entity: businessProcess id_references: 5 services: - associationquery-v1-0 - digitalidvquery-v1-0 - digitalidvquery-v2-0 - journeyquery-v1-0 - entity: bundleVersion id_references: 5 services: - configreleasehubcommand-v1-0 - entity: assessment id_references: 5 services: - creditassessmentcommand-v1-0 - creditassessmentquery-v1-0 - entity: mapping id_references: 5 services: - financialanalysiscommand-v1-0 - creditassessmentcommand-v1-0 - creditscreeningcommand-v1-0 - integrationcore-v1-0 - entity: requirement id_references: 5 services: - documentmanagementquery-v1-0 - dealscommand-v1-0 relationship_count: 105 relationships: - from: scoping-rule-set to: version type: has_many via: path containment occurrences: 44 - from: set to: version type: has_many via: path containment occurrences: 39 - from: entity to: draft type: has_many via: path containment occurrences: 34 - from: version to: archive type: has_many via: path containment occurrences: 31 - from: journey to: task type: has_many via: path containment occurrences: 30 - from: version to: sign type: has_many via: path containment occurrences: 30 - from: batch to: entity type: has_many via: path containment occurrences: 28 - from: requirement-set to: version type: has_many via: path containment occurrences: 27 - from: version to: submit-for-approval type: has_many via: path containment occurrences: 26 - from: entity to: journey type: has_many via: path containment occurrences: 24 - from: version to: clone type: has_many via: path containment occurrences: 20 - from: template to: version type: has_many via: path containment occurrences: 17 - from: root to: journey type: has_many via: path containment occurrences: 14 - from: version to: field type: has_many via: path containment occurrences: 14 - from: entity to: match type: has_many via: path containment occurrences: 13 - from: data-group to: version type: has_many via: path containment occurrences: 12 - from: policies to: version type: has_many via: path containment occurrences: 12 - from: version to: context type: has_many via: path containment occurrences: 11 - from: product-requirement-set to: version type: has_many via: path containment occurrences: 11 - from: version to: draft type: has_many via: path containment occurrences: 10 - from: docgencomponent to: versions type: has_many via: path containment occurrences: 10 - from: extraction to: document type: has_many via: path containment occurrences: 10 - from: versions to: views type: has_many via: path containment occurrences: 8 - from: journey-instance to: task type: has_many via: path containment occurrences: 8 - from: journey-schema to: version type: has_many via: path containment occurrences: 8 - from: lookup to: version type: has_many via: path containment occurrences: 8 - from: journey to: process type: has_many via: path containment occurrences: 8 - from: entitycheckconfiguration to: version type: has_many via: path containment occurrences: 7 - from: allocation to: version type: has_many via: path containment occurrences: 7 - from: localisation to: version type: has_many via: path containment occurrences: 7 - from: lookuplink to: version type: has_many via: path containment occurrences: 7 - from: risk-configuration to: version type: has_many via: path containment occurrences: 7 - from: review-approval-configuration to: versions type: has_many via: path containment occurrences: 6 - from: draft to: verify type: has_many via: path containment occurrences: 6 - from: providers to: mappingconfiguration type: has_many via: path containment occurrences: 6 - from: providers to: adapterSchema type: has_many via: path containment occurrences: 6 - from: version to: components type: has_many via: path containment occurrences: 6 - from: configuration to: version type: has_many via: path containment occurrences: 6 - from: journey-schedule to: version type: has_many via: path containment occurrences: 6 - from: localisationcontext to: version type: has_many via: path containment occurrences: 6 - from: document to: requirements type: has_many via: path containment occurrences: 6 - from: policies to: fields type: has_many via: path containment occurrences: 6 - from: policies to: jurisdictions type: has_many via: path containment occurrences: 6 - from: entity-rule to: version type: has_many via: path containment occurrences: 6 - from: product-rule to: version type: has_many via: path containment occurrences: 6 - from: risk-model to: version type: has_many via: path containment occurrences: 6 - from: threshold-model to: version type: has_many via: path containment occurrences: 6 - from: provider to: status type: has_many via: path containment occurrences: 5 - from: provider to: configuration type: has_many via: path containment occurrences: 5 - from: namingconvention to: version type: has_many via: path containment occurrences: 5 - from: version to: acceptableDocument type: has_many via: path containment occurrences: 5 - from: version to: documentRequirementMetadata type: has_many via: path containment occurrences: 5 - from: policies to: document-requirements type: has_many via: path containment occurrences: 5 - from: policies to: e-signature-document-requirements type: has_many via: path containment occurrences: 5 - from: policies to: related-party-requirements type: has_many via: path containment occurrences: 5 - from: product to: draft type: has_many via: path containment occurrences: 5 - from: entity to: documents type: has_many via: path containment occurrences: 5 - from: match to: documents type: has_many via: path containment occurrences: 5 - from: versions to: draft type: has_many via: path containment occurrences: 4 - from: versions to: policy-fields type: has_many via: path containment occurrences: 4 - from: entityId to: journeyId type: has_many via: path containment occurrences: 4 - from: root to: product type: has_many via: path containment occurrences: 4 - from: task to: snapshot type: has_many via: path containment occurrences: 4 - from: version to: snapshot type: has_many via: path containment occurrences: 4 - from: creditassessment to: assessment type: has_many via: path containment occurrences: 4 - from: assessment to: version type: has_many via: path containment occurrences: 4 - from: providers to: configuration type: has_many via: path containment occurrences: 4 - from: providers to: test type: has_many via: path containment occurrences: 4 - from: versions to: components type: has_many via: path containment occurrences: 4 - from: journey to: dataKey type: has_many via: path containment occurrences: 4 - from: draft to: shared-data-template type: has_many via: path containment occurrences: 4 - from: provider to: mapping type: has_many via: path containment occurrences: 4 - from: clients to: secrets type: has_many via: path containment occurrences: 4 - from: version to: file type: has_many via: path containment occurrences: 4 - from: version to: submit type: has_many via: path containment occurrences: 4 - from: version to: fields type: has_many via: path containment occurrences: 4 - from: policies to: versions type: has_many via: path containment occurrences: 4 - from: provider to: configuration-set type: has_many via: path containment occurrences: 4 - from: screening-results-view to: user-selection type: has_many via: path containment occurrences: 4 - from: product to: journey type: has_many via: path containment occurrences: 3 - from: access-layer to: users type: has_many via: path containment occurrences: 3 - from: team to: users type: has_many via: path containment occurrences: 3 - from: task to: comment type: has_many via: path containment occurrences: 3 - from: asset to: draft type: has_many via: path containment occurrences: 3 - from: collateral to: draft type: has_many via: path containment occurrences: 3 - from: CovenantCondition to: version type: has_many via: path containment occurrences: 3 - from: set to: snapshot type: has_many via: path containment occurrences: 3 - from: record-reference-ingestion to: execution type: has_many via: path containment occurrences: 3 - from: jurisdiction-evaluation to: execution type: has_many via: path containment occurrences: 3 - from: access-layer-propagation to: execution type: has_many via: path containment occurrences: 3 - from: deals to: drafts type: has_many via: path containment occurrences: 3 - from: draft to: reject type: has_many via: path containment occurrences: 3 - from: draft to: risk type: has_many via: path containment occurrences: 3 - from: draft to: role type: has_many via: path containment occurrences: 3 - from: draft to: access-layers type: has_many via: path containment occurrences: 3 - from: draft to: conflicts type: has_many via: path containment occurrences: 3 - from: provider to: adapterSchema type: has_many via: path containment occurrences: 3 - from: provider to: test type: has_many via: path containment occurrences: 3 - from: configs to: draft type: has_many via: path containment occurrences: 3 - from: execution to: attempt type: has_many via: path containment occurrences: 3 - from: attempt to: step-logs type: has_many via: path containment occurrences: 3 - from: CustomTable to: rows type: has_many via: path containment occurrences: 3 - from: batch to: complete type: has_many via: path containment occurrences: 3 - from: batch to: matches type: has_many via: path containment occurrences: 3 - from: entity to: updatemateriality type: has_many via: path containment occurrences: 3