enhancementgood first issueintegrationnew-featurenew-integration
Métricas do repositório
- Stars
- (1.930 estrelas)
- Métricas de merge de PR
- (Métricas PR pendentes)
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