IndieWeb Endpoint Auditor avatar

IndieWeb Endpoint Auditor

Pricing

Pay per usage

Go to Apify Store
IndieWeb Endpoint Auditor

IndieWeb Endpoint Auditor

Audit a public page for IndieWeb endpoint discovery in one API call. Checks IndieAuth authorization/token endpoints, Micropub, Webmention, Microsub, and rel=me identity links.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Sanskar Jaiswal

Sanskar Jaiswal

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a month ago

Last modified

Security

Limited permissions

Share

Audit a public web page for IndieWeb endpoint discovery in one API call. Checks for IndieAuth authorization and token endpoints, IndieAuth server metadata, Micropub, Webmention, Microsub, and rel="me" identity links. Returns a readiness score, letter grade, issues, and recommendations.

Use cases

  • Personal website owners and IndieWeb adopters - verify their site exposes the endpoints required for IndieAuth login, content publishing, and webmentions
  • IndieWeb tooling developers - validate that a target domain is correctly configured before building a client against it
  • Static site generator and CMS plugin authors - regression-test endpoint discovery after template or theme changes
  • Agency consultants - batch-audit client sites that claim IndieWeb support
  • Identity verification services - check rel="me" link presence for RelMeAuth-based sign-in flows

Input

FieldTypeRequiredDefaultDescription
startUrlstringyes-Public page URL to audit (typically a homepage or IndieWeb profile page)
timeoutSecondsintegerno10Per-request timeout (3-30 seconds)
maxHtmlBytesintegerno1048576Maximum HTML body size to download and parse (16 KB - 2 MB)

Example input

{
"startUrl": "https://example.com",
"timeoutSeconds": 10,
"maxHtmlBytes": 1048576
}

Output

A single dataset item with the full audit:

FieldTypeDescription
inputUrlstringThe URL provided as input
finalUrlstringFinal URL after redirects
httpsbooleanWhether the final response was served over HTTPS
endpointsobjectDiscovered endpoints, keyed by authorizationEndpoint, tokenEndpoint, indieauthMetadata, micropubEndpoint, webmentionEndpoint, microsubEndpoint. Each value is either null or { url, resolvedUrl, source }
relMeLinksarrayList of rel="me" identity links found, each { href, resolvedUrl }
indieAuthReadybooleantrue when both authorization_endpoint and token_endpoint were discovered
scoreintegerIndieWeb endpoint readiness score (0-100)
gradestringLetter grade (A+, A, B, C, D, E, F)
issuesarrayAggregated issue descriptions
checkedAtstringISO 8601 timestamp
recommendationsarrayActionable recommendations for improving endpoint discovery
errorstring | nullFetch error message, if any

endpoints entry shape

Each non-null endpoint entry contains:

FieldTypeDescription
urlstringThe raw href or Link header URL value as published
resolvedUrlstring | nullThe URL resolved to an absolute URL against the final page URL
sourcestringWhere the endpoint was discovered: html (a <link> element) or header (an HTTP Link response header)

Endpoints checked

Endpointrel valuePurpose
Authorization endpointauthorization_endpointWhere IndieAuth clients redirect users to sign in
Token endpointtoken_endpointWhere IndieAuth clients exchange authorization codes for access tokens
IndieAuth metadataindieauth-metadataServer metadata document for richer IndieAuth client discovery
Micropub endpointmicropubWhere IndieAuth-authenticated clients publish content
Webmention endpointwebmentionWhere other sites send mention/reply/like notifications
Microsub endpointmicrosubFeed reader server endpoint for the IndieWeb reader ecosystem

Discovery checks HTML <link rel="..."> elements first, then falls back to the HTTP Link response header per RFC 8288 for any endpoint not found in HTML. rel="me" links are collected from both <a> and <link> elements, deduplicated by resolved URL.

Grading scale

Score rangeGrade
95-100A+
85-94A
75-84B
65-74C
50-64D
30-49E
0-29F

Scoring awards 25 points for the authorization endpoint, 20 points each for the token endpoint, Micropub endpoint, and Webmention endpoint, and 15 points for having at least one rel="me" link.

Example output

{
"inputUrl": "https://example.com",
"finalUrl": "https://example.com/",
"https": true,
"endpoints": {
"authorizationEndpoint": {
"url": "https://example.com/auth",
"resolvedUrl": "https://example.com/auth",
"source": "html"
},
"tokenEndpoint": {
"url": "https://example.com/auth/token",
"resolvedUrl": "https://example.com/auth/token",
"source": "html"
},
"indieauthMetadata": null,
"micropubEndpoint": {
"url": "https://example.com/micropub",
"resolvedUrl": "https://example.com/micropub",
"source": "html"
},
"webmentionEndpoint": {
"url": "https://webmention.io/example.com/webmention",
"resolvedUrl": "https://webmention.io/example.com/webmention",
"source": "html"
},
"microsubEndpoint": null
},
"relMeLinks": [
{ "href": "https://github.com/example", "resolvedUrl": "https://github.com/example" },
{ "href": "mailto:me@example.com", "resolvedUrl": "mailto:me@example.com" }
],
"indieAuthReady": true,
"score": 95,
"grade": "A+",
"issues": [],
"checkedAt": "2026-10-02T05:00:00.000Z",
"recommendations": [
"Consider publishing an IndieAuth server metadata document (rel=\"indieauth-metadata\") per the current IndieAuth spec for richer client discovery."
],
"error": null
}

Security

  • Only public HTTP/HTTPS URLs are accepted
  • SSRF protection: localhost, private IPv4/IPv6 literals (including bracketed IPv6), and DNS-resolving-to-private IPs are blocked
  • URLs with embedded credentials are rejected
  • Redirects are manually revalidated before following (max 3)
  • HTML body is capped at maxHtmlBytes to prevent oversized responses
  • Discovered endpoint URLs and rel="me" links are never fetched by the actor; only the input page itself is retrieved
  • No browser automation, no proxies, no cookies stored

Pricing

Pay per event:

EventPrice
Actor start$0.005
Page audited$0.01

A single-page audit costs approximately $0.015.

FAQ

What is IndieWeb endpoint discovery? IndieWeb sites publish a small set of <link> elements (or equivalent HTTP Link headers) that let independent clients discover how to sign a user in (IndieAuth), publish content on their behalf (Micropub), receive mention notifications (Webmention), and sync feeds (Microsub). This actor checks for all of them in one pass.

What is rel="me"? A rel="me" link on an anchor or <link> element asserts that the linked profile (GitHub, Mastodon, a mailto: address, etc.) belongs to the same person as the page being audited. It underlies RelMeAuth-style identity verification used by some IndieAuth implementations.

Does this actor replace a full IndieAuth client or server implementation? No. It only performs read-only discovery and validation of the endpoints a site publishes. It does not perform OAuth flows, issue tokens, or store credentials.

Does the actor follow redirects? Yes, up to 3 redirects. Each redirect target is revalidated for SSRF safety before it is followed.

Can I audit multiple pages in one run? This actor audits one page per run. For bulk audits, schedule multiple runs.