CRM & Field-Service Integrations Registry
Four CRM and field-service integrations (Housecall Pro, Jobber, ServiceMinder, Broccoli) shipped on one config-driven registry with five shared capability contracts.
- Problem
- Each new CRM integration was a bespoke build with its own auth, sync and activation path, so every partner added cost and every fix had to be made several times.
- Solution
- A config-driven integration registry where each provider declares which of five shared capability contracts it fulfils. OAuth2 with PKCE and GraphQL sit behind the same contracts as REST providers, and customers activate an integration themselves without an engineer in the loop.
Impact
Every provider lives on one code path, customers activate integrations themselves, and a fix or extension lands for all of them at once.
45
What I did
- Designed the registry and the five capability contracts shared by every provider.
- Implemented OAuth2/PKCE and GraphQL providers alongside REST providers behind the same contracts.
- Built customer self-serve activation so a company connects its CRM without support.
- Fixed duplicate active integrations per company found in production.
Built with · Python · FastAPI · SQLAlchemy · Celery · PostgreSQL · OAuth2 / PKCE · GraphQL