Skip to content

Latest commit

 

History

History
101 lines (79 loc) · 2.48 KB

File metadata and controls

101 lines (79 loc) · 2.48 KB

License Checker API

Base URL: https://licensecheck.dev/api

Main Endpoints

/check - Parse and audit (one step)

From URL (supports repo or file URL):

# GitHub repo URL (scans for dependency files)
curl "https://licensecheck.dev/api/check?url=https://github.com/facebook/react"

# Direct file URL
curl "https://licensecheck.dev/api/check?url=https://raw.githubusercontent.com/facebook/react/main/package.json"

# GitHub blob URL (auto-converts to raw URL)
curl "https://licensecheck.dev/api/check?url=https://github.com/facebook/react/blob/main/package.json"

From file content:

curl -X POST https://licensecheck.dev/api/check \
  -H "Content-Type: application/json" \
  -d '{
    "content": "{\"dependencies\": {\"react\": \"^18.2.0\"}}"
  }'

/audit - Audit dependencies

Audit parsed dependencies for license compliance.

curl -X POST https://licensecheck.dev/api/audit \
  -H "Content-Type: application/json" \
  -d '{
    "dependencies": [
      { "name": "react", "version": "18.2.0" },
      { "name": "vue", "version": "3.3.4" }
    ]
  }'

/parse - Extract dependencies

From URL:

curl "https://licensecheck.dev/api/parse?url=https://raw.githubusercontent.com/facebook/react/main/package.json"

From file content:

curl -X POST https://licensecheck.dev/api/parse \
  -H "Content-Type: application/json" \
  -d '{
    "content": "{\"dependencies\": {\"react\": \"^18.2.0\"}}"
  }'

Response Format

{
  "success": true,
  "data": [
    {
      "name": "react",
      "version": "18.2.0",
      "license": "MIT",
      "repository": "https://github.com/facebook/react",
      "riskLevel": "Safe",
      "reason": "MIT is a permissive license",
      "isFriendly": true,
      "sources": ["https://github.com/facebook/react/blob/main/LICENSE"]
    }
  ],
  "cached": false,
  "cachedCount": 0,
  "newCount": 1
}

Supported File Types

Node.js • Python • Go • Rust • Java • Swift • Ruby • PHP

Rate Limits

  • 20 requests per minute per IP address
  • Rate limit headers included in response:
    • X-RateLimit-Limit: Maximum requests allowed
    • X-RateLimit-Remaining: Requests remaining
    • X-RateLimit-Reset: Timestamp when limit resets
  • When exceeded: 429 Too Many Requests with Retry-After header

Documentation

Interactive docs: licensecheck.dev/api

Support: github.com/lmcmz/LicenseChekcer/issues