IntegrationHub is a production-like backend API integration service built with Python, FastAPI, PostgreSQL, Redis, Docker, Docker Compose, Pytest, OpenAPI/Swagger, and CI/CD using GitHub Actions. It handles webhooks, idempotency, retries, error logging, asynchronous processing, and integration with a mocked external API without exposing private client code.
Overview
The project models a common operational workflow: receive a webhook, validate the payload, persist the event, process it asynchronously, call an external API, and expose status information for support and debugging.
Tech Stack
- Python
- FastAPI
- PostgreSQL
- Redis
- Docker and Docker Compose
- Pytest
- GitHub Actions
- OpenAPI/Swagger
Architecture
- Webhook ingestion endpoint.
- Payload validation and event persistence.
- Idempotency key to avoid duplicate processing.
- Asynchronous worker flow for external API calls.
- Retry and error handling for unstable dependencies.
- Status endpoint for operational visibility.
Production Practices
- CI/CD pipeline with GitHub Actions.
- Docker-based local environment.
- Relational persistence with PostgreSQL.
- Structured logs for failures and reprocessing.
- Clear environment configuration.
Operational Notes
The repository is designed as a public replacement for confidential integration work: it demonstrates backend, API integration, workflow automation, operational data, and production systems practices without exposing private business logic.