enhancementgood first issueintegrationnew-featurenew-integration
Repository metrics
- Stars
- (1,930 stars)
- PR merge metrics
- (Avg merge 3h 2m) (10 merged PRs in 30d)
Description
Description
Add Apollo.io integration to sync contacts, accounts, sequences, and sales intelligence data into CORE.
Reference Implementations
Existing Integrations (use as templates)
integrations/hubspot/- Similar CRM/sales integrationintegrations/linear/- For project management patternsintegrations/github/- For webhook and event patterns
Required Files Structure
integrations/apollo/
├── src/
│ ├── index.ts # Main entry, API key spec
│ ├── schedule.ts # Sync logic
│ ├── utils.ts # Apollo API utilities
│ ├── account-create.ts # API key setup
│ └── create-activity.ts # Activity formatting
├── package.json
├── tsup.config.ts
└── README.md
Apollo.io API Integration
Auth Setup
- Use API Key authentication
- API key sent in request headers
- REST API architecture (language-agnostic, JSON-based)
- API access available on all Apollo plans (limits vary by plan)
Key Endpoints
- People/Contacts endpoints - Search, enrich, create, update contacts
- Organizations/Accounts endpoints - Search, enrich, create, update companies
- Sequences endpoints - Manage email sequences and enrollments
- Email Account endpoints - Manage connected email accounts
- Opportunities/Deals endpoints - Manage sales opportunities
- Tasks endpoints - Manage sales tasks
- Activities endpoints - Track engagement activities
- Enrichment endpoints - Enrich people and company data
Developer Hub
- Test endpoints directly in documentation with live API key requests
- Interactive API playground for testing before implementation
Events to Track
- Contacts - Contact created, updated, enriched, added to sequence
- Accounts - Account created, updated, enriched
- Sequences - Sequence started, email sent, replied, bounced
- Tasks - Sales task created, completed
- Opportunities - Deal created, stage changed, won, lost
- Enrichment - Data enrichment completed for people/companies
Implementation Tasks
- Set up basic integration structure following
integrations/github/src/index.tspattern - Implement API key authentication flow in
account-create.ts - Create API utilities in
utils.tsfor Apollo REST API - Implement sync logic in
schedule.tsfor contacts, accounts, and sequences - Convert Apollo events to CORE activity format
- Add error handling and rate limiting (plan-dependent limits)
- Create integration documentation
- Add to
integrations/README.md
Technical Notes
- Standard REST API with JSON -- language-agnostic, works with any HTTP client
- API call limits vary by plan (per minute, hour, and day)
- Developer Hub allows live testing of endpoints with real API keys
- Data enrichment is a core feature -- can enrich people and companies with additional data
- Sequences are a key sales workflow feature for automated outreach
Resources
- Apollo API Documentation
- Apollo API Product Page
- Apollo Knowledge Base - API Usage
- Apollo API Developer Hub
Labels
enhancement, integration, new-feature