Webmention.io

A hosted service that receives webmentions for any web page.

Read more about the project on the IndieWeb wiki.

Use it on your site

Once you have signed in, add the following tag to your HTML, replacing "username" with your username:

<link rel="webmention" href="https://webmention.io/username/webmention" />

The service will begin collecting webmentions on your behalf.

Your username is most likely your domain. For instance, if your website is https://aaronparecki.com/, your username is aaronparecki.com.

Display a mention counter

You can use the API from JavaScript to display a mention count for one or more URLs. The API sends Access-Control-Allow-Origin: *, so it works from a browser as well as a server.

fetch("https://webmention.io/api/count?target=https://example.com/page/100")
    .then(response => response.json())
    .then(data => console.log(data));

This returns the total number of mentions of the URL, as well as the count by type.

{
  "count": 6,
  "type": {
    "bookmark": 1,
    "mention": 2,
    "rsvp-maybe": 1,
    "rsvp-no": 1,
    "rsvp-yes": 1
  }
}

Show all mentions

You can also use the API to list every mention of a URL.

fetch("https://webmention.io/api/mentions.jf2?target=https://example.com/page/100")
    .then(response => response.json())
    .then(data => console.log(data));

The response looks like this:

{
  "type": "feed",
  "name": "Webmentions",
  "children": [
    {
      "type": "entry",
      "author": {
        "type": "card",
        "name": "Tantek Çelik",
        "url": "http://tantek.com/",
        "photo": "http://tantek.com/logo.jpg"
      },
      "url": "http://tantek.com/2013/112/t2/milestone-show-indieweb-comments-h-entry-pingback",
      "published": "2013-04-22T15:03:00-07:00",
      "wm-received": "2013-04-25T17:09:33Z",
      "wm-id": 900,
      "wm-source": "http://tantek.com/2013/112/t2/milestone-show-indieweb-comments-h-entry-pingback",
      "wm-target": "https://indieweb.org/",
      "content": {
        "html": "Another milestone: <a href=\"https://twitter.com/eschnou\">@eschnou</a> automatically shows #indieweb comments…",
        "text": "Another milestone: @eschnou automatically shows #indieweb comments…"
      },
      "mention-of": "https://indieweb.org/",
      "wm-property": "mention-of",
      "wm-private": false
    }
  ]
}

More API docs

Filtering, sorting, paging, Atom feeds and more are described in the project's README.