Integration Bus
The API gateway, event broker, and data integration layer for the entire Civic platform — every module that communicates flows through this centralized integration fabric.
Uptime SLA
Gateway Latency
Event Throughput
Pre-Built Connectors
Purpose-Built for Canadian Municipalities
How It Works
The identity journey, step by step
From first registration to golden record resolution — how a resident's identity evolves across the platform.
Configure External Connector
An IT administrator sets up a new MPAC property assessment data feed.
How it works
The admin opens the Integration Hub dashboard, selects the pre-built MPAC connector from the catalog, enters the endpoint URL and API credentials (stored encrypted in the credential vault), configures the field mapping between MPAC assessment fields and the platform's property data model, sets a nightly sync schedule via cron expression, and runs a test sync to validate connectivity and data mapping.
Step 1 of 5
Purpose & Scope
What this module owns
Clear ownership boundaries prevent duplication and ensure every capability has exactly one authoritative home.
Owns
12Delegated to
4Application business logic
Identity verification
Notification delivery
Audit logging
These capabilities are handled by dedicated modules and consumed via stable API contracts — keeping boundaries clean and ownership unambiguous.
Core Capabilities
What it does
5 capability groups comprising 10 discrete capabilities — each with API surface, business rules, and data ownership.
All API traffic routes through the gateway — single URL base for external consumers with path-based routing to internal microservices.
Unified Entry Point
All API traffic routes through gateway — single URL base for external consumers.
Routing
Path-based routing to internal microservices.
SSL Termination
TLS 1.3 termination at gateway; mutual TLS for high-security integrations.
CORS Management
Configurable CORS policies per API.
API key, OAuth 2.0, JWT bearer token, and HMAC signature authentication with per-consumer rate limits and progressive throttling.
Authentication
API key, OAuth 2.0 client credentials, JWT bearer token, HMAC signature.
Rate Limiting
Per-consumer rate limits (requests/minute, requests/day); burst allowance.
Throttling
Progressive throttling under load — degrade gracefully.
IP Allowlisting
Restrict API access by source IP range per consumer.
Transform payloads between formats (JSON, XML, CSV) with URL path versioning and deprecation lifecycle management.
Request/Response Transformation
Transform payloads between formats (JSON ↔ XML ↔ CSV).
API Versioning
URL path versioning (/v1/, /v2/) with deprecation notices and sunset headers.
Real-World Scenarios
Who uses this, and how
4 persona-driven scenarios showing how Integration Bus works in practice — from resident registration to privacy compliance.
IT Administrator
MPAC Property Assessment Sync
The municipality receives the annual MPAC property assessment data feed and needs to update property records across tax, planning, and GIS modules.
Steps
- 1MPAC delivers the assessment extract via the pre-built MPAC connector
- 2The ETL pipeline ingests the file, validates record formats, and normalizes addresses
- 3MDM matches incoming records against existing property records using roll number and fuzzy address matching
- 4Updated assessments are applied to golden records with MPAC as the authoritative source for assessment values
- 5The event bus publishes property.assessment.updated for each changed record
- 6Property Tax, Planning, and GIS modules consume the events and update their local data
Outcome
One data feed automatically updates property records across the entire platform. No manual data re-entry, no point-to-point integrations between modules.
View scenario
Operations Staff
External System Outage Recovery
Canada Post's address validation API goes down during a high-volume permit application period.
Steps
- 1The Integration Bus detects consecutive failures from the Canada Post connector
- 2Circuit breaker opens — requests are queued instead of failing immediately
- 3integration.connector_health_changed event fires; operations dashboard shows status 'degraded'
- 4Notification engine alerts operations staff via email and SMS
- 5Consuming modules receive fallback responses and continue with cached data where possible
- 6When Canada Post recovers, health check passes, circuit closes, and queued requests are replayed
Outcome
Zero cascading failures to the permit application process. Residents experience brief delays on address validation but can still submit applications. Full recovery is automatic.
View scenario
Finance Manager
Cross-System Financial Reconciliation
The finance team needs real-time visibility into payments flowing between the platform, the bank, CRA, and the ERP system.
Steps
- 1Payment Engine publishes payment.completed events to the Integration Bus
- 2The Integration Bus routes events to the ERP connector for GL posting
- 3The banking connector receives settlement files and publishes settlement.matched events
- 4CDC captures changes in the ERP's GL tables and syncs back to the platform's financial dashboard
- 5Monthly CRA remittance files are generated via the CRA connector and submitted automatically
- 6The integration dashboard provides real-time visibility into all data flows with latency and error metrics
Outcome
Finance has a single pane of glass for all financial integrations. Data flows automatically between systems with full audit trail and error alerting.
View scenario
Data Analyst
Legacy System Migration (AMANDA → Permits)
The municipality is migrating from AMANDA to the new Licences & Permits module and needs to bring over 15 years of permit history.
Steps
- 1Data analyst configures the AMANDA connector with the legacy database credentials
- 2A multi-stage ETL pipeline is built: extract permits → transform data types → normalize addresses → map status codes → deduplicate applicants
- 3MDM links legacy applicant records to existing citizen records using fuzzy matching
- 4Pipeline runs in batches of 100,000 rows with progress tracking and error reporting
- 5Row-level errors (invalid dates, missing fields) are captured in the error report for manual review
- 6Successful records are loaded into the permits module with full history preserved
Outcome
15 years of permit history migrated with 99.5% automatic success rate. Error records are flagged for staff review with clear explanations of what needs fixing.
View scenario
Internal Architecture
How it's built
4 architectural layers comprising 24 components — from API gateway to data quality engine.
4 layers · 24 total components
Integration Bus
Every module owns a single bounded context, exposes stable APIs, and can be composed into any Civic product — that's the architecture that scales.
Krutik Parikh
Creator of Civic
Data Model
Entity Architecture
5 entities with 5 relationships — the authoritative schema for this bounded context.
Entities
Select an entity to explore its fields and relationships
API Surface
Integration Endpoints
14 RESTful endpoints across 4 resource groups — plus 5 domain events for async integration.
/api/v1/gateway/health
Gateway health status
/api/v1/gateway/consumers
List API consumers
/api/v1/gateway/consumers
Register new API consumer
/api/v1/gateway/metrics
API usage metrics
Ecosystem
Products that depend on this module
10 Civic products consume Integration Bus — making it one of the most critical platform services in the ecosystem.
Integration Hub
The full middleware platform — this IS the integration spec's product UI
View product →
ERP / Finance
Banking integration, CRA remittance, MMAH reporting, payroll provider connections
View product →
Property Tax
MPAC assessment feed, provincial property tax reporting
View product →
Utility Billing
Meter reading systems, AMI/AMR, consumption data integration
View product →
HR & Payroll
HRIS, benefits providers, pension (OMERS), CRA payroll remittance
View product →
CRM
Email integration, 311 telephony, chatbot platforms
View product →
Digital Payments
Payment processors, banking, POS terminal integration
View product →
Smart City / IoT
Sensor platforms, SCADA, traffic systems
View product →
Transit
GTFS feeds, real-time vehicle tracking, fare systems
View product →
Elections
Voter database (MPAC), Elections Ontario, voting systems
View product →
Technical Specifications
Performance, Compliance & Configuration
Availability
Gateway Latency
Event Throughput
Event Delivery
Webhook Delivery
Pipeline Processing
Dead Letter Queue
API Documentation
FAQ
Frequently Asked Questions
Ready to Integrate
Build on Integration Bus
Request an architecture brief, integration guide, or live demo environment for your team.