API Reference Card
| Detail | Value |
|---|---|
| Base URL | https://api.semrush.com/ |
| Auth | API key as query parameter (?key=YOUR_KEY) |
| Rate limits | 10 requests per second |
| Response format | Semicolon-delimited text (not JSON) for most endpoints |
| Mavera base | https://app.mavera.io/api/v1 |
| Mavera auth | Authorization: Bearer mvra_live_... |
All examples use two environment variables:
SEMRUSH_API_KEY and MAVERA_API_KEY. SEMrush returns semicolon-delimited text for most endpoints — Python examples parse with csv.reader(delimiter=';') and JavaScript examples split lines by \n then each by ;. Each API call consumes units from your SEMrush plan; check your balance at SEMrush → Subscription Info.Prerequisites
SEMrush API key with available units
Log in to SEMrush and navigate to your profile settings to find your API key. Verify that your plan includes API units — most Pro plans include 10,000 units/month.
Mavera API key
Generate a key at app.mavera.io/settings/api-keys. The key starts with
mvra_live_.Jobs
| # | Job | SEMrush Data | Mavera Surface | Output |
|---|---|---|---|---|
| 1 | Keyword Gap → Content Generation | domain_domains | Mave Agent | Content briefs for uncovered keywords |
| 2 | Competitor Content Audit | url_organic | Mave Agent + Focus Groups | Messaging gap analysis with persona feedback |
| 3 | Keyword Clusters → Focus Group Validation | phrase_related | Personas + Focus Groups | Validated content concepts per cluster |
| 4 | Backlink Analysis → Outreach Content | backlinks_overview + backlinks | Brand Voices + Generate | Outreach email variants by link type |
| 5 | Position Tracking → Performance Reports | domain_organic | Mave Agent | Executive ranking narrative with actions |
Rate Limits & Production Notes
| SEMrush Endpoint | Unit Cost | Caching Strategy |
|---|---|---|
| domain_domains | 10-40 units | Cache daily — gaps don’t shift hourly |
| url_organic | 10 units | Cache 24h — competitor pages change slowly |
| phrase_related | 10 units | Cache per seed keyword for 7 days |
| backlinks / overview | 20-70 units | Cache 48h — profiles update slowly |
| domain_organic | 10 units | Cache 24h — positions shift daily at most |
| Concern | Recommendation |
|---|---|
| API key security | Store in a secrets manager. Never commit to version control. |
| Unit monitoring | Check balance before batch runs. Full backlink audit costs 90+ units. |
| Response caching | SEMrush data updates daily at most. Cache with 24-48h TTL. |
| Mavera credits | Monitor at Dashboard. |
| Baseline storage | Use a database or versioned JSON for trend analysis. |
What’s Next
All Integrations
50+ API integrations with full code
SEMrush API Docs
Official SEMrush API reference
Mave Agent
Full reference for POST /api/v1/mave/chat
Focus Groups API
Full reference for POST /api/v1/focus-groups
Generate API
Full reference for POST /api/v1/generations
Brand Voices API
Full reference for POST /api/v1/brand-voices