Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.mavera.io/llms.txt

Use this file to discover all available pages before exploring further.

SEMrush holds your competitive intelligence — which keywords your rivals rank for, what content earns them links, and where your search visibility is shifting. These five jobs pull that data through Mavera’s surfaces (Mave Agent, Custom Personas, Focus Groups, Brand Voices, Generate) so your SEO strategy, outreach, and content plans are grounded in competitive data rather than intuition.

API Reference Card

DetailValue
Base URLhttps://api.semrush.com/
AuthAPI key as query parameter (?key=YOUR_KEY)
Rate limits10 requests per second
Response formatSemicolon-delimited text (not JSON) for most endpoints
Mavera basehttps://app.mavera.io/api/v1
Mavera authAuthorization: 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

1

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.
2

Mavera API key

Generate a key at app.mavera.io/settings/api-keys. The key starts with mvra_live_.
3

Install dependencies

pip install requests
4

Environment variables

export SEMRUSH_API_KEY="your_semrush_api_key_here"
export MAVERA_API_KEY="mvra_live_xxxxx"

Jobs

#JobSEMrush DataMavera SurfaceOutput
1Keyword Gap → Content Generationdomain_domainsMave AgentContent briefs for uncovered keywords
2Competitor Content Auditurl_organicMave Agent + Focus GroupsMessaging gap analysis with persona feedback
3Keyword Clusters → Focus Group Validationphrase_relatedPersonas + Focus GroupsValidated content concepts per cluster
4Backlink Analysis → Outreach Contentbacklinks_overview + backlinksBrand Voices + GenerateOutreach email variants by link type
5Position Tracking → Performance Reportsdomain_organicMave AgentExecutive ranking narrative with actions

Rate Limits & Production Notes

SEMrush EndpointUnit CostCaching Strategy
domain_domains10-40 unitsCache daily — gaps don’t shift hourly
url_organic10 unitsCache 24h — competitor pages change slowly
phrase_related10 unitsCache per seed keyword for 7 days
backlinks / overview20-70 unitsCache 48h — profiles update slowly
domain_organic10 unitsCache 24h — positions shift daily at most
SEMrush enforces 10 requests/second. All jobs include delays. In production, add a centralized rate limiter for concurrent jobs. ERROR 130 :: TOO MANY REQUESTS — retry after 1s with exponential backoff.
Always use csv.reader(delimiter=";") in Python and split-then-validate in JavaScript. Raw .split(";") breaks on quoted fields or semicolons inside keyword text.
ConcernRecommendation
API key securityStore in a secrets manager. Never commit to version control.
Unit monitoringCheck balance before batch runs. Full backlink audit costs 90+ units.
Response cachingSEMrush data updates daily at most. Cache with 24-48h TTL.
Mavera creditsMonitor at Dashboard.
Baseline storageUse 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