NeuroPathwayConnect
🚦 State of Play
- Mood: 🟢 Ready to Build
- Next Critical Action: Build HubSpot integration for scheduling app status sync
- Project Phase: Integration Planning Complete
- Timeline: Target end of year (no hard deadline)
Integration Project
One-way sync from NeuroPathwayConnect’s interview scheduling platform to HubSpot CRM. Push status updates to provide visibility into where scheduling links get stuck between candidates and hiring partners.
📝 Activity Log
2025-12-05 - Kickoff Call: HubSpot Integration Scope
Attendees: Alex, Ron Berry III, Zach (via Ron)
Project Overview: NeuroPathwayConnect needs to sync interview scheduling statuses from their app back to HubSpot to give Scott (likely hiring/ops manager) visibility into process bottlenecks.
Integration Requirements:
- Direction: One-way (Scheduling App → HubSpot)
- Trigger: Real-time status updates whenever scheduling status changes
- Matching Logic: Email address (HubSpot’s unique identifier)
- Field Type: String field (read-only in HubSpot, for reference only)
- Status Values: Includes “Pending for hiring manager”, “Pending for candidate”, etc.
Technical Approach:
- Initial Sync: Full database sync of all existing records
- Ongoing Updates: Webhook-based triggers for status changes
- Authentication: Private HubSpot application (similar to Socium setup)
- Error Handling: Email matching ensures no duplicate records
Division of Labor:
-
Ron (HubSpot Side):
- Create private application with proper scopes
- Create custom status field in HubSpot
- Provide API endpoints and credentials
- Match field structure to app’s internal values
-
Alex (App Side):
- Implement full database sync logic
- Build webhook handlers for real-time updates
- Send list of status field values to Ron
- Handle email-based record matching
Edge Cases Addressed:
- No email mismatches expected (Ron confirmed)
- All records exist in both systems already
- HubSpot enforces email uniqueness (no duplicates)
Billing:
- Direct hourly billing to Zach
- Separate from any existing contract
- Collaborative effort between Alex and Ron
Planning Complete
Scope defined, technical approach agreed upon, ready to begin implementation once Ron provides HubSpot credentials.
2025-12-15 - Scope Alignment + QA Process
Attendees: Alex, Zachary Mandler
Key Themes / Expectations
- Zach wants proactive recommendations (surface scope additions early) and a weekly Monday 10–15 min check-in to validate core flows.
- Alex will shift to a sandbox-first workflow: stage changes against copied sample data, run regression tests, then deploy (slower turnaround, higher reliability).
Production Updates (Confirmed)
- ✅ Zoom meetings are being created successfully.
- ✅ Dashboard now correctly reflects scheduled meetings (including stale meetings + current phase/status).
- ✅ Tokenized links are stable going forward (no further breaking URL changes planned); existing links should remain valid.
- ✅ Candidate-facing edge case handled: if all available dates are in the past, the UI now makes that explicit.
Integration / Scope (Phase 1)
- HubSpot sync remains one-way (NeuroPathway → HubSpot) for now.
- Add
interview_scheduled_at(Zoom interview date/time) to the HubSpot field set to support marketing/reminders. - Upgrade calendar invites to be Outlook-compatible (Accept/Decline UX) instead of a “download .ics” workflow.
Invite Requirements (To Confirm / Implement)
- Include internal recipients (Zach, Scott,
hello@myneuropathway.com) on interview invite emails. - Include the candidate resume as an attachment on the invite email.
Process Change (Quality Gate)
Validate changes in an isolated sandbox environment + incognito browser testing (candidate/hiring-partner permissions) before production deployment.
2025-12-19 - Outlook Calendar Integration Complete
Delivery
Outlook-compatible calendar invitations for scheduled interviews are complete.
2026-01-18 - Infrastructure Migration: GitHub Organization & Railway Deployment
Complete:
- ✅ Converted personal GitHub account to organization structure
- ✅ Migrated all repositories to new organization
- ✅ Migrated Rosary app from Netlify to Railway
In Progress:
- Updating Railway environment variables for Rosary app (staging + production)
- Migrating NeuroPathwayConnect app deployment URL from personal GitHub to organization GitHub
- Updating packages and dependencies on NeuroPathwayConnect application
Breaking Changes Detected
Package updates have introduced major version changes that broke some code. Requires code fixes before next release.
New Staging Environment
Email sent to client team requesting approval to charge for staging environment creation. This will enable proper pre-production testing workflow.
Next Actions:
- Complete Railway environment variable updates for Rosary app
- Update NeuroPathwayConnect GitHub repository URL in deployment config
- Audit and update dependencies (identify breaking changes)
- Fix broken code from major version updates
- Test in staging before deploying to production
🛠 Architecture & Tech Stack
Current Stack:
- CRM: HubSpot
- Scheduling Platform: NeuroPathwayConnect proprietary app
- Integration Method: Private HubSpot App + Webhooks
Integration Architecture:
graph TD A[Scheduling App Status Change] --> B{First Sync?} B -->|Yes| C[Full Database Sync] B -->|No| D[Webhook Trigger] C --> E[Match by Email] D --> E E --> F[HubSpot API Update] F --> G[Custom Status Field Updated]
Authentication Flow:
- Private HubSpot application (OAuth 2.0)
- Access token + client secret
- Endpoint permissions scoped to contact updates
Previous Integration Reference
Setup mirrors Socium integration architecture - proven pattern for HubSpot sync.
📋 Action Items & Tickets
Phase 1: Setup & Configuration
- [Ron] Create private HubSpot application with proper scopes ✅ 2025-12-05
- [Ron] Create custom status field in HubSpot (string type)
- [Ron] Provide API credentials (access token, client secret, endpoints)
- [Alex] Send complete list of status field values to Ron
- [Alex] Review HubSpot API documentation for contact updates
Phase 2: Development
- [Alex] Build initial full database sync logic
- [Alex] Implement email-based record matching
- [Alex] Build webhook handlers for status change events
- [Alex] Test sync on sample records
- [Alex] Error handling and logging implementation
Phase 3: Testing & Deployment
- [Both] Test initial sync with small batch
- [Both] Validate webhook triggers work correctly
- [Both] Confirm no duplicate records created
- [Both] Monitor for edge cases post-deployment
- [Alex] Document integration for future maintenance
Dependency
Cannot begin development until Ron provides HubSpot credentials and field configuration.
💰 Budget & Timeline
Billing Structure: Hourly (direct to Zach) Timeline: Target end of year (flexible) Estimated Effort:
- Initial sync implementation: 4-6 hours
- Webhook integration: 2-4 hours
- Testing & refinement: 2-3 hours
- Total estimate: 8-13 hours
No Rush
Ron indicated no hard deadline - prioritize quality over speed.
🎯 Success Metrics
Integration Goals:
- ✅ 100% of existing records sync successfully
- ✅ Real-time status updates (< 1 minute delay)
- ✅ Zero duplicate records created
- ✅ Scott has full visibility into scheduling bottlenecks
Acceptance Criteria:
- Initial sync completes without errors
- Status changes in app reflect in HubSpot within 60 seconds
- Email matching works for all records
- Field displays correctly in HubSpot contact records
📞 Contacts
Primary Contact:
- Zach: Client stakeholder, direct billing contact
Technical Contacts:
- Ron Berry III: HubSpot configuration, API setup
- Scott: End user needing visibility (hiring/ops manager)
- Alex: Application-side integration development
🔗 Related Resources
- HubSpot - CRM platform documentation
- Socium Integration - Reference architecture (similar private app setup)
📌 Next Steps (Priority Order)
- [Ron] Create HubSpot private application and field - ETA: Later today (2025-12-05)
- [Alex] Send status field values to Ron - ETA: Pending extraction from app
- [Ron] Provide API credentials to Alex - ETA: After app creation
- [Alex] Begin development of sync logic - ETA: After receiving credentials
- [Both] Coordinate testing schedule - ETA: After initial development complete