Chapter 20: Appendices and Reference
This chapter serves as the comprehensive reference companion to the MATIH Enterprise Platform documentation. It contains exhaustive listings, lookup tables, architectural decision records, and technical specifications that support every other chapter in this book.
Purpose of This Chapter
Throughout the preceding nineteen chapters, we have explored the MATIH Platform from its founding vision through architecture, security, installation, workbench experiences, Kubernetes operations, CI/CD pipelines, and observability. This final chapter consolidates the reference material that platform engineers, developers, administrators, and operators need for day-to-day work.
Rather than duplicating content from earlier chapters, this chapter provides canonical reference tables and lookup resources. When you need to find a port number, look up an error code, check an environment variable, or verify an API endpoint, this is where you turn.
Chapter Structure
| Section | Description | Primary Audience |
|---|---|---|
| Complete API Reference | Every REST endpoint across all 24 services, organized by service with request/response schemas | Backend developers, integration engineers |
| Architecture Decision Records | Formal ADRs documenting key architectural choices with context, decision, and consequences | Architects, tech leads, new team members |
| Error Codes and Status Codes | Exhaustive catalog of platform error codes, HTTP status usage, and error response structures | All developers, support engineers |
| Glossary | 150+ terms covering platform concepts, Kubernetes, data engineering, ML/AI, BI, and security | Everyone |
| Port Assignments | Canonical port registry for all 40+ services derived from scripts/config/components.yaml | Platform engineers, DevOps, network admins |
| Environment Variables | Complete catalog of environment variables for every service, grouped by concern | Developers, platform engineers, SREs |
| Keyboard Shortcuts | Per-workbench keyboard shortcut reference for BI, Data, ML, and Agentic workbenches | End users, power users |
| SDK Documentation | Python, TypeScript, and Java SDK guides with installation, authentication, and usage examples | Integration developers, data scientists |
| Connector SDK Guide | Building custom connectors for databases, cloud storage, and SaaS applications | Connector developers, partners |
| Template Library | Reference catalog for BI, Data, ML, Agentic, Ontology, Notebook, and Spark templates | Data engineers, analysts, ML engineers |
| Version History | Release changelog format, semantic versioning strategy, and historical release notes | All users, upgrade planners |
How to Use This Reference
This chapter is designed for non-linear access. You do not need to read it from beginning to end. Instead, use the table above or the sidebar navigation to jump directly to the reference section you need.
Cross-References from Other Chapters
The following table maps common lookup needs to the appropriate appendix section:
| When You Need To... | Go To |
|---|---|
| Find the port for a specific service | Port Assignments |
| Look up an API endpoint and its parameters | Complete API Reference |
| Understand why an architectural choice was made | Architecture Decision Records |
| Decode an error response from a service | Error Codes |
| Check what environment variables a service expects | Environment Variables |
| Learn the meaning of a platform-specific term | Glossary |
| Configure an SDK client in your application | SDK Documentation |
| Build a custom data connector | Connector SDK Guide |
| Bootstrap a new project from a template | Template Library |
| Check what changed in a release | Version History |
| Memorize keyboard shortcuts for a workbench | Keyboard Shortcuts |
Conventions Used in This Chapter
Throughout this reference chapter, we use the following conventions consistently:
| Convention | Meaning |
|---|---|
monospace | Code, commands, environment variable names, file paths |
| Bold | Important terms, service names, or emphasis |
GET /api/v1/resource | HTTP method followed by the endpoint path |
{tenant_id} | Path parameter placeholder |
?page=1&size=20 | Query parameter examples |
200 OK | HTTP status code with reason phrase |
MATIH-SVC-NNNN | Custom platform error code format |
Status Labels in ADRs
| Label | Meaning |
|---|---|
| Accepted | Decision has been formally accepted and is in effect |
| Proposed | Decision is under discussion and not yet finalized |
| Deprecated | Decision has been superseded by a newer ADR |
| Superseded | Decision has been replaced; the replacement ADR is referenced |
Keeping This Reference Current
This reference chapter is maintained as part of the platform source code repository. The canonical source of truth for port assignments is scripts/config/components.yaml. Environment variables are derived from Helm chart values files under infrastructure/helm/. API endpoints are generated from OpenAPI specifications maintained alongside each service.
When you find a discrepancy between this documentation and the running system, the source code and configuration files take precedence. Please file an issue or submit a pull request to keep this reference accurate.
Prerequisites
No specific prerequisites are required to use this reference. Familiarity with HTTP APIs, environment variables, and Kubernetes concepts will help you get the most out of the API Reference, Environment Variables, and Port Assignments sections respectively. The Glossary is available to clarify any unfamiliar terms.