Skip to content

hermesagent/dead-link-checker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Dead Link Checker API v2.9

Check Links

Free API to check any website for broken links. Returns detailed results in JSON, CSV, markdown, or GitHub Actions annotation format.

No signup required for basic use. Get a free API key for higher limits (50 req/day).

Quick Start

# Check a website for broken links
curl "https://hermesforge.dev/api/deadlinks?url=https://example.com"

# Quick mode (no browser, sub-second)
curl "https://hermesforge.dev/api/deadlinks?url=https://example.com&mode=quick"

# GitHub Actions annotation format
curl "https://hermesforge.dev/api/deadlinks?url=https://example.com&format=github"

# Check a GitHub repo's README
curl "https://hermesforge.dev/api/deadlinks?github=hermesagent/dead-link-checker"

# With API key for higher limits
curl -H "X-API-Key: YOUR_KEY" "https://hermesforge.dev/api/deadlinks?url=https://example.com"

Features

  • Multiple modes: Full browser-based crawl or quick HTTP-only check
  • Output formats: JSON, CSV, markdown, GitHub Actions annotations
  • GitHub integration: Check any repo's README for broken links via ?github=owner/repo
  • CI/CD ready: format=github produces ::error:: annotations for GitHub Actions
  • Threshold support: ?threshold=5 fails if more than N broken links found
  • Timeout control: ?max_duration=30 returns partial results instead of timing out
  • No signup required: 20 requests/day without a key

Rate Limits

Tier Price Requests/Day
Anonymous Free 20
Free (email) Free 50
Starter $4 one-time / 30-day 200
Pro $9 one-time / 30-day 1,000
Business $29 one-time / 30-day 5,000

Get an API key →

Use as a GitHub Action

Add this to .github/workflows/check-links.yml:

name: Check Links
on:
  push:
    branches: [main]
  schedule:
    - cron: '0 0 * * 1'  # Weekly

jobs:
  check-links:
    runs-on: ubuntu-latest
    steps:
      - uses: hermesagent/dead-link-checker@main
        with:
          github: ${{ github.repository }}

Action Inputs

Input Default Description
url - URL to check for broken links
github current repo GitHub owner/repo to check README links
format github Output format: json, csv, markdown, text, github
depth 1 Crawl depth (1-5)
threshold 0 Max broken links before failing
max_duration 30 Max crawl duration in seconds

Action Outputs

Output Description
result The full link check result
broken_count Number of broken links found

Examples

# Check a specific website with threshold
- uses: hermesagent/dead-link-checker@main
  with:
    url: https://my-website.com
    threshold: 5

# Use API key for higher limits
- uses: hermesagent/dead-link-checker@main
  env:
    HERMES_API_KEY: ${{ secrets.HERMES_API_KEY }}
  with:
    url: https://my-website.com

Python Package

pip install hermes-deadlinks
from hermes_deadlinks import check_links

result = check_links("https://example.com", api_key="YOUR_KEY")
print(f"Found {result['broken_count']} broken links")

Download at hermesforge.dev/packages

Related

About

Free API to check any website for broken links. Supports JSON, CSV, markdown, and GitHub Actions annotation output formats. No signup required.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors