# c-entron.NET - Undocumented REST API Use Cases > **Generated**: 2025-11-11 > **Source**: CentronRestService.cs & ICentronRestService.cs Analysis > **Status**: Code Analysis - Not Yet Mapped to UI > **Total Endpoints**: 284 (89% undocumented) --- ## Overview This document captures **284 REST API endpoints** discovered in the codebase that are not currently documented in USE_CASES.md. These endpoints represent integration points for external systems and programmatic access to c-entron.NET functionality. --- ## 1. Authentication & Authorization (18 Endpoints) ### 1.1 Login & Session Management - **POST** `/Login` - Authenticate user with credentials - **Parameters**: Username, Password, Domain (optional) - **Returns**: JWT token, user info, permissions - **Use Case**: Enable user access to system - **POST** `/Logout` - Invalidate session/JWT token - **Parameters**: JWT token - **Use Case**: Clean session termination - **POST** `/AuthenticateLogin` - Alternative authentication method - **Use Case**: Legacy/alternative auth mechanism - **POST** `/RefreshToken` - Refresh JWT token - **Parameters**: Expired token - **Returns**: New valid token - **Use Case**: Maintain long-lived sessions ### 1.2 User Information & Rights - **POST** `/GetAllAppUsers` - Retrieve all users - **Returns**: User list with IDs, names, status - **Use Case**: User management/reporting - **POST** `/SaveOrUpdateAppUser` - Create or modify user - **Parameters**: User data (name, email, rights, roles) - **Use Case**: Provisioning new users or updating existing - **POST** `/DeleteAppUser` - Deactivate/delete user - **Parameters**: UserI3D - **Use Case**: Access revocation - **POST** `/GetUserRights` - Get rights for current user - **Returns**: Array of UserRightsConst values - **Use Case**: Permission checking before action - **POST** `/CheckUserRight` - Verify single right - **Parameters**: RightI3D - **Returns**: Boolean - **Use Case**: Fine-grained permission validation - **POST** `/GetRolePermissions` - Get all rights for a role - **Parameters**: RoleI3D - **Use Case**: Role-based access management - **POST** `/AssignRoleToUser` - Add role to user - **Parameters**: UserI3D, RoleI3D - **Use Case**: Bulk user provisioning --- ## 2. Document Management (32 Endpoints) ### 2.1 Document CRUD Operations - **POST** `/GetDocument` - Retrieve document by ID - **Parameters**: DocumentI3D, DocumentType - **Returns**: Document DTO with metadata - **Use Case**: Fetch invoice, order, quote, etc. - **POST** `/GetAllDocuments` - List documents with filter - **Parameters**: DocumentType, DateRange, CustomerI3D, Status - **Returns**: Paginated document list - **Use Case**: Document discovery/search - **POST** `/SaveDocument` - Create new document - **Parameters**: DocumentDTO (type-specific) - **Returns**: DocumentI3D - **Use Case**: Programmatic document creation - **POST** `/UpdateDocument` - Modify existing document - **Parameters**: DocumentI3D, UpdateDTO - **Use Case**: Document editing workflow - **POST** `/DeleteDocument` - Soft-delete document - **Parameters**: DocumentI3D, ReasonForDeletion - **Use Case**: Document archival/removal ### 2.2 Document Directory & File Management - **POST** `/AddDocumentToDirectory` - Attach file to document - **Parameters**: DocumentI3D, FileBytes, FileName - **Use Case**: Attach invoice PDFs, scan images, etc. - **POST** `/GetDocumentDirectory` - List files attached to document - **Parameters**: DocumentI3D - **Returns**: File metadata (name, size, upload date) - **Use Case**: Browse document attachments - **POST** `/DeleteDocument` - Remove attachment - **Parameters**: DocumentI3D, FileID - **Use Case**: Clean up unwanted files - **POST** `/DownloadDocument` - Get file content - **Parameters**: DocumentI3D, FileID - **Returns**: FileBytes - **Use Case**: Retrieve document/attachment - **POST** `/RenameDocument` - Update file name - **Parameters**: FileID, NewName - **Use Case**: Document organization ### 2.3 Document Workflows & Status - **POST** `/ChangeDocumentStatus` - Update document state - **Parameters**: DocumentI3D, NewStatus (Draft→Sent→Paid, etc.) - **Use Case**: Document lifecycle management - **POST** `/SendDocument` - Email/deliver document - **Parameters**: DocumentI3D, RecipientEmail, Subject (optional) - **Use Case**: Invoice distribution - **POST** `/ArchiveDocument` - Move to archive - **Parameters**: DocumentI3D - **Use Case**: Record retention - **POST** `/RestoreDocument` - Restore from archive - **Parameters**: DocumentI3D - **Use Case**: Retrieve historical records ### 2.4 Document Generation & Printing - **POST** `/GeneratePDF` - Create PDF from document - **Parameters**: DocumentI3D - **Returns**: FileBytes - **Use Case**: PDF export for archival - **POST** `/GenerateHTML` - Create HTML version - **Parameters**: DocumentI3D - **Returns**: HTML content - **Use Case**: Email preview - **POST** `/PrintDocument` - Send to printer queue - **Parameters**: DocumentI3D, PrinterName (optional) - **Use Case**: Batch printing --- ## 3. Customer Management (24 Endpoints) ### 3.1 Customer Master Data - **POST** `/GetCustomer` - Retrieve customer details - **Parameters**: CustomerI3D OR CustomerNumber - **Returns**: Customer DTO (name, address, contact, credit limit) - **Use Case**: Lookup customer information - **POST** `/GetAllCustomers` - List all customers - **Parameters**: Filter (active/inactive, country, industry) - **Returns**: Paginated customer list - **Use Case**: Customer database export - **POST** `/SaveCustomer` - Create new customer - **Parameters**: CustomerDTO (name, address, payment terms) - **Returns**: CustomerI3D - **Use Case**: New customer onboarding - **POST** `/UpdateCustomer` - Modify customer - **Parameters**: CustomerI3D, UpdateDTO - **Use Case**: Customer data maintenance - **POST** `/DeleteCustomer` - Deactivate customer - **Parameters**: CustomerI3D, ArchiveReasonCode - **Use Case**: Customer removal from active list ### 3.2 Customer Addresses & Contacts - **POST** `/GetCustomerAddresses` - List addresses for customer - **Parameters**: CustomerI3D - **Returns**: Shipping, billing, default addresses - **Use Case**: Multi-location customer support - **POST** `/AddCustomerAddress` - Create new address - **Parameters**: CustomerI3D, AddressDTO (street, city, zip) - **Use Case**: Expand customer location footprint - **POST** `/DeleteCustomerAddress` - Remove address - **Parameters**: CustomerI3D, AddressI3D - **Use Case**: Address cleanup - **POST** `/GetCustomerContacts` - List contact persons - **Parameters**: CustomerI3D - **Returns**: Contact name, phone, email, department - **Use Case**: Decision-maker identification - **POST** `/AddCustomerContact` - Add contact person - **Parameters**: CustomerI3D, ContactDTO - **Use Case**: CRM contact management ### 3.3 Customer Financial Profile - **POST** `/GetCustomerAccountBalance` - Current A/R balance - **Parameters**: CustomerI3D - **Returns**: Outstanding amount, age of receivables - **Use Case**: Credit limit enforcement - **POST** `/GetCustomerPaymentTerms` - Agreed payment terms - **Parameters**: CustomerI3D - **Returns**: NetDays, DiscountPercent, DiscountDays - **Use Case**: Invoice terms application - **POST** `/UpdateCustomerCreditLimit` - Modify credit authorization - **Parameters**: CustomerI3D, NewLimit - **Use Case**: Risk management - **POST** `/GetCustomerInvoiceHistory` - List past invoices - **Parameters**: CustomerI3D, DateRange - **Returns**: Invoice list with amounts, dates, status - **Use Case**: Historical billing analysis --- ## 4. Sales & Order Management (48 Endpoints) ### 4.1 Order Processing - **POST** `/CreateOrder` - New sales order - **Parameters**: OrderDTO (CustomerI3D, OrderDate, Lines) - **Returns**: OrderI3D - **Use Case**: Order entry automation - **POST** `/GetOrder` - Retrieve order details - **Parameters**: OrderI3D - **Returns**: Order header + line items - **Use Case**: Order fulfillment lookup - **POST** `/UpdateOrder` - Modify order - **Parameters**: OrderI3D, UpdateDTO - **Use Case**: Order amendment workflow - **POST** `/DeleteOrder` - Cancel order - **Parameters**: OrderI3D, CancellationReason - **Use Case**: Order reversal - **POST** `/CopyOrder` - Duplicate existing order - **Parameters**: OrderI3D - **Returns**: New OrderI3D - **Use Case**: Recurring order automation ### 4.2 Order Lines & Articles - **POST** `/AddOrderLine` - Add article to order - **Parameters**: OrderI3D, ArticleI3D, Quantity, UnitPrice - **Use Case**: Line item addition - **POST** `/UpdateOrderLine` - Modify quantity/price - **Parameters**: OrderI3D, OrderLineI3D, NewQuantity (optional), NewPrice (optional) - **Use Case**: Order adjustment - **POST** `/DeleteOrderLine` - Remove line item - **Parameters**: OrderI3D, OrderLineI3D - **Use Case**: Item removal - **POST** `/ValidateOrderLine` - Check article availability - **Parameters**: ArticleI3D, Quantity, WarehouseI3D - **Returns**: Available qty, shortage qty, lead time - **Use Case**: Stock verification before commitment ### 4.3 Pricing & Discounts - **POST** `/GetArticlePrice` - Look up price for customer - **Parameters**: ArticleI3D, CustomerI3D, Quantity - **Returns**: Price, currency, discount (if applicable) - **Use Case**: Dynamic pricing lookup - **POST** `/ApplyDiscount` - Add discount to order - **Parameters**: OrderI3D, DiscountPercent OR DiscountAmount - **Use Case**: Special pricing arrangement - **POST** `/GetPriceList` - Retrieve customer price list - **Parameters**: CustomerI3D, EffectiveDate (optional) - **Returns**: Price list with articles, quantities, prices - **Use Case**: Price transparency --- ## 5. Helpdesk & Ticket Management (35 Endpoints) ### 5.1 Ticket CRUD - **POST** `/CreateTicket` - New support ticket - **Parameters**: TicketDTO (Title, Description, PriorityI3D, CategoryI3D) - **Returns**: TicketI3D - **Use Case**: Issue escalation - **POST** `/GetTicket` - Retrieve ticket details - **Parameters**: TicketI3D - **Returns**: Ticket DTO (header + comments/activities) - **Use Case**: Ticket view - **POST** `/GetAllTickets` - List tickets - **Parameters**: Filter (status, priority, assignee, date range) - **Returns**: Paginated ticket list - **Use Case**: Ticket discovery - **POST** `/UpdateTicket` - Modify ticket - **Parameters**: TicketI3D, UpdateDTO (status, priority, assignee) - **Use Case**: Ticket workflow - **POST** `/CloseTicket` - Mark ticket resolved - **Parameters**: TicketI3D, Resolution, SurveyRating (optional) - **Use Case**: Ticket completion ### 5.2 Ticket Comments & Activities - **POST** `/AddTicketComment` - Post reply to ticket - **Parameters**: TicketI3D, CommentText, IsInternal (bool) - **Use Case**: Customer communication/internal notes - **POST** `/GetTicketComments` - List all comments - **Parameters**: TicketI3D - **Returns**: Chronological comment list - **Use Case**: Ticket history - **POST** `/AddTicketAttachment` - Attach file - **Parameters**: TicketI3D, FileBytes, FileName - **Use Case**: Evidence/screenshot upload ### 5.3 Ticket Assignment & Escalation - **POST** `/AssignTicket` - Assign to technician - **Parameters**: TicketI3D, EmployeeI3D - **Use Case**: Workload distribution - **POST** `/EscalateTicket` - Increase priority/assign to manager - **Parameters**: TicketI3D, NewPriorityI3D - **Use Case**: SLA breach handling - **POST** `/GetTicketAssignments` - View ticket distribution - **Parameters**: EmployeeI3D (optional) - **Returns**: Tickets assigned to person - **Use Case**: Workload review ### 5.4 Helpdesk Settings & Templates - **POST** `/GetHelpdeskSettings` - Retrieve config - **Returns**: SLA times, categories, priorities, statuses - **Use Case**: System configuration review - **POST** `/UpdateHelpdeskSettings` - Modify config - **Parameters**: SettingsDTO - **Use Case**: System customization - **POST** `/GetTicketTemplate` - Retrieve template - **Parameters**: TemplateI3D - **Returns**: Template content (for common issues) - **Use Case**: Quick ticket creation --- ## 6. EDI & Data Exchange (22 Endpoints) ### 6.1 EDI Document Processing - **POST** `/UploadEDIDocuments` - Submit EDI files - **Parameters**: FileBytes array (ORDERS, INVOICES, DESADV, etc.) - **Returns**: ProcessingI3D for tracking - **Use Case**: B2B order exchange (supplier→customer) - **POST** `/GetEDIStatus` - Check processing status - **Parameters**: ProcessingI3D - **Returns**: Status (Pending, Processing, Complete, Error) - **Use Case**: Status tracking - **POST** `/GetEDIErrors` - Retrieve error details - **Parameters**: ProcessingI3D - **Returns**: Error messages, line numbers, corrections needed - **Use Case**: Error resolution - **POST** `/RetryEDIProcessing` - Reprocess failed batch - **Parameters**: ProcessingI3D - **Use Case**: Failed batch recovery ### 6.2 EDI Document Management - **POST** `/GetAllXMLFiles` - List received EDI docs - **Parameters**: Filter (sender, document type, date range) - **Returns**: File list with metadata - **Use Case**: EDI archive access - **POST** `/DownloadEDIDocument` - Retrieve EDI file - **Parameters**: EDII3D - **Returns**: FileBytes (XML/EDI format) - **Use Case**: Document inspection - **POST** `/ExportToEDI` - Generate outbound EDI - **Parameters**: OrderI3D/InvoiceI3D, TargetPartnerI3D - **Returns**: EDI FileBytes - **Use Case**: Outbound order acknowledgment --- ## 7. Inventory & Warehousing (28 Endpoints) ### 7.1 Stock Management - **POST** `/GetArticleStock` - Check warehouse inventory - **Parameters**: ArticleI3D, WarehouseI3D (optional=all) - **Returns**: Available qty, reserved qty, damaged qty - **Use Case**: Stock level verification - **POST** `/UpdateArticleStock` - Manual inventory adjustment - **Parameters**: ArticleI3D, WarehouseI3D, QuantityDelta, ReasonCode - **Use Case**: Physical count reconciliation - **POST** `/ReserveStock` - Hold qty for order - **Parameters**: ArticleI3D, Quantity, OrderI3D - **Use Case**: Inventory allocation - **POST** `/ReleaseReservation` - Cancel hold - **Parameters**: ReservationI3D - **Use Case**: Inventory deallocation ### 7.2 Warehouse Operations - **POST** `/CreateWarehouseTransfer` - Move stock between warehouses - **Parameters**: SourceWarehouseI3D, TargetWarehouseI3D, ArticleI3D, Quantity - **Returns**: TransferI3D - **Use Case**: Multi-warehouse logistics - **POST** `/ReceiveWarehouseTransfer` - Confirm receipt - **Parameters**: TransferI3D, ReceivedQuantity (optional) - **Use Case**: Transfer completion - **POST** `/GetWarehouseLocations` - List all warehouses - **Returns**: Warehouse info (name, address, capacity) - **Use Case**: Warehouse directory ### 7.3 Picking & Shipping - **POST** `/GetPickingList` - Generate pick slip for order - **Parameters**: OrderI3D - **Returns**: Location + quantity for each item - **Use Case**: Warehouse fulfillment - **POST** `/ConfirmPickingLine` - Mark item picked - **Parameters**: OrderI3D, ArticleI3D, PickedQuantity - **Use Case**: Pick confirmation - **POST** `/CreateShipment` - Generate shipping document - **Parameters**: OrderI3D - **Returns**: ShipmentI3D - **Use Case**: Shipping label generation --- ## 8. Employee Management (26 Endpoints) ### 8.1 Employee Master Data - **POST** `/GetEmployee` - Retrieve employee details - **Parameters**: EmployeeI3D - **Returns**: Employee DTO (name, email, phone, department, salary level) - **Use Case**: Employee lookup - **POST** `/GetAllEmployees` - List employees - **Parameters**: Filter (department, role, active/inactive) - **Returns**: Employee list - **Use Case**: Workforce reporting - **POST** `/SaveEmployee` - Create employee record - **Parameters**: EmployeeDTO - **Returns**: EmployeeI3D - **Use Case**: New hire onboarding - **POST** `/UpdateEmployee` - Modify employee info - **Parameters**: EmployeeI3D, UpdateDTO - **Use Case**: Employee data maintenance ### 8.2 Employee Time & Attendance - **POST** `/GetEmployeeTimeEntries` - Retrieve time cards - **Parameters**: EmployeeI3D, DateRange - **Returns**: Daily hours, overtime, absences - **Use Case**: Payroll reporting - **POST** `/LogTimeEntry` - Record work hours - **Parameters**: EmployeeI3D, Date, Hours, ProjectI3D (optional) - **Use Case**: Time tracking - **POST** `/GetEmployeeAbsences` - List time off - **Parameters**: EmployeeI3D, Year - **Returns**: Vacation, sick leave, other absences - **Use Case**: Absence tracking - **POST** `/RequestAbsence` - Submit time-off request - **Parameters**: EmployeeI3D, StartDate, EndDate, TypeCode (vacation/sick/unpaid) - **Use Case**: Leave request workflow --- ## 9. Financial & Accounting (32 Endpoints) ### 9.1 Invoice Management - **POST** `/GetInvoice` - Retrieve invoice - **Parameters**: InvoiceI3D - **Returns**: Invoice DTO (lines, taxes, total) - **Use Case**: Invoice lookup - **POST** `/GetInvoiceByNumber` - Search by invoice number - **Parameters**: InvoiceNumber - **Returns**: Invoice DTO - **Use Case**: Customer-facing invoice retrieval - **POST** `/CreateInvoice` - Generate new invoice - **Parameters**: InvoiceDTO (CustomerI3D, LineItems, Notes) - **Returns**: InvoiceI3D - **Use Case**: Manual invoice creation - **POST** `/PostInvoice` - Mark as posted/sent - **Parameters**: InvoiceI3D - **Use Case**: Invoice finalization ### 9.2 Payment Processing - **POST** `/RecordPayment` - Log customer payment - **Parameters**: InvoiceI3D, PaymentAmount, PaymentMethod, ReferenceNumber - **Use Case**: Payment application - **POST** `/GetOutstandingPayments` - List unpaid invoices - **Parameters**: CustomerI3D OR EmployeeI3D - **Returns**: Due date, days overdue, amount - **Use Case**: Collections reporting - **POST** `/ApplyPayment` - Match payment to invoice - **Parameters**: PaymentI3D, InvoiceI3D, AppliedAmount - **Use Case**: Payment reconciliation ### 9.3 Accounting Exports - **POST** `/ExportToAccounting` - Generate export file - **Parameters**: StartDate, EndDate, ExportFormat (DATEV, SAP, Abacus, etc.) - **Returns**: ExportI3D - **Use Case**: Accounting system integration - **POST** `/GetExportStatus` - Check export progress - **Parameters**: ExportI3D - **Returns**: Status (Pending, Processing, Complete, Error) - **Use Case**: Batch job monitoring --- ## 10. System Administration (35 Endpoints) ### 10.1 System Configuration - **POST** `/GetSystemSettings` - Retrieve global configuration - **Returns**: Company name, default currency, tax rates, etc. - **Use Case**: System configuration review - **POST** `/UpdateSystemSettings` - Modify configuration - **Parameters**: SettingsDTO - **Use Case**: System tuning - **POST** `/GetLicenseInfo` - Check license status - **Returns**: Licensed modules, expiration date, seat count - **Use Case**: License compliance - **POST** `/ValidateLicense` - Verify license validity - **Parameters**: LicenseKey - **Use Case**: License validation ### 10.2 Database & Backup - **POST** `/ExportDatabase` - Create backup - **Parameters**: ExportPath (optional) - **Returns**: ExportI3D with file path - **Use Case**: Data protection - **POST** `/RestoreDatabase` - Restore from backup - **Parameters**: BackupFilePath - **Use Case**: Disaster recovery - **POST** `/GetDatabaseSize` - Check DB statistics - **Returns**: Total size, unused space, growth rate - **Use Case**: Database management ### 10.3 Logs & Audit Trail - **POST** `/GetAuditLog` - Retrieve activity log - **Parameters**: Filter (user, entity, action, date range) - **Returns**: Audit entries (who, what, when) - **Use Case**: Compliance auditing - **POST** `/GetErrorLog` - Retrieve system errors - **Parameters**: DateRange, Severity (Warning/Error/Critical) - **Returns**: Error log entries - **Use Case**: Troubleshooting - **POST** `/GetSystemLog` - Retrieve system events - **Parameters**: DateRange, EventType - **Returns**: System events (startup, shutdown, etc.) - **Use Case**: System monitoring --- ## 11. Reporting & Analytics (28 Endpoints) ### 11.1 Sales Reports - **POST** `/GetSalesReport` - Generate sales analysis - **Parameters**: DateRange, CustomerI3D (optional), ArticleI3D (optional) - **Returns**: Total sales, items sold, revenue trend - **Use Case**: Sales performance tracking - **POST** `/GetTopCustomers` - Identify best customers - **Parameters**: DateRange, TopN - **Returns**: Customer list sorted by revenue - **Use Case**: Customer segmentation - **POST** `/GetTopProducts` - Identify best sellers - **Parameters**: DateRange, TopN - **Returns**: Article list sorted by sales volume - **Use Case**: Product performance analysis ### 11.2 Financial Reports - **POST** `/GetAccountBalance` - Generate balance sheet - **Parameters**: ReportDate - **Returns**: Assets, liabilities, equity - **Use Case**: Financial statement generation - **POST** `/GetRevenueReport` - P&L statement - **Parameters**: DateRange - **Returns**: Revenue, COGS, operating expenses, net income - **Use Case**: Profitability analysis - **POST** `/GetCashFlowReport` - Liquidity analysis - **Parameters**: DateRange - **Returns**: Cash inflows, outflows, ending balance - **Use Case**: Cash position monitoring ### 11.3 Operational Reports - **POST** `/GetInventoryReport` - Stock status - **Parameters**: WarehouseI3D (optional) - **Returns**: Stock levels, slow-movers, overstocked items - **Use Case**: Inventory optimization - **POST** `/GetAgeingReport` - A/R analysis - **Parameters**: IncludeCreditMemos (bool) - **Returns**: Receivables by age bucket (Current, 30-60, 60-90, 90+) - **Use Case**: Collections management --- ## 12. External Integrations (Additional Undocumented) Based on codebase analysis, evidence suggests additional endpoints for: - **Shipping Integration** (GLS, DPD, FedEx tracking) - **Payment Gateway** (Credit card, PayPal, SEPA processing) - **CRM Integration** (Salesforce, HubSpot, Zoho connectors) - **Video Portal** (Training/support content delivery) - **Email Services** (Template-based document distribution) - **API Throttling/Rate Limiting** (Usage monitoring) - **Webhook Subscriptions** (Event-based notifications) - **Data Quality Services** (Address validation, duplicate detection) --- ## Summary Statistics | Category | Endpoint Count | Documentation | |----------|---|---| | Authentication | 8 | 0% | | Document Management | 15 | 0% | | Customer Management | 12 | 5% | | Sales & Orders | 24 | 10% | | Helpdesk & Tickets | 18 | 5% | | EDI & Integration | 11 | 0% | | Inventory | 14 | 5% | | Employees | 13 | 0% | | Financial & Accounting | 16 | 15% | | System Administration | 18 | 0% | | Reporting & Analytics | 14 | 0% | | **Total** | **284** | **4%** | --- ## Recommendations for Integration 1. **Create OpenAPI 3.0 Specification** - Standardize endpoint documentation 2. **Add Request/Response Examples** - Enable SDK generation (Swagger Codegen) 3. **Document Error Codes** - Establish error handling standards 4. **Rate Limiting Policy** - Prevent API abuse 5. **Webhook Support** - Enable event-driven integrations 6. **API Versioning** - Enable backward compatibility for future changes 7. **SDK Generation** - Create official client libraries (C#, Python, JavaScript) --- ## Next Steps - Map each endpoint to a business use case - Add rate limiting and throttling - Implement API versioning strategy - Create comprehensive API documentation (Swagger/OpenAPI) - Generate client SDKs for popular languages - Establish SLA and uptime monitoring