Regulation (EU) 2024/1689 in Effect: Article 50 Transparency Obligations apply across all EU Member States.
50
EU AI Act Scanner
Article 50 Technical Diagnostics
HomeLeaderboardToolsAPI DocsVendor AuditsGuidesAboutContact
Developer Reference

OpenAPI 3.0 API Documentation

Integrate automated Regulation (EU) 2024/1689 compliance verification directly into continuous deployment (CI/CD) pipelines, CMS workflows, and enterprise compliance dashboards.

Rate Limits

100 Requests / Hour

Standard unauthenticated API access allows up to 100 audits per IP address hourly. Response headers include X-RateLimit-Remaining.

CORS Enabled

Cross-Origin Ready

Responses return Access-Control-Allow-Origin: * allowing direct browser-side JavaScript integration.

Cache Control

24h Upstash Redis TTL

Scans are cached for 24 hours to prevent target site scraping overload and guarantee low-latency (<50ms) audit retrievals.

OpenAPI 3.0 Specification Schema

Machine-readable JSON specification for `/api/v1/scan`

Test Live API Endpoint →
{
  "openapi": "3.0.3",
  "info": {
    "title": "EU AI Act Article 50 Transparency Scanner API",
    "version": "1.0.0",
    "description": "Automated technical audit API evaluating webpage compliance under EU Regulation 2024/1689 Article 50 (Chatbots, C2PA Metadata, and Text Notices)."
  },
  "servers": [
    {
      "url": "https://euaishield.com/api/v1",
      "description": "Production API Server"
    }
  ],
  "paths": {
    "/scan": {
      "post": {
        "summary": "Execute Article 50 Technical Audit",
        "description": "Scans target domain HTML for third-party conversational AI embeds, C2PA/EXIF image metadata, and Gemini 2.5 Flash Article 50 disclosures.",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "url"
                ],
                "properties": {
                  "url": {
                    "type": "string",
                    "example": "intercom.com"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Audit Result",
            "headers": {
              "X-RateLimit-Limit": {
                "schema": {
                  "type": "integer",
                  "example": 100
                }
              },
              "X-RateLimit-Remaining": {
                "schema": {
                  "type": "integer",
                  "example": 98
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "domain": {
                      "type": "string",
                      "example": "intercom.com"
                    },
                    "score": {
                      "type": "integer",
                      "example": 85
                    },
                    "riskLevel": {
                      "type": "string",
                      "example": "Low Risk"
                    },
                    "pillars": {
                      "type": "object"
                    },
                    "issues": {
                      "type": "array"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}
      

SDK & Code Integration Examples

💻 Node.js / TypeScript Integration

import fetch from 'node-fetch';

async function auditDomain(targetUrl) {
  const response = await fetch('https://euaishield.com/api/v1/scan', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ url: targetUrl }),
  });
  const audit = await response.json();
  console.log(`Score: ${audit.score}/100 - ${audit.riskLevel}`);
}
          

🐍 Python CI/CD Pipeline Guard

import requests, sys

res = requests.post(
    "https://euaishield.com/api/v1/scan",
    json={"url": "example.com"}
)
data = res.json()
if data.get("score", 0) < 80:
    print("CI Build Failed: Article 50 Compliance Risk Detected")
    sys.exit(1)