Loading...
Loading...
Complete DataForSEO API integration for SEO data and analysis. Use when the user asks for keyword research, search volume, SERP analysis, backlink audits, competitor analysis, rank tracking, domain authority, technical SEO audits, content monitoring, Google Trends, or any SEO-related data queries. Covers all DataForSEO APIs including SERP, Keywords Data, DataForSEO Labs, Backlinks, OnPage, Domain Analytics, Content Analysis, Business Data, Merchant, App Data, and AI Optimization APIs. Outputs CSV files.
npx skill4agent add nikhilbhansali/dataforseo-skill-claude dataforseoimport sys, os
sys.path.insert(0, os.path.expanduser('~/.agents/skills/dataforseo/scripts'))
from dataforseo_client import save_credentials, verify_credentials
# Get credentials from https://app.dataforseo.com/
login = "your_email@example.com" # API login (email)
password = "your_api_password" # API password (from dashboard)
# Verify and save
if verify_credentials(login, password):
save_credentials(login, password)
print("Credentials saved!")~/.dataforseo_config.jsonimport sys, os
sys.path.insert(0, os.path.expanduser('~/.agents/skills/dataforseo/scripts'))
from dataforseo_client import *
# Example: Get search volume
response = keywords_search_volume(
keywords=["seo tools", "keyword research"],
location_name="United States"
)
results = extract_results(response)
csv_path = to_csv(results, "keyword_volumes")
print(f"Results saved to: {csv_path}")| User Request | Function to Use |
|---|---|
| Search volume, CPC, competition | |
| Keyword ideas/suggestions | |
| Keywords a site ranks for | |
| SERP results for keyword | |
| Local/Maps rankings | |
| YouTube rankings | |
| Backlink profile | |
| List of backlinks | |
| Referring domains | |
| Domain authority/rank | |
| Competing domains | |
| Keyword gap analysis | |
| Link gap analysis | |
| Technical page audit | |
| Lighthouse scores | |
| Technology stack | |
| Brand mentions | |
| Google Trends | |
extract_results(response)to_csv(results, "filename")import sys, os
sys.path.insert(0, os.path.expanduser('~/.agents/skills/dataforseo/scripts'))
from dataforseo_client import labs_ranked_keywords, extract_results, to_csv
response = labs_ranked_keywords(
target="competitor.com",
location_name="United States",
language_name="English",
limit=500
)
results = extract_results(response)
csv_path = to_csv(results, "ranked_keywords")location_namelanguage_namelimitdevice~/dataforseo_outputs/references/api_reference.mdreferences/use_cases.mdresponse = some_api_function(...)
if response.get("status_code") == 20000:
results = extract_results(response)
# Process results
else:
print(f"Error: {response.get('status_message')}")get_user_data()costlimitkeywords=["kw1", "kw2", "kw3"]