API Documentatie
Integreer CleverKeywords in je eigen tools en workflows. Krijg toegang tot keyword research, SERP analyse en concurrentieonderzoek via onze REST API.
Beveiligd met Bearer tokens. Elke key begint met ck_live_ prefix.
Gemiddelde responstijd onder 200ms. Gebouwd op een moderne, schaalbare infrastructuur.
Consistente JSON response structuur met gestandaardiseerde foutcodes en paginering.
Authenticatie
Alle API requests vereisen authenticatie via een API key. Je kunt een API key aanmaken in je account instellingen (beschikbaar vanaf het Professional plan).
- Upgrade naar het Professional of Agency plan
- Ga naar Instellingen → API Keys
- Klik op "Nieuwe API Key" en geef een beschrijvend label
- Kopieer de key (begint met
ck_live_) en bewaar deze veilig
GET /api/v1/public/serp/analyze?keyword=voorbeeld HTTP/1.1
Host: api.cleverkeywords.nl
Authorization: Bearer ck_live_your_api_key
Content-Type: application/jsonRate Limits
De API gebruikt rate limiting om eerlijk gebruik te garanderen. Limieten zijn afhankelijk van je abonnement.
| Plan | Requests per minuut | Requests per dag |
|---|---|---|
| Professional | 60 | 10.000 |
| Agency | 120 | 50.000 |
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1710672600Wanneer je de limiet bereikt, ontvang je een 429 Too Many Requests response. Wacht tot de reset timestamp verstreken is voordat je nieuwe requests stuurt.
Response Formaat
Alle endpoints retourneren een consistente JSON structuur.
{
"success": true,
"data": {
"...": "..."
},
"meta": {
"requestId": "req_abc123",
"timestamp": "2026-03-17T10:30:00Z"
}
}{
"success": false,
"statusCode": 400,
"error": "Bad Request",
"message": "Parameter \"keyword\" is verplicht",
"code": "VALIDATION_ERROR",
"category": "VALIDATION",
"requestId": "req_abc123"
}Endpoint Referentie
Volledige documentatie van alle beschikbare API endpoints met voorbeelden.
/api/v1/public/keywords/searchParameters
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| keyword | string | Ja | Het zoekwoord om te analyseren (bijv. "zonnepanelen kopen") |
| language | string | Nee | Taalcode (standaard: "nl") |
| location | string | Nee | Locatie (standaard: "Netherlands") |
| include_serp_info | boolean | Nee | SERP feature informatie toevoegen (standaard: false) |
| include_trends | boolean | Nee | Historische zoektrends toevoegen (standaard: false) |
Request body
{
"keyword": "zonnepanelen kopen",
"language": "nl",
"location": "Netherlands",
"include_serp_info": true,
"include_trends": true
}Response
{
"success": true,
"data": {
"keyword": "zonnepanelen kopen",
"search_volume": 12100,
"cpc": 2.45,
"difficulty": 62,
"competition": 0.78,
"intent": "commercial",
"opportunity_score": 74,
"trends": [
{
"month": "2026-01",
"volume": 14800
},
{
"month": "2025-12",
"volume": 11200
},
{
"month": "2025-11",
"volume": 9800
}
],
"serp_features": [
"featured_snippet",
"people_also_ask",
"shopping_ads"
],
"language_analysis": {
"is_compound": true,
"components": [
"zonnepanelen",
"kopen"
],
"variations": [
"zonnepaneel kopen",
"zonnepanelen aanschaffen"
]
}
},
"meta": {
"requestId": "req_abc123def456",
"timestamp": "2026-03-17T10:30:00Z"
}
}Codevoorbeelden
curl -X POST https://api.cleverkeywords.nl/api/v1/public/keywords/search \
-H "Authorization: Bearer ck_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"keyword": "zonnepanelen kopen",
"language": "nl",
"location": "Netherlands",
"include_serp_info": true
}'/api/v1/public/keywords/suggestionsParameters
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| keyword | string | Ja | Het seed zoekwoord (bijv. "hypotheek") |
| limit | number | Nee | Maximum aantal suggesties (standaard: 50, max: 200) |
| language | string | Nee | Taalcode (standaard: "nl") |
| include_metrics | boolean | Nee | Zoekvolume en CPC per suggestie (standaard: true) |
| filter_intent | string | Nee | Filter op zoekintentie: "informational", "commercial", "transactional", "navigational" |
Request body
{
"keyword": "hypotheek",
"limit": 10,
"language": "nl",
"include_metrics": true,
"filter_intent": "informational"
}Response
{
"success": true,
"data": {
"seed_keyword": "hypotheek",
"suggestions": [
{
"keyword": "hypotheek berekenen",
"search_volume": 33100,
"cpc": 3.12,
"difficulty": 45,
"intent": "informational",
"relevance_score": 0.95
},
{
"keyword": "hypotheek rente",
"search_volume": 22200,
"cpc": 2.87,
"difficulty": 58,
"intent": "informational",
"relevance_score": 0.91
},
{
"keyword": "hypotheek oversluiten",
"search_volume": 18100,
"cpc": 4.56,
"difficulty": 52,
"intent": "informational",
"relevance_score": 0.88
}
],
"total_suggestions": 148
},
"meta": {
"requestId": "req_xyz789ghi012",
"timestamp": "2026-03-17T10:31:00Z"
}
}Codevoorbeelden
curl -X POST https://api.cleverkeywords.nl/api/v1/public/keywords/suggestions \
-H "Authorization: Bearer ck_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"keyword": "hypotheek",
"limit": 10,
"include_metrics": true,
"filter_intent": "informational"
}'/api/v1/public/serp/analyzeParameters
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| keyword | string | Ja | Het zoekwoord om de SERP voor te analyseren |
| device | string | Nee | Apparaat type: "desktop" of "mobile" (standaard: "desktop") |
| location | string | Nee | Locatie (standaard: "Netherlands") |
| limit | number | Nee | Aantal resultaten (standaard: 10, max: 100) |
Response
{
"success": true,
"data": {
"keyword": "elektrische auto",
"device": "desktop",
"location": "Netherlands",
"serp_features": [
"featured_snippet",
"people_also_ask",
"image_pack",
"top_stories"
],
"organic_results": [
{
"position": 1,
"url": "https://www.anwb.nl/auto/elektrisch-rijden",
"title": "Elektrisch rijden - ANWB",
"description": "Alles over elektrische auto's: modellen, actieradius, laden en kosten.",
"domain": "anwb.nl",
"is_featured_snippet": true
},
{
"position": 2,
"url": "https://www.autoweek.nl/elektrische-autos/",
"title": "Elektrische auto's vergelijken - AutoWeek",
"description": "Vergelijk alle elektrische auto's op prijs, actieradius en specificaties.",
"domain": "autoweek.nl",
"is_featured_snippet": false
}
],
"total_results": 10,
"difficulty_estimate": 71
},
"meta": {
"requestId": "req_serp456abc",
"timestamp": "2026-03-17T10:32:00Z"
}
}Codevoorbeelden
curl -G https://api.cleverkeywords.nl/api/v1/public/serp/analyze \
-H "Authorization: Bearer ck_live_your_api_key" \
--data-urlencode "keyword=elektrische auto" \
-d "device=desktop" \
-d "limit=10"/api/v1/public/competitor/researchParameters
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| domain | string | Ja | Het domein van de concurrent (bijv. "concurrent.nl") |
| your_domain | string | Nee | Jouw domein voor gap analyse |
| limit | number | Nee | Maximum aantal keywords (standaard: 50, max: 500) |
| sort_by | string | Nee | Sorteer op: "volume", "position", "traffic" (standaard: "volume") |
Response
{
"success": true,
"data": {
"domain": "concurrent.nl",
"total_organic_keywords": 1243,
"estimated_monthly_traffic": 45600,
"top_keywords": [
{
"keyword": "verzekering vergelijken",
"position": 3,
"search_volume": 14800,
"estimated_traffic": 2960,
"url": "https://concurrent.nl/verzekeringen-vergelijken"
},
{
"keyword": "autoverzekering berekenen",
"position": 5,
"search_volume": 8900,
"estimated_traffic": 890,
"url": "https://concurrent.nl/autoverzekering"
}
],
"keyword_gap": {
"only_competitor": 312,
"only_you": 189,
"shared": 456,
"opportunities": [
{
"keyword": "reisverzekering afsluiten",
"competitor_position": 4,
"your_position": null,
"search_volume": 6600
}
]
}
},
"meta": {
"requestId": "req_comp789xyz",
"timestamp": "2026-03-17T10:33:00Z"
}
}Codevoorbeelden
curl -G https://api.cleverkeywords.nl/api/v1/public/competitor/research \
-H "Authorization: Bearer ck_live_your_api_key" \
--data-urlencode "domain=concurrent.nl" \
--data-urlencode "your_domain=jouwsite.nl" \
-d "limit=50" \
-d "sort_by=volume"/api/v1/public/exportParameters
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| keywords | string[] | Ja | Lijst van keywords om te exporteren |
| format | string | Ja | Export formaat: "csv", "xlsx" of "json" |
| fields | string[] | Nee | Velden om op te nemen (standaard: alle). Opties: "search_volume", "cpc", "difficulty", "intent", "competition", "trends" |
| language | string | Nee | Taalcode (standaard: "nl") |
Request body
{
"keywords": [
"zonnepanelen kopen",
"zonnepanelen prijs",
"zonnepanelen subsidie",
"zonnepanelen installatie"
],
"format": "csv",
"fields": [
"search_volume",
"cpc",
"difficulty",
"intent"
],
"language": "nl"
}Response
{
"success": true,
"data": {
"download_url": "https://api.cleverkeywords.nl/exports/exp_abc123.csv",
"format": "csv",
"total_keywords": 4,
"file_size": "2.4 KB",
"expires_at": "2026-03-18T10:34:00Z"
},
"meta": {
"requestId": "req_exp012jkl",
"timestamp": "2026-03-17T10:34:00Z"
}
}Codevoorbeelden
curl -X POST https://api.cleverkeywords.nl/api/v1/public/export \
-H "Authorization: Bearer ck_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"keywords": [
"zonnepanelen kopen",
"zonnepanelen prijs",
"zonnepanelen subsidie"
],
"format": "csv",
"fields": ["search_volume", "cpc", "difficulty", "intent"]
}'Klaar om te integreren?
Krijg toegang tot de CleverKeywords API met een Professional of Agency abonnement. Start vandaag met het integreren van keyword data in je eigen tools.