{
  "openapi": "3.1.0",
  "info": {
    "title": "Deltawren API",
    "version": "1.0.0",
    "summary": "Daily data feeds as files: the same layout and schema as the free CyberMax Hugging Face datasets (CISA KEV + EPSS + CVSS, SEC Form 4 insider transactions, SEC 10-K/10-Q sections, open domain ranks), refreshed every day, plus daily history snapshots and per-file diffs (rows added, removed and changed). Key-based access over HTTPS, Range requests, a JSON manifest with sha256 per file. Free: the feed list, manifests and the daily change counts.",
    "description": "Paid API keys from $19/month (Open Domain Ranks feed: 20,000 file requests a month); free tier 200 file requests a day per IP with no key. Buy: https://deltawren.cybermaxtools.com/buy/domain-ranks-monthly?s=lead · all plans: https://deltawren.cybermaxtools.com/docs#pricing\n\nPricing: free tier 200 file requests/day per IP, no key. Paid API keys: Open Domain Ranks feed $19/month = 20,000 file requests/month; Open Domain Ranks feed yearly $190/year = 20,000 file requests/month; Kevscope CVE + KEV + EPSS feed $19/month = 20,000 file requests/month; Kevscope CVE + KEV + EPSS feed yearly $190/year = 20,000 file requests/month; Riskroll SEC 10-K/10-Q sections feed $29/month = 20,000 file requests/month; Riskroll SEC 10-K/10-Q sections feed yearly $290/year = 20,000 file requests/month; SEC Form 4 insider transactions feed $29/month = 20,000 file requests/month; SEC Form 4 insider transactions feed yearly $290/year = 20,000 file requests/month; All feeds $65/month = 60,000 file requests/month; All feeds yearly $650/year = 60,000 file requests/month. Get a key: https://deltawren.cybermaxtools.com/docs#pricing\n\nThe files you already load from CyberMax's free Hugging Face datasets, refreshed daily, with daily history and a \"what changed since yesterday\" diff. Same schema, same paths: switch your pipeline with one line. Feeds from $19/month.\n\nFree tier: Free: the feed list, each feed's manifest.json and the daily change counts (diff/<date>.json), 200 requests a day per IP. Paid keys open the files: today's files, daily history and the changed rows, for the feed you buy (or every feed with All feeds). Plans from $19/month. History starts on the feed start date (9 Oct 2026) and grows every day; full daily snapshots are kept 90 days (domain ranks: daily diffs plus a monthly snapshot). Data comes from public sources (CISA, FIRST, NIST NVD, SEC EDGAR, Majestic, Common Crawl) under their own licences, listed in each dataset card. No key needed. Remote MCP server: https://deltawren.cybermaxtools.com/mcp",
    "contact": {
      "name": "CyberMax",
      "url": "https://cybermax-tools-cybermax.static.hf.space/"
    },
    "license": {
      "name": "Proprietary (free tier + paid API keys)",
      "identifier": "LicenseRef-CyberMax"
    },
    "x-x402": {
      "protocol": "x402",
      "versions": [
        1,
        2
      ],
      "scheme": "exact",
      "network": [
        "base",
        "eip155:8453"
      ],
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "currency": "USDC",
      "price": {
        "perCallUsd": 0
      },
      "payPerCallEndpoints": [
        "/x402/api/changes"
      ],
      "alsoOn": "the plain endpoints answer 402 with the same terms once the free daily quota is used up (no key sent)",
      "headers": {
        "request": [
          "X-PAYMENT (v1)",
          "PAYMENT-SIGNATURE (v2)"
        ],
        "response": [
          "X-PAYMENT-RESPONSE",
          "PAYMENT-RESPONSE"
        ]
      }
    },
    "x-pricing": {
      "api": "Deltawren API",
      "currency": "USD",
      "free": {
        "price": 0,
        "callsPerDayPerIp": 200,
        "perMinutePerIp": 30,
        "key": "none needed"
      },
      "plans": [
        {
          "id": "domain-ranks-monthly",
          "name": "Open Domain Ranks feed",
          "price": 19,
          "billing": "per month",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/domain-ranks-monthly?s=openapi"
        },
        {
          "id": "domain-ranks-yearly",
          "name": "Open Domain Ranks feed yearly",
          "price": 190,
          "billing": "per year",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/domain-ranks-yearly?s=openapi"
        },
        {
          "id": "kevscope-monthly",
          "name": "Kevscope CVE + KEV + EPSS feed",
          "price": 19,
          "billing": "per month",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/kevscope-monthly?s=openapi"
        },
        {
          "id": "kevscope-yearly",
          "name": "Kevscope CVE + KEV + EPSS feed yearly",
          "price": 190,
          "billing": "per year",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/kevscope-yearly?s=openapi"
        },
        {
          "id": "riskroll-monthly",
          "name": "Riskroll SEC 10-K/10-Q sections feed",
          "price": 29,
          "billing": "per month",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/riskroll-monthly?s=openapi"
        },
        {
          "id": "riskroll-yearly",
          "name": "Riskroll SEC 10-K/10-Q sections feed yearly",
          "price": 290,
          "billing": "per year",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/riskroll-yearly?s=openapi"
        },
        {
          "id": "form4-monthly",
          "name": "SEC Form 4 insider transactions feed",
          "price": 29,
          "billing": "per month",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/form4-monthly?s=openapi"
        },
        {
          "id": "form4-yearly",
          "name": "SEC Form 4 insider transactions feed yearly",
          "price": 290,
          "billing": "per year",
          "calls": 20000,
          "per": "calendar month (UTC)",
          "perMinute": 60,
          "buy": "https://deltawren.cybermaxtools.com/buy/form4-yearly?s=openapi"
        },
        {
          "id": "all-monthly",
          "name": "All feeds",
          "price": 65,
          "billing": "per month",
          "calls": 60000,
          "per": "calendar month (UTC)",
          "perMinute": 120,
          "includes": "+ every Deltawren feed",
          "buy": "https://deltawren.cybermaxtools.com/buy/all-monthly?s=openapi"
        },
        {
          "id": "all-yearly",
          "name": "All feeds yearly",
          "price": 650,
          "billing": "per year",
          "calls": 60000,
          "per": "calendar month (UTC)",
          "perMinute": 120,
          "buy": "https://deltawren.cybermaxtools.com/buy/all-yearly?s=openapi"
        }
      ],
      "unit": "file requests",
      "howToUse": {
        "header": "x-api-key: YOUR_KEY",
        "alt": [
          "Authorization: Bearer YOUR_KEY",
          "?key=YOUR_KEY"
        ],
        "mcp": "send the key as Authorization: Bearer YOUR_KEY",
        "usage": "https://deltawren.cybermaxtools.com/key"
      },
      "manageKey": "https://deltawren.cybermaxtools.com/manage",
      "payments": "Stripe Checkout: card, Apple Pay, Google Pay, Link. Prices are in USD; where your country charges VAT or sales tax, Stripe adds it at checkout and shows it before you pay. Cancel any time at https://deltawren.cybermaxtools.com/manage."
    }
  },
  "servers": [
    {
      "url": "https://deltawren.cybermaxtools.com"
    },
    {
      "url": "https://deltawren.cybermax-tools.workers.dev"
    }
  ],
  "paths": {
    "/api/feeds": {
      "get": {
        "tags": [
          "Deltawren"
        ],
        "summary": "Every feed: dataset, cadence, history and plans",
        "description": "The Deltawren feeds with their source dataset, refresh cadence, how much history is kept, the manifest URL and the plans that open it.",
        "operationId": "listFeedsGet",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Results (same field names as the bulk version's dataset records) plus the free-tier limits.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked API key",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Free tier used up (200/day per IP) or rate/plan limit reached; the body has an upgrade link.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "504": {
            "description": "Took too long; ask for fewer items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Deltawren"
        ],
        "summary": "Every feed: dataset, cadence, history and plans",
        "description": "The Deltawren feeds with their source dataset, refresh cadence, how much history is kept, the manifest URL and the plans that open it.",
        "operationId": "listFeedsPost",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {}
              },
              "example": {}
            }
          }
        },
        "responses": {
          "200": {
            "description": "Results (same field names as the bulk version's dataset records) plus the free-tier limits.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked API key",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Free tier used up (200/day per IP) or rate/plan limit reached; the body has an upgrade link.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "504": {
            "description": "Took too long; ask for fewer items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/api/changes": {
      "get": {
        "tags": [
          "Deltawren"
        ],
        "summary": "What changed in a feed since the previous day (counts per file)",
        "description": "For one feed and date (default: the newest), rows added, removed and changed per file, and the key used to match rows. The rows themselves are served under /v1/<feed>/diff/<date>/<file> with a key.",
        "operationId": "feedChangesGet",
        "parameters": [
          {
            "name": "feed",
            "in": "query",
            "required": false,
            "description": "Feed id: domain-ranks, kevscope, riskroll, form4",
            "schema": {
              "type": "string"
            },
            "example": "domain-ranks"
          },
          {
            "name": "date",
            "in": "query",
            "required": false,
            "description": "YYYY-MM-DD (default: newest diff)",
            "schema": {
              "type": "string"
            },
            "example": ""
          }
        ],
        "responses": {
          "200": {
            "description": "Results (same field names as the bulk version's dataset records) plus the free-tier limits.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                },
                "example": {
                  "feed": "form4",
                  "title": "SEC Form 4 insider transactions",
                  "date": "2026-10-09",
                  "since": null,
                  "data_date": "2026-10-09",
                  "files": {
                    "data/transactions.parquet": {
                      "key": "whole row",
                      "rows": 1305,
                      "added": 1305,
                      "removed": 0,
                      "changed": 0
                    }
                  },
                  "rows": "https://deltawren.cybermaxtools.com/v1/form4/diff/2026-10-09/<file> (key needed)"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked API key",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Free tier used up (200/day per IP) or rate/plan limit reached; the body has an upgrade link.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "504": {
            "description": "Took too long; ask for fewer items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      },
      "post": {
        "tags": [
          "Deltawren"
        ],
        "summary": "What changed in a feed since the previous day (counts per file)",
        "description": "For one feed and date (default: the newest), rows added, removed and changed per file, and the key used to match rows. The rows themselves are served under /v1/<feed>/diff/<date>/<file> with a key.",
        "operationId": "feedChangesPost",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "feed": {
                    "type": "string"
                  },
                  "date": {
                    "type": "string"
                  }
                },
                "required": [
                  "feed"
                ]
              },
              "example": {
                "feed": "kevscope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Results (same field names as the bulk version's dataset records) plus the free-tier limits.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                },
                "example": {
                  "feed": "form4",
                  "title": "SEC Form 4 insider transactions",
                  "date": "2026-10-09",
                  "since": null,
                  "data_date": "2026-10-09",
                  "files": {
                    "data/transactions.parquet": {
                      "key": "whole row",
                      "rows": 1305,
                      "added": 1305,
                      "removed": 0,
                      "changed": 0
                    }
                  },
                  "rows": "https://deltawren.cybermaxtools.com/v1/form4/diff/2026-10-09/<file> (key needed)"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked API key",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "429": {
            "description": "Free tier used up (200/day per IP) or rate/plan limit reached; the body has an upgrade link.",
            "headers": {
              "Retry-After": {
                "schema": {
                  "type": "integer"
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "504": {
            "description": "Took too long; ask for fewer items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        }
      }
    },
    "/x402/api/changes": {
      "get": {
        "tags": [
          "Deltawren"
        ],
        "summary": "What changed in a feed since the previous day (counts per file) (pay per call in USDC via x402, no key)",
        "description": "For one feed and date (default: the newest), rows added, removed and changed per file, and the key used to match rows. The rows themselves are served under /v1/<feed>/diff/<date>/<file> with a key.\n\nPay per call with x402: $0 per call in USDC on Base. No key, no account: an unpaid call returns 402 with the payment requirements; retry with the X-PAYMENT (x402 v1) or PAYMENT-SIGNATURE (v2) header.",
        "operationId": "feedChangesGetPayPerCall",
        "parameters": [
          {
            "name": "feed",
            "in": "query",
            "required": false,
            "description": "Feed id: domain-ranks, kevscope, riskroll, form4",
            "schema": {
              "type": "string"
            },
            "example": "domain-ranks"
          },
          {
            "name": "date",
            "in": "query",
            "required": false,
            "description": "YYYY-MM-DD (default: newest diff)",
            "schema": {
              "type": "string"
            },
            "example": ""
          }
        ],
        "responses": {
          "200": {
            "description": "Results (same field names as the bulk version's dataset records) plus the free-tier limits.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                },
                "example": {
                  "feed": "form4",
                  "title": "SEC Form 4 insider transactions",
                  "date": "2026-10-09",
                  "since": null,
                  "data_date": "2026-10-09",
                  "files": {
                    "data/transactions.parquet": {
                      "key": "whole row",
                      "rows": 1305,
                      "added": 1305,
                      "removed": 0,
                      "changed": 0
                    }
                  },
                  "rows": "https://deltawren.cybermaxtools.com/v1/form4/diff/2026-10-09/<file> (key needed)"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked API key",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "402": {
            "description": "Payment Required: x402 payment requirements (body: x402Version 1 accepts[]; header PAYMENT-REQUIRED: x402 v2)."
          },
          "504": {
            "description": "Took too long; ask for fewer items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [],
        "x-payment-info": {
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0"
          },
          "protocols": [
            {
              "x402": {
                "version": [
                  1,
                  2
                ],
                "network": [
                  "base",
                  "eip155:8453"
                ],
                "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
                "scheme": "exact"
              }
            }
          ]
        }
      },
      "post": {
        "tags": [
          "Deltawren"
        ],
        "summary": "What changed in a feed since the previous day (counts per file) (pay per call in USDC via x402, no key)",
        "description": "For one feed and date (default: the newest), rows added, removed and changed per file, and the key used to match rows. The rows themselves are served under /v1/<feed>/diff/<date>/<file> with a key.\n\nPay per call with x402: $0 per call in USDC on Base. No key, no account: an unpaid call returns 402 with the payment requirements; retry with the X-PAYMENT (x402 v1) or PAYMENT-SIGNATURE (v2) header.",
        "operationId": "feedChangesPostPayPerCall",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "feed": {
                    "type": "string"
                  },
                  "date": {
                    "type": "string"
                  }
                },
                "required": [
                  "feed"
                ]
              },
              "example": {
                "feed": "kevscope"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Results (same field names as the bulk version's dataset records) plus the free-tier limits.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                },
                "example": {
                  "feed": "form4",
                  "title": "SEC Form 4 insider transactions",
                  "date": "2026-10-09",
                  "since": null,
                  "data_date": "2026-10-09",
                  "files": {
                    "data/transactions.parquet": {
                      "key": "whole row",
                      "rows": 1305,
                      "added": 1305,
                      "removed": 0,
                      "changed": 0
                    }
                  },
                  "rows": "https://deltawren.cybermaxtools.com/v1/form4/diff/2026-10-09/<file> (key needed)"
                }
              }
            }
          },
          "400": {
            "description": "Invalid input",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "401": {
            "description": "Invalid or revoked API key",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          },
          "402": {
            "description": "Payment Required: x402 payment requirements (body: x402Version 1 accepts[]; header PAYMENT-REQUIRED: x402 v2)."
          },
          "504": {
            "description": "Took too long; ask for fewer items",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Error"
                }
              }
            }
          }
        },
        "security": [],
        "x-payment-info": {
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0"
          },
          "protocols": [
            {
              "x402": {
                "version": [
                  1,
                  2
                ],
                "network": [
                  "base",
                  "eip155:8453"
                ],
                "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
                "scheme": "exact"
              }
            }
          ]
        }
      }
    }
  },
  "components": {
    "schemas": {
      "Error": {
        "type": "object",
        "properties": {
          "error": {
            "type": "string"
          },
          "message": {
            "type": "string"
          },
          "retryAfterSeconds": {
            "type": "integer"
          },
          "limits": {
            "type": "object"
          }
        },
        "required": [
          "error",
          "message"
        ]
      }
    },
    "securitySchemes": {
      "ApiKeyHeader": {
        "type": "apiKey",
        "in": "header",
        "name": "x-api-key",
        "description": "Optional. Paid plan key from https://deltawren.cybermaxtools.com/docs#pricing; leave out for the free tier."
      },
      "BearerKey": {
        "type": "http",
        "scheme": "bearer",
        "description": "Same key as a Bearer token."
      }
    }
  },
  "x-mcp-server": "https://deltawren.cybermaxtools.com/mcp",
  "externalDocs": {
    "description": "Get an API key (pricing)",
    "url": "https://deltawren.cybermaxtools.com/docs#pricing"
  },
  "security": [
    {},
    {
      "ApiKeyHeader": []
    },
    {
      "BearerKey": []
    }
  ]
}