my eye

author Angelo Gladding

name Webmention

published 2024-12-12T15:04:46.174339-08:00

type entry

updated 2025-06-26T12:33:23.818399-07:00

url /webmention, /2024/12/12/s3

visibility public

Content

$if web.tx.request.method == "POST":
    $ form = web.form()
    $ source = form.get("source")
    $ target = form.get("target")
    $if source and target:
        $ endpoint = web.get(target).link("webmention")
        $if endpoint:
            $web.post(endpoint, data={"source": source, "target": target}).text
            Webmention sent.
        $else:
            Endpoint `$target` not found.
    $elif target:
        validate webmention receiving
    $elif source:
        scan and send all webmentions

[[IndieWeb]] cross-site interactions.

## Tools

### Validate Webmention receiving

<form method=post action=/webmention>
<label><small>Target URL:</small><br>
<input name=target></label><br>
<button>Validate</button>
</form>

### Send a Webmention

<form method=post action=/webmention>
<label><small>Source URL:</small><br>
<input name=source></label><br>
<label><small>Target URL:</small><br>
<input name=target></label><br>
<button>Send</button>
</form>

### Scan and send all Webmentions

<form method=post action=/webmention>
<label><small>Source URL:</small><br>
<input name=source></label><br>
<button>Scan & Send</button>
</form>

## See Also

-   [spec](https://www.w3.org/TR/webmention/)
-   [wiki](https://indieweb.org/Webmention)
-   [webmention.io](https://webmention.io) is a hosted service created to easily receive webmentions on any web page. 
-   [webmention.rocks](https://webmention.rocks) is a validator to help you test your Webmention implementation.