apyhub
ARTIFICIAL INTELLIGENCE · SEO

Advanced Website Similarity Analysis API

What it does

Website Similarity Analysis compares a list of website URLs and returns a scored report for each one, plus an overall similarity result across the set.

Send one or more website URLs in the urls array. The response includes a tier value, the service name used for the report, and timestamp for when the analysis was generated. Under insights.global, you get an explanation of the match results and a similarityScore from 0 to 100.

For each submitted URL, insights.siteReports provides the url, an seoScore, an AI-generated aiSummary, and a list of suggestedImprovements. That makes it useful when you need to compare competitor pages, audit similar landing pages, or group websites by positioning before a content review.

Use it when you want a quick, structured read on how closely a set of sites align, without manually comparing page by page.

POST
Advanced Similarity Analysis
http://localhost:8080/namastesumalya/analyze-website-similarity
QUICKSTARTGUIDE

Quickstart

Send one or more website URLs to compare their similarity.

curl -X POST "http://localhost:8080/namastesumalya/analyze-website-similarity" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"urls":["https://notion.so","https://clickup.com"]}'

What you'll get back

Returns a JSON object with top-level tier, service, insights, and timestamp fields. insights is an object containing global similarity details and siteReports for each analyzed URL.

{
  "tier": "standard",
  "service": "analyze-website-similarity",
  "insights": {
    "global": {
      "explanation": "The submitted websites share similar content structure and topic focus.",
      "similarityScore": 78.4
    },
    "siteReports": [
      {
        "url": "https://example.com",
        "seoScore": 82,
        "aiSummary": "A concise business website with a clear value proposition.",
        "suggestedImprovements": ["Add more internal links", "Improve meta descriptions"]
      }
    ]
  },
  "timestamp": "2026-07-08T12:34:56Z"
}
TRY ITLIVE · 2000 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
urls*
List of website URLs to analyze and compare.

About this endpoint

What it does

Analyzes and compares the website URLs you submit in the request body, then returns a similarity report with overall and per-site insights. The response includes the service tier used, the service name, analysis insights, and a generation timestamp.

Request Body

ParameterTypeMandatoryDescription
urlsString ArrayYesList of website URLs to analyze and compare. Each item must be a URI.

Response

Returns a JSON object with tier and service string fields, an insights object field, and a timestamp date-time string field. The insights object contains a global object with an explanation string and similarityScore number, plus a siteReports array of per-URL analysis objects.

ParameterTypeMandatoryDescription
tierENUMNoThe service tier applied to this analysis. Allowed values: standard, premium.
serviceStringNoThe name of the analysis service used to generate this report.
insightsObjectNoAnalysis results. Contains global and siteReports.
insights.globalObjectNoGlobal similarity summary. Contains explanation and similarityScore.
insights.global.explanationStringNoA narrative explanation of the global similarity result.
insights.global.similarityScoreNumberNoOverall similarity score across all submitted websites, from 0 to 100.
insights.siteReportsObject ArrayNoIndividual analysis reports for each submitted URL.
insights.siteReports[].urlStringNoThe URL of the analyzed website. Must be a URI.
insights.siteReports[].seoScoreNumberNoThe SEO score for this website, from 0 to 100.
insights.siteReports[].aiSummaryStringNoAn AI-generated summary of the website's content and positioning.
insights.siteReports[].suggestedImprovementsString ArrayNoA list of suggested SEO/content improvements for this website.
timestampStringNoThe timestamp at which the analysis was generated. Format: date-time.

Body

Name
Type
Description
bodyREQUIRED
object
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.