enhancementgood first issueintegrationnew-featurenew-integration
Metriche repository
- Star
- (1930 stelle)
- Metriche merge PR
- (Metriche PR in attesa)
Descrizione
Description
Add Semrush integration to sync SEO analytics, keyword research, domain data, and traffic insights into CORE.
Reference Implementations
Existing Integrations (use as templates)
integrations/github/- API-based data integrationintegrations/linear/- Project management integrationintegrations/slack/- For reference
Required Files Structure
integrations/semrush/
├── src/
│ ├── index.ts # Main entry, API key spec
│ ├── schedule.ts # Sync logic
│ ├── utils.ts # Semrush API utilities
│ ├── account-create.ts # API key setup
│ └── create-activity.ts # Activity formatting
├── package.json
├── tsup.config.ts
└── README.md
Semrush API Integration
Authentication Setup
- Use API Key authentication
- API key generated from Account tab > Subscription info > API Units
- Requires Semrush Business subscription for Standard API access
- Base URL:
https://api.semrush.com
Key Endpoints
GET /analytics/v1/?type=domain_ranks- Domain overview and rankingsGET /analytics/v1/?type=domain_organic- Organic search positionsGET /analytics/v1/?type=domain_adwords- Paid search dataGET /analytics/v1/?type=phrase_all- Keyword overviewGET /analytics/v1/?type=phrase_organic- Organic results for a keywordGET /analytics/ta/api/v3/- Traffic Analytics endpointsGET /analytics/v1/?type=backlinks_overview- Backlink dataGET /analytics/v1/?type=domain_rank_history- Historical ranking data
Events to Track
- Domain Analytics - Domain ranking changes, organic/paid position shifts
- Keyword Research - Keyword performance, search volume changes
- Traffic Analytics - Website traffic trends and visitor metrics
- Backlinks - New/lost backlink events
- Position Tracking - SERP position changes over time
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 domain analytics, keyword, and traffic endpoints - Implement sync logic in
schedule.tsfor periodic SEO data pulls - Convert SEO metrics and ranking changes to CORE activity format
- Add error handling and rate limiting (API unit consumption tracking)
- Create integration documentation
- Add to
integrations/README.md
Technical Notes
- Standard API package requires Business subscription plan
- API usage is measured in "API units" - track consumption carefully
- Traffic Analytics API (v3) is a separate endpoint from the standard analytics API
- Data can be filtered by database (country), display date, and export columns
- Response format is typically semicolon-separated values, not JSON - needs parsing
Resources
Labels
enhancement, integration, new-feature