version: "1"
kind: miner
id: 7402
slug: proofgate-url-intelligence
protocol: generic
name: ProofGate URL Intelligence
description: Deterministic pre-execution URL intelligence for autonomous agents. Aggregates phishing, malware, DNS, domain-age, and URL-structure evidence without visiting the submitted target.
base_url: https://proofgate-six.vercel.app
rate_limit_per_sec: 5
cache_ttl_sec: 60
circuit_threshold: 5
circuit_cooldown_seconds: 30
endpoints:
  - path: /scan
    external_path: /api/miner/scan
    method: POST
    description: Return a normalized safe, suspicious, or malicious verdict with confidence and source-level evidence.
input_schema:
  type: object
  additionalProperties: false
  required:
    - url
  properties:
    url:
      type: string
      format: uri
      maxLength: 2048
      description: The public HTTP or HTTPS URL to evaluate.
output_schema:
  type: object
  required:
    - schema_version
    - intent
    - url
    - verdict
    - malicious
    - confidence
    - reason
    - evidence
    - checked_at
    - policy_version
  properties:
    schema_version:
      type: string
    intent:
      type: string
      enum:
        - URL_SCAN
    url:
      type: string
    verdict:
      type: string
      enum:
        - safe
        - suspicious
        - malicious
    malicious:
      type: boolean
    confidence:
      type: number
      minimum: 0
      maximum: 1
    reason:
      type: string
    evidence:
      type: array
      items:
        type: object
    checked_at:
      type: string
      format: date-time
    policy_version:
      type: string
semantics:
  signal_mapping:
    confidence_field: confidence
    label_field: verdict
    reason_field: reason
  supported_intents:
    - URL_SCAN
on_chain:
  transform: direct
  min_price_usdc: 0.01
  fields:
    strings:
      - index: 0
        name: verdict
        source_path: verdict
      - index: 1
        name: reason
        source_path: reason
    integers:
      - index: 0
        name: confidence_x10000
        source_path: confidence
        multiplier: 10000
    bools:
      - index: 0
        name: malicious
        source_path: malicious
  request:
    - endpoint: scan
      method: POST
      body:
        url:
          source: strings.0
docs:
  website: https://proofgate-six.vercel.app
  repository: https://github.com/karan68/proofgate
limitations:
  - code: MAX_PARAM_VALUE
    message: URL input is limited to 2,048 characters.
    param: url
    property: length
    value_num: 2048
    operator: lte
