enhancementgood first issueintegrationnew-featurenew-integration
Métriques du dépôt
- Stars
- (1 930 étoiles)
- Métriques de merge PR
- (Métriques PR en attente)
Description
Description
Add Splitwise integration to sync expense sharing data including groups, expenses, balances, and settlement activity into CORE.
Reference Implementations
Existing Integrations (use as templates)
integrations/hubspot/- Similar data sync systemintegrations/linear/- Project management integrationintegrations/slack/- For reference
Required Files Structure
integrations/splitwise/
├── src/
│ ├── index.ts # Main entry, OAuth spec
│ ├── schedule.ts # Sync logic
│ ├── utils.ts # Splitwise API utilities
│ ├── account-create.ts # OAuth setup
│ └── create-activity.ts # Activity formatting
├── package.json
├── tsup.config.ts
└── README.md
Splitwise API Integration
OAuth Setup
- Use OAuth 2.0 authorization code flow
- API follows OpenAPI v3 specification
- Base URL:
https://secure.splitwise.com/api/v3.0 - Developer portal: https://dev.splitwise.com/
Key Endpoints
GET /get_current_user- Get current user infoGET /get_groups- List groupsGET /get_group/{id}- Get group detailsGET /get_expenses- List expensesGET /get_expense/{id}- Get expense detailsPOST /create_expense- Create an expenseGET /get_friends- List friendsGET /get_notifications- Get notificationsGET /get_comments- Get comments on an expense
Events to Track
- Expenses - Expense created, expense updated, expense deleted, expense split
- Groups - Group created, member added, member removed
- Settlements - Payment made, debt settled
- Comments - Comment added to expense
- Notifications - New notifications and activity
Implementation Tasks
- Set up basic integration structure following
integrations/github/src/index.tspattern - Implement OAuth 2.0 flow in
account-create.ts - Create API utilities in
utils.tsfor Splitwise API calls - Implement sync logic in
schedule.tsfor expenses, groups, and settlements - Convert expense events to CORE activity format
- Add error handling and rate limiting
- Create integration documentation
- Add to
integrations/README.md
Technical Notes
- Self-Serve API has conservative rate and access limits (subject to change)
- Recommended for non-commercial plugin applications and personal projects
- For commercial use, contact developers@splitwise.com
- API docs built with Redoc following OpenAPI v3 spec
- Unofficial third-party SDKs available in various languages
Resources
Labels
enhancement, integration, new-feature