{ "schemaVersion": "1.0", "apiVersion": "2.1.0", "problemSchema": "../problems/kbx.problem.schema.json", "operations": [ { "method": "POST", "path": "/api/common/ai/ask", "permission": "common.ai.use", "source": "backend/Modules/Common/Ai/Ask/Endpoint.cs", "id": "common.ai.ask", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/kbx/experiments/assignments", "permission": "common.experiment.evaluate", "source": "backend/Modules/Common/Experiments/Assignments/Endpoint.cs", "id": "common.experiments.assignments", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/kbx/experiments", "permission": "common.experiment.read", "source": "backend/Modules/Common/Experiments/Overview/Endpoint.cs", "id": "common.experiments.overview", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/kbx/experiments/{experimentId}/rollback", "permission": "common.experiment.manage", "source": "backend/Modules/Common/Experiments/Rollback/Endpoint.cs", "id": "common.experiments.rollback", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/kbx/experiments/{experimentId}/rollout", "permission": "common.experiment.manage", "source": "backend/Modules/Common/Experiments/Rollout/Endpoint.cs", "id": "common.experiments.rollout", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/kbx/external-data/{datasetId}/refresh", "permission": "common.external-data.refresh", "source": "backend/Modules/Common/ExternalData/Refresh/Endpoint.cs", "id": "common.externalData.refresh", "kind": "command", "idempotency": "supported", "successStatuses": [ 202 ] }, { "method": "GET", "path": "/api/kbx/external-data/status", "permission": "common.external-data.read", "source": "backend/Modules/Common/ExternalData/Status/Endpoint.cs", "id": "common.externalData.status", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/imports/sessions/{sessionId:guid}/commit", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/CommitEndpoint.cs", "id": "common.imports.commit", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/imports/sessions", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/CreateSessionEndpoint.cs", "id": "common.imports.createSession", "kind": "upload", "idempotency": "supported", "successStatuses": [ 200 ], "contentType": "multipart/form-data" }, { "method": "GET", "path": "/api/imports/sessions/{sessionId:guid}/errors.xlsx", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/ErrorWorkbookEndpoint.cs", "id": "common.imports.errorWorkbook", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ], "responseType": "blob" }, { "method": "GET", "path": "/api/imports/sessions/{sessionId:guid}", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/GetSessionEndpoint.cs", "id": "common.imports.getSession", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "PUT", "path": "/api/imports/sessions/{sessionId:guid}/mapping", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/SaveMappingEndpoint.cs", "id": "common.imports.saveMapping", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/imports/sessions/{sessionId:guid}/saved-mappings", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/SaveNamedMappingEndpoint.cs", "id": "common.imports.saveNamedMapping", "kind": "command", "idempotency": "supported", "successStatuses": [ 204 ] }, { "method": "GET", "path": "/api/imports/{importType}/template", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/TemplateEndpoint.cs", "id": "common.imports.template", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ], "responseType": "blob" }, { "method": "POST", "path": "/api/imports/sessions/{sessionId:guid}/validate", "permission": "imports.execute", "source": "backend/Modules/Common/Imports/Endpoints/ValidateEndpoint.cs", "id": "common.imports.validate", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/integrations/attempts/{attemptId:guid}", "permission": "common.integration.read", "source": "backend/Modules/Common/Integrations/Attempts/Get/Endpoint.cs", "id": "common.integrations.getAttempt", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/integrations/attempts/{attemptId:guid}/retry", "permission": "common.integration.retry", "source": "backend/Modules/Common/Integrations/Attempts/Retry/Endpoint.cs", "id": "common.integrations.retryAttempt", "kind": "command", "idempotency": "required", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/operations/work-items/claim", "permission": "common.operations.claim", "source": "backend/Modules/Common/Operations/Claim/Endpoint.cs", "id": "common.operations.claim", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/operations/work-items/resolve", "permission": "common.operations.resolve", "source": "backend/Modules/Common/Operations/Resolve/Endpoint.cs", "id": "common.operations.resolve", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/operations/work-items/{id:guid}/retry", "permission": "common.operations.retry", "source": "backend/Modules/Common/Operations/Retry/Endpoint.cs", "id": "common.operations.retry", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/operations/work-items", "permission": "common.operations.read", "source": "backend/Modules/Common/Operations/Search/Endpoint.cs", "id": "common.operations.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/reconcile/items/create-exceptions", "permission": "common.operations.create", "source": "backend/Modules/Common/Reconcile/CreateExceptions/Endpoint.cs", "id": "common.reconcile.createExceptions", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/reconcile/items", "permission": "common.reconcile.read", "source": "backend/Modules/Common/Reconcile/Search/Endpoint.cs", "id": "common.reconcile.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/kbx/runtime/notice", "permission": "common.runtime.read", "source": "backend/Modules/Common/Runtime/Health/Endpoint.cs", "id": "common.runtime.notice", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/kbx/runtime/notifications/{Id}/read", "permission": "common.runtime.read", "source": "backend/Modules/Common/Runtime/Notifications/Endpoint.cs", "id": "common.runtime.notificationRead", "kind": "command", "idempotency": "supported", "successStatuses": [ 204 ] }, { "method": "GET", "path": "/api/kbx/runtime/notifications", "permission": "common.runtime.read", "source": "backend/Modules/Common/Runtime/Notifications/Endpoint.cs", "id": "common.runtime.notifications", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/kbx/runtime/operations", "permission": "common.runtime.read", "source": "backend/Modules/Common/Runtime/Operations/Endpoint.cs", "id": "common.runtime.operations", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/common/suggestions", "permission": "common.suggestion.create", "source": "backend/Modules/Common/Suggestions/Submit/Endpoint.cs", "id": "common.suggestions.submit", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/kbx/ux/events", "permission": "common.telemetry.write", "source": "backend/Modules/Common/UxTelemetry/Ingest/Endpoint.cs", "id": "common.uxTelemetry.ingest", "kind": "command", "idempotency": "none", "successStatuses": [ 204 ] }, { "method": "GET", "path": "/api/kbx/ux/metrics", "permission": "common.ux.read", "source": "backend/Modules/Common/UxTelemetry/Metrics/Endpoint.cs", "id": "common.uxTelemetry.metrics", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/erp/inventory/{itemId}/history", "permission": "erp.inventory.read", "source": "backend/Modules/ERP/Inventory/Search/HistoryEndpoint.cs", "id": "erp.inventory.history", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/erp/inventory/{itemId}/locations", "permission": "erp.inventory.read", "source": "backend/Modules/ERP/Inventory/Search/LocationsEndpoint.cs", "id": "erp.inventory.locations", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/erp/inventory", "permission": "erp.inventory.read", "source": "backend/Modules/ERP/Inventory/Search/Endpoint.cs", "id": "erp.inventory.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/erp/item-prices/bulk", "permission": "erp.item.price.write", "source": "backend/Modules/ERP/ItemPrices/BulkSave/Endpoint.cs", "id": "erp.itemPrices.bulkSave", "kind": "command", "idempotency": "required", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/erp/items/{id}", "permission": "erp.item.read", "source": "backend/Modules/ERP/Items/Get/Endpoint.cs", "id": "erp.items.get", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/erp/items", "permission": "erp.item.read", "source": "backend/Modules/ERP/Items/Search/Endpoint.cs", "id": "erp.items.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/customers/by-code/{code}", "permission": "oms.order.read", "source": "backend/Modules/OMS/Lookups/Customers/ResolveByCodeEndpoint.cs", "id": "lookup.customers.resolveByCode", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/customers/{id}", "permission": "oms.order.read", "source": "backend/Modules/OMS/Lookups/Customers/ResolveEndpoint.cs", "id": "lookup.customers.resolveById", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/customers", "permission": "oms.order.read", "source": "backend/Modules/OMS/Lookups/Customers/Endpoint.cs", "id": "lookup.customers.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/items/by-code/{code}", "permission": "erp.item.read", "source": "backend/Modules/OMS/Lookups/Items/ResolveByCodeEndpoint.cs", "id": "lookup.items.resolveByCode", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/items/{id}", "permission": "erp.item.read", "source": "backend/Modules/OMS/Lookups/Items/ResolveEndpoint.cs", "id": "lookup.items.resolveById", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/items", "permission": "erp.item.read", "source": "backend/Modules/OMS/Lookups/Items/Endpoint.cs", "id": "lookup.items.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/warehouses/by-code/{code}", "permission": "oms.order.read", "source": "backend/Modules/OMS/Lookups/Warehouses/ResolveByCodeEndpoint.cs", "id": "lookup.warehouses.resolveByCode", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/warehouses/{id}", "permission": "oms.order.read", "source": "backend/Modules/OMS/Lookups/Warehouses/ResolveEndpoint.cs", "id": "lookup.warehouses.resolveById", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/lookups/warehouses", "permission": "oms.order.read", "source": "backend/Modules/OMS/Lookups/Warehouses/Endpoint.cs", "id": "lookup.warehouses.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/claims/{id:guid}/approve", "permission": "oms.claim.approve", "source": "backend/Modules/OMS/Claims/Workflow/Endpoint.cs", "id": "oms.claims.approve", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/claims/{id:guid}/complete", "permission": "oms.claim.process", "source": "backend/Modules/OMS/Claims/Workflow/Endpoint.cs", "id": "oms.claims.complete", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/claims/{id:guid}/hold", "permission": "oms.claim.hold", "source": "backend/Modules/OMS/Claims/Workflow/Endpoint.cs", "id": "oms.claims.hold", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/oms/claims", "permission": "oms.claim.read", "source": "backend/Modules/OMS/Claims/Search/Endpoint.cs", "id": "oms.claims.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/claims/{id:guid}/start", "permission": "oms.claim.process", "source": "backend/Modules/OMS/Claims/Workflow/Endpoint.cs", "id": "oms.claims.start", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/orders/register", "permission": "oms.order.create", "source": "backend/Modules/OMS/Orders/Register/Endpoint.cs", "id": "oms.orders.register", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/oms/orders", "permission": "oms.order.read", "source": "backend/Modules/OMS/Orders/Search/Endpoint.cs", "id": "oms.orders.search", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/orders/ship", "permission": "oms.order.ship", "source": "backend/Modules/OMS/Orders/Ship/Endpoint.cs", "id": "oms.orders.ship", "kind": "command", "idempotency": "required", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/wms/picking/tasks/{taskId:guid}", "permission": "wms.picking.execute", "source": "backend/Modules/WMS/Picking/GetTask/Endpoint.cs", "id": "wms.picking.getTask", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/wms/picking/tasks/{taskId:guid}/exceptions", "permission": "wms.picking.execute", "source": "backend/Modules/WMS/Picking/Exceptions/Endpoint.cs", "id": "wms.picking.reportException", "kind": "command", "idempotency": "required", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/wms/picking/tasks/{taskId:guid}/scan", "permission": "wms.picking.execute", "source": "backend/Modules/WMS/Picking/Scan/Endpoint.cs", "id": "wms.picking.scan", "kind": "command", "idempotency": "required", "successStatuses": [ 200, 422 ] }, { "method": "POST", "path": "/api/wms/picking/tasks/{taskId:guid}/quantity", "permission": "wms.picking.execute", "source": "backend/Modules/WMS/Picking/SetQuantity/Endpoint.cs", "id": "wms.picking.setQuantity", "kind": "command", "idempotency": "required", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/wms/picking/tasks/{taskId:guid}/start", "permission": "wms.picking.execute", "source": "backend/Modules/WMS/Picking/Start/Endpoint.cs", "id": "wms.picking.start", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/erp/items", "permission": "erp.item.create", "source": "backend/Modules/ERP/Items/Save/CreateEndpoint.cs", "id": "erp.items.create", "kind": "command", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "PUT", "path": "/api/erp/items/{id}", "permission": "erp.item.write", "source": "backend/Modules/ERP/Items/Save/UpdateEndpoint.cs", "id": "erp.items.update", "kind": "command", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/erp/items/{id}/deactivate", "permission": "erp.item.write", "source": "backend/Modules/ERP/Items/Deactivate/Endpoint.cs", "id": "erp.items.deactivate", "kind": "command", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/erp/items/{id}/audit", "permission": "erp.item.read", "source": "backend/Modules/ERP/Items/Audit/Endpoint.cs", "id": "erp.items.audit", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/oms/orders/{id}", "permission": "oms.order.read", "source": "backend/Modules/OMS/Orders/Get/Endpoint.cs", "id": "oms.orders.get", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "POST", "path": "/api/oms/orders/{id}/confirm", "permission": "oms.order.confirm", "source": "backend/Modules/OMS/Orders/Confirm/Endpoint.cs", "id": "oms.orders.confirm", "kind": "command", "idempotency": "required", "successStatuses": [ 200 ] }, { "method": "GET", "path": "/api/oms/orders/{id}/audit", "permission": "oms.order.read", "source": "backend/Modules/OMS/Orders/Audit/Endpoint.cs", "id": "oms.orders.audit", "kind": "query", "idempotency": "none", "successStatuses": [ 200 ] }, { "method": "PUT", "path": "/api/oms/orders/{id}", "permission": "oms.order.write", "source": "backend/Modules/OMS/Orders/Register/UpdateEndpoint.cs", "id": "oms.orders.update", "kind": "command", "idempotency": "supported", "successStatuses": [ 200 ] } ] }