SEO Analyzer API - Documentation

SEO API

Comprehensive website analysis with 10+ powerful endpoints. Fast, reliable, and developer-friendly REST API for all your SEO needs.

Sub 2s Response
Lightning fast analysis
99.9% Uptime
Enterprise reliability
10+ Endpoints
Complete SEO coverage
RESTful Design
Easy integration
Base URL: https://apifuse.dev/api/

The SEO Analyzer API provides comprehensive website analysis tools to help optimize SEO performance. Each endpoint focuses on specific aspects of SEO, from technical audits to content optimization.

Authentication

All API requests require authentication using your API key in the X-API-KEY header.

curl -H "X-API-KEY: YOUR_API_KEY" \
     -H "Content-Type: application/json" \
     https://apifuse.dev/api/seo/analyze?website=codeconia.com
Security: Never expose your API key in client-side code. Store it securely as an environment variable.

Error Handling

The API uses standard HTTP status codes and returns detailed error information in JSON format.

Error Response Format
{
  "error": {
    "code": "INVALID_URL",
    "message": "The provided URL is not valid",
    "details": "URL do not  include http:// or https://"
  }
}

Page Analysis

Comprehensive on-page SEO analysis including title tags, meta descriptions, headings, and content optimization recommendations.

GET
GET /seo/analyze?

Parameters

website
Required
string

The website URL to analyze (Do NOT Include http:// or https://)

Example Request

curl -X GET "https://apifuse.dev/api/seo/analyze?website=codeconia.com" \
  -H "X-API-KEY: YOUR_API_KEY" \
  -H "Content-Type: application/json"

Response

{
    "basic": {
        "websiteurl": "codeconia.com",
        "title": "Codeconia -Learn Programming",
        "favicon": "http://www.google.com/s2/favicons?domain=codeconia.com"
    },
    "webtitle": {
        "title": "Codeconia -Learn Programming",
        "length": 28,
        "suggestion": "Title length is good."
    },
    "metadescription": {
        "description": "Programmer Guide",
        "length": 16,
        "suggestion": "Meta description is too short. Aim for 120-160 characters."
    },
    "metakeywords": {
        "keywords": null,
        "counts": 2,
        "suggestion": "Meta keywords not found (optional in modern SEO)."
    },
    "headings": {
        "h1": {
            "headings": [
                "\n               Web Development Tutorials & Codes\n              "
            ],
            "count": 1
        },
        "h2": {
            "headings": [],
            "count": 0
        },
        "h3": {
            "headings": [],
            "count": 0
        },
        "h4": {
            "headings": [],
            "count": 0
        },
        "h5": {
            "headings": [
                "How to allow only your IP to access your entire server Using UFW",
                "Google Auth in android and ios with React native Expo Managed workflow",
                "Web Hosting Server: When and Why It’s the Right Choice",
                "Web Hosting for Small Businesses: A Mid-Range Solution for Growing Businesses",
                "Drag and Drop with Swapy and PHP",
                "How To Generate A PDF from HTML in Laravel 11",
                "How to get the next value of an array and loop it in the array in PHP",
                "New Open Source CRM for project Management and Invoicing",
                "Post View Counts WordPress plugin (Documentation)",
                "How to create a photo gallery in php without a database",
                "PHP Contact form send email – Website integration ✔️",
                "Digital Marketing Toolkit"
            ],
            "count": 25
        },
        "h6": {
            "headings": [],
            "count": 0
        },
        "suggestion": [
            "No H2 headings found. Add sub-headings for structure."
        ]
    },
    "sitemap_robots": [
        "robots.txt",
        "sitemap.xml"
    ],
    "iframe": {
        "count": 0,
        "suggestion": "No iframe usage. Good!"
    },
    "underscoreurl": null,
    "urlrewrite": null,
    "images": {
        "data": [
            "https://codeconia.com/wp-content/themes/codeconia/images/blackpng.png",
            "//codeconia.com/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif",
            "https://codeconia.com/wp-content/uploads/2025/04/ChatGPT-Image-Apr-9-2025-06_46_48-PM-300x300.png",
            "//codeconia.com/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif",
            "https://codeconia.com/wp-content/uploads/2024/10/https___dev-to-uploads.s3.amazonaws.com_uploads_articles_fhfhj2t2bbjtzg6s9ccc.avif",
            "//codeconia.com/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif",
            "https://codeconia.com/wp-content/uploads/2021/09/Marielle-Price-300x169.png",
            "//codeconia.com/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif",
            "https://codeconia.com/wp-content/uploads/2021/06/wordpress-photo-gallery-plugins1-300x150.png",
            "//codeconia.com/wp-content/plugins/a3-lazy-load/assets/images/lazy_placeholder.gif",
            "https://codeconia.com/wp-content/uploads/2021/01/HTML-CONTACT-FORM-TO-EMAIL-300x169.gif",
            "https://www.awltovhc.com/image-100477035-15022370",
            "https://codeconia.com/wp-content/themes/codeconia/images/digitalprokit.jpg",
            "https://www.awltovhc.com/image-100477035-14347998"
        ],
        "count": 52,
        "suggestion": "Too many images might affect load speed. Optimize images."
    },
    "links": {
        "data": [
            {
                "link": "/",
                "title": "\n"
            },
            {
                "link": "/",
                "title": "Home"
            },
            {
                "link": "/latest-posts",
                "title": "Latest 🚀"
            },

            {
                "link": "https://codeconia.com/how-to-allow-only-your-ip-to-access-your-entire-server-using-ufw/",
                "title": "      \n "
            },
            {
                "link": "https://codeconia.com/how-to-allow-only-your-ip-to-access-your-entire-server-using-ufw/",
                "title": "  How to allow only your IP to access your entire server Using UFW"
            },
            {
                "link": "https://codeconia.com/google-auth-in-android-and-ios-with-react-native-expo-managed-workflow/",
                "title": "      \n"
            },
            {
                "link": "https://codeconia.com/",
                "title": "codeconia.com"
            },
            {
                "link": "https://www.dpbolvw.net/click-100477035-12454592",
                "title": "Contabo "
            }
        ],
        "count": 89,
        "suggestion": "There are broken or empty links. Clean them up."
    }
}

Speed Check

Check your website speed and get suggestions to improve it.
Note: URL should be without http or https

GET
GET /seo/loadingspeeddata

Example Request

curl -X GET "https://apifuse.dev/api/seo/loadingspeeddata?website=codeconia.com" \
  -H "X-API-KEY: YOUR_API_KEY"

Response

{
"data": {
    "url": "http://codeconia.com/",
    "content_type": null,
    "http_code": 301,
    "header_size": 532,
    "request_size": 52,
    "filetime": -1,
    "ssl_verify_result": 0,
    "redirect_count": 0,
    "total_time": 0.048798,
    "namelookup_time": 0.020789,
    "connect_time": 0.02602,
    "pretransfer_time": 0.0261,
    "size_upload": 0,
    "size_download": 0,
    "speed_download": 0,
    "speed_upload": 0,
    "download_content_length": -1,
    "upload_content_length": -1,
    "starttransfer_time": 0.048727,
    "redirect_time": 0,
    "redirect_url": "https://codeconia.com/",
    "primary_ip": "104.21.76.120",
    "certinfo": [],
    "primary_port": 80,
    "local_ip": "207.180.198.252",
    "local_port": 60932,
    "http_version": 2,
    "protocol": 1,
    "ssl_verifyresult": 0,
    "scheme": "HTTP",
    "appconnect_time_us": 0,
    "connect_time_us": 26020,
    "namelookup_time_us": 20789,
    "pretransfer_time_us": 26100,
    "redirect_time_us": 0,
    "starttransfer_time_us": 48727,
    "total_time_us": 48798
},
"speed": {
    "url": "https://codeconia.com/",
    "loadingExperience": null,
    "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/137.0.7151.119 Safari/537.36",
    "timing": 48,
    "score": 86,
    "warning": "- The page may not be loading as expected because your test URL (http://codeconia.com/) was redirected to https://codeconia.com/. Try testing the second URL directly.

" }, "audit": [ { "title": "Total Blocking Time", "description": "Sum of all time periods between FCP and Time to Interactive, when task length exceeded 50ms, expressed in milliseconds. [Learn more about the Total Blocking Time metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-total-blocking-time/).", "score": 100, "displayValue": "0 ms" }, { "title": "Speed Index", "description": "Speed Index shows how quickly the contents of a page are visibly populated. [Learn more about the Speed Index metric](https://developer.chrome.com/docs/lighthouse/performance/speed-index/).", "score": 68, "displayValue": "1.9 s" }, { "title": "Largest Contentful Paint", "description": "Largest Contentful Paint marks the time at which the largest text or image is painted. [Learn more about the Largest Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-largest-contentful-paint/)", "score": 59, "displayValue": "2.1 s" }, { "title": "Cumulative Layout Shift", "description": "Cumulative Layout Shift measures the movement of visible elements within the viewport. [Learn more about the Cumulative Layout Shift metric](https://web.dev/articles/cls).", "score": 100, "displayValue": "0.013" }, { "title": "Time to Interactive", "description": "Time to Interactive is the amount of time it takes for the page to become fully interactive. [Learn more about the Time to Interactive metric](https://developer.chrome.com/docs/lighthouse/performance/interactive/).", "score": 94, "displayValue": "2.1 s" }, { "title": "Optimize viewport for mobile", "description": "Tap interactions may be [delayed by up to 300 ms](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/) if the viewport is not optimized for mobile.", "score": 100, "displayValue": null }, { "title": "LCP request discovery", "description": "Optimize LCP by making the LCP image [discoverable](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay) from the HTML immediately, and [avoiding lazy-loading](https://web.dev/articles/lcp-lazy-loading)", "score": 0, "displayValue": null }, { "title": "Optimize DOM size", "description": "A large DOM can increase the duration of style calculations and layout reflows, impacting page responsiveness. A large DOM will also increase memory usage. [Learn how to avoid an excessive DOM size](https://developer.chrome.com/docs/lighthouse/performance/dom-size/).", "score": 100, "displayValue": null }, { "title": "Max Potential First Input Delay", "description": "The maximum potential First Input Delay that your users could experience is the duration of the longest task. [Learn more about the Maximum Potential First Input Delay metric](https://developer.chrome.com/docs/lighthouse/performance/lighthouse-max-potential-fid/).", "score": 100, "displayValue": "40 ms" }, { "title": "First Contentful Paint", "description": "First Contentful Paint marks the time at which the first text or image is painted. [Learn more about the First Contentful Paint metric](https://developer.chrome.com/docs/lighthouse/performance/first-contentful-paint/).", "score": 96, "displayValue": "0.8 s" }, { "title": "Forced reflow", "description": "A forced reflow occurs when JavaScript queries geometric properties (such as offsetWidth) after styles have been invalidated by a change to the DOM state. This can result in poor performance. Learn more about [forced reflows](https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing#avoid-forced-synchronous-layouts) and possible mitigations.", "score": 100, "displayValue": null }, { "title": "Network dependency tree", "description": "[Avoid chaining critical requests](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains) by reducing the length of chains, reducing the download size of resources, or deferring the download of unnecessary resources to improve page load.", "score": 0, "displayValue": null } ] }

Keyword Research API

Get keyword suggestions, keyword density, and keyword prominence.

GET
GET /seo/keywordresearch

Parameters

keyword
Required
string

The keyword to analyze

country
Required
string

The country code to analyze

Example Request

curl -X GET "https://apifuse.dev/api/seo/keywordresearch?keyword=email marketing&country=us" \
    -H "X-API-KEY: YOUR_API_KEY" \
    -H "Content-Type: application/json"

Response

[
    {
        "text": "email marketing jobs",
        "cpc": "8.00",
        "vol": 4900,
        "v": 4900,
        "competition": "Medium",
        "score": "1.60"
    },
    {
        "text": "email marketing tools",
        "cpc": "8.40",
        "vol": 4655,
        "v": 4655,
        "competition": "Medium",
        "score": "1.68"
    },
    {
        "text": "email marketing platforms",
        "cpc": "10.00",
        "vol": 3920,
        "v": 3920,
        "competition": "Medium",
        "score": "2.00"
    },
    {
        "text": "email marketing manager",
        "cpc": "9.20",
        "vol": 4214,
        "v": 4214,
        "competition": "Medium",
        "score": "1.84"
    },
    {
        "text": "email marketing campaign",
        "cpc": "9.60",
        "vol": 4067,
        "v": 4067,
        "competition": "Medium",
        "score": "1.92"
    },
    ...
]

Domain Data

Get domain data for a specific domain.

GET
GET /seo/domainnamedata

Example Request

curl -X GET "https://apifuse.dev/api/seo/domainnamedata?website=codeconia.com" \
    -H "X-API-KEY: YOUR_API_KEY" \
    -H "Content-Type: application/json"

Response

{
    "age": {
        "domainAge": "4 Years, 264 Days",
        "createdDate": "6th-Nov-2020",
        "updatedDate": "6th-Nov-2024",
        "expiredDate": "6th-Nov-2025"
    },
    "whois": "   Domain Name: CODECONIA.COM\r\n   Registry Domain ID: 2570666541_DOMAIN_COM-VRSN\r\n   Registrar WHOIS Server: whois.hostinger.com\r\n   Registrar URL: http://www.hostinger.com\r\n   Updated Date: 2024-11-06T15:25:38Z\r\n   Creation Date: 2020-11-06T12:06:07Z\r\n   Registry Expiry Date: 2025-11-06T12:06:07Z\r\n   Registrar: HOSTINGER operations, UAB\r\n   Registrar IANA ID: 1636\r\n   Registrar Abuse Contact Email: [email protected]\r\n   Registrar Abuse Contact Phone: +37064503378\r\n   Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited\r\n   Name Server: DEB.NS.CLOUDFLARE.COM\r\n   Name Server: WALT.NS.CLOUDFLARE.COM\r\n   DNSSEC: unsigned\r\n   URL of the ICANN Whois Inaccuracy Complaint Form: https://www.icann.org/wicf/\r\n>>> Last update of whois database: 2025-07-28T00:20:47Z <<<\r\n\r\nFor more information on Whois status codes, please visit https://icann.org/epp\r\n\r\nNOTICE: The expiration date displayed in this record is the date the\r\nregistrar's sponsorship of the domain name registration in the registry is\r\ncurrently set to expire. This date does not necessarily reflect the expiration\r\ndate of the domain name registrant's agreement with the sponsoring\r\nregistrar.  Users may consult the sponsoring registrar's Whois database to\r\nview the registrar's reported date of expiration for this registration.\r\n\r\nTERMS OF USE: You are not authorized to access or query our Whois\r\ndatabase through the use of electronic processes that are high-volume and\r\nautomated except as reasonably necessary to register domain names or\r\nmodify existing registrations; the Data in VeriSign Global Registry\r\nServices' (\"VeriSign\") Whois database is provided by VeriSign for\r\ninformation purposes only, and to assist persons in obtaining information\r\nabout or related to a domain name registration record. VeriSign does not\r\nguarantee its accuracy. By submitting a Whois query, you agree to abide\r\nby the following terms of use: You agree that you may use this Data only\r\nfor lawful purposes and that under no circumstances will you use this Data\r\nto: (1) allow, enable, or otherwise support the transmission of mass\r\nunsolicited, commercial advertising or solicitations via e-mail, telephone,\r\nor facsimile; or (2) enable high volume, automated, electronic processes\r\nthat apply to VeriSign (or its computer systems). The compilation,\r\nrepackaging, dissemination or other use of this Data is expressly\r\nprohibited without the prior written consent of VeriSign. You agree not to\r\nuse electronic processes that are automated and high-volume to access or\r\nquery the Whois database except as reasonably necessary to register\r\ndomain names or modify existing registrations. VeriSign reserves the right\r\nto restrict your access to the Whois database in its sole discretion to ensure\r\noperational stability.  VeriSign may restrict or terminate your access to the\r\nWhois database for failure to abide by these terms of use. VeriSign\r\nreserves the right to modify these terms at any time.\r\n\r\nThe Registry database contains ONLY .COM, .NET, .EDU domains and\r\nRegistrars.\r\n"
}

Referral Domains

Get referral domains for a website.

GET
GET /seo/referraldomains

Example Request

curl -X GET "https://apifuse.dev/api/seo/referraldomains?website=codeconia.com" \
    -H "X-API-KEY: YOUR_API_KEY" \
    -H "Content-Type: application/json"

Response

{
"referrers": [
    {
        "refdomain": "quabr.com",
        "backlinks": 4,
        "dofollow_backlinks": 0,
        "first_seen": "2021-12-14",
        "domain_inlink_rank": 31
    },
    {
        "refdomain": "www.tpsearchtool.com",
        "backlinks": 4,
        "dofollow_backlinks": 0,
        "first_seen": "2022-11-12",
        "domain_inlink_rank": 47
    },
    {
        "refdomain": "alestat.com",
        "backlinks": 4,
        "dofollow_backlinks": 0,
        "first_seen": "2021-07-13",
        "domain_inlink_rank": 61
    },
    {
        "refdomain": "dev.to",
        "backlinks": 2,
        "dofollow_backlinks": 2,
        "first_seen": "2021-09-22",
        "domain_inlink_rank": 91
    },
   ...
]
}

Top Search Keywords

Get top search keywords for a website.

GET
GET /seo/topsearchkeywords

Example Request

curl -X GET "https://apifuse.dev/api/seo/topsearchkeywords?website=codeconia.com" \
    -H "X-API-KEY: YOUR_API_KEY" \
    -H "Content-Type: application/json"

Response

{
"keywords": [
    {
        "countryCode": "us",
        "keyword": "instapy",
        "topRankedUrl": "https://codeconia.com/how-to-create-instagram-bot-with-instapy/",
        "rank": 19,
        "rankChange": 0,
        "searchVolume": 2000,
        "rankingDifficulty": 7,
        "seoClicks": 20,
        "seoClicksChange": 0,
        "totalMonthlyClicks": 1800,
        "broadCostPerClick": null,
        "phraseCostPerClick": null,
        "exactCostPerClick": null,
        "paidCompetitors": 0,
        "rankingHomepages": 2
    },
    {
        "countryCode": "us",
        "keyword": "youtube api tutorial javascript",
        "topRankedUrl": "https://codeconia.com/how-to-get-youtube-subscriber-views-and-video-counts-using-javascript/",
        "rank": 5,
        "rankChange": null,
        "searchVolume": 420,
        "rankingDifficulty": 22,
        "seoClicks": 14,
        "seoClicksChange": null,
        "totalMonthlyClicks": 420,
        "broadCostPerClick": null,
        "phraseCostPerClick": null,
        "exactCostPerClick": null,
        "paidCompetitors": 0,
        "rankingHomepages": 2
    },
    {
        "countryCode": "us",
        "keyword": "ultrasonic sensor arduino code",
        "topRankedUrl": "https://codeconia.com/ultrasonic-sensor-with-arduino-tutorial/",
        "rank": 25,
        "rankChange": 41,
        "searchVolume": 1100,
        "rankingDifficulty": 15,
        "seoClicks": 8,
        "seoClicksChange": 5,
        "totalMonthlyClicks": 950,
        "broadCostPerClick": null,
        "phraseCostPerClick": null,
        "exactCostPerClick": null,
        "paidCompetitors": 0,
        "rankingHomepages": 5
    },
   ...
]
}