SPB Git forge

spb/websensor

Public
33commits 1branches 0releases
3.4 MBsize
maindefault branch
10 days agolast push
TypeScript 55.4% Python 43.2% SQL 1.2%
10.9 KB · 104 lines yaml
Raw Blame History
1# WebSensor — documents & data-file sensor class (added 2026-09-08): official PDFs whose text matters2# (`pdf`) and open-data time series / registers in CSV (`csv`) or keyed JSON (`jsonlist`). All entries3# extend organizations of the founding registry, except the two data-only sources at the end.4# Rules: stable URLs only (no dated file names), `tail: true` on growing time series, tier C/D.5sources:6  # ── Macroeconomic time series (FRED — CSV endpoint needs no API key) ──7  - id: fred8    extend: true9    categories: [open-data, statistics]10    sensors:11      - { name: fed funds effective rate (FEDFUNDS), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=FEDFUNDS", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [FEDFUNDS], dateColumn: observation_date, tail: true, maxRows: 24 } }12      - { name: 10-year treasury yield (DGS10), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=DGS10", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [DGS10], dateColumn: observation_date, tail: true, maxRows: 30 } }13      - { name: 2-year treasury yield (DGS2), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=DGS2", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [DGS2], dateColumn: observation_date, tail: true, maxRows: 30 } }14      - { name: 10y-2y spread (T10Y2Y), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=T10Y2Y", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [T10Y2Y], dateColumn: observation_date, tail: true, maxRows: 30 } }15      - { name: SOFR, url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=SOFR", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [SOFR], dateColumn: observation_date, tail: true, maxRows: 30 } }16      - { name: CPI all items (CPIAUCSL), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=CPIAUCSL", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [CPIAUCSL], dateColumn: observation_date, tail: true, maxRows: 24 } }17      - { name: unemployment rate (UNRATE), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=UNRATE", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [UNRATE], dateColumn: observation_date, tail: true, maxRows: 24 } }18      - { name: nonfarm payrolls (PAYEMS), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=PAYEMS", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [PAYEMS], dateColumn: observation_date, tail: true, maxRows: 24 } }19      - { name: initial jobless claims (ICSA), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=ICSA", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [ICSA], dateColumn: observation_date, tail: true, maxRows: 26 } }20      - { name: 30-year mortgage rate (MORTGAGE30US), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=MORTGAGE30US", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [MORTGAGE30US], dateColumn: observation_date, tail: true, maxRows: 26 } }21      - { name: fed balance sheet (WALCL), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=WALCL", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [WALCL], dateColumn: observation_date, tail: true, maxRows: 26 } }22      - { name: real GDP (GDPC1), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=GDPC1", type: FILE, connector: csv, tier: D, config: { keyColumn: observation_date, compareColumns: [GDPC1], dateColumn: observation_date, tail: true, maxRows: 12 } }23      - { name: USD/CAD (DEXCAUS), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=DEXCAUS", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [DEXCAUS], dateColumn: observation_date, tail: true, maxRows: 30 } }24      - { name: WTI crude spot (DCOILWTICO), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=DCOILWTICO", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [DCOILWTICO], dateColumn: observation_date, tail: true, maxRows: 30 } }25      - { name: Case-Shiller national HPI (CSUSHPINSA), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=CSUSHPINSA", type: FILE, connector: csv, tier: D, config: { keyColumn: observation_date, compareColumns: [CSUSHPINSA], dateColumn: observation_date, tail: true, maxRows: 24 } }26      - { name: VIX (VIXCLS), url: "https://fred.stlouisfed.org/graph/fredgraph.csv?id=VIXCLS", type: FILE, connector: csv, tier: C, config: { keyColumn: observation_date, compareColumns: [VIXCLS], dateColumn: observation_date, tail: true, maxRows: 30 } }27  - id: bank-of-canada28    extend: true29    categories: [open-data]30    sensors:31      - { name: daily exchange rates (Valet FX_RATES_DAILY), url: "https://www.bankofcanada.ca/valet/observations/group/FX_RATES_DAILY/json?recent=5", type: REST_API, connector: jsonlist, tier: C, config: { itemsPath: observations, keyField: d, titleTemplate: "FX {d}: USD/CAD {FXUSDCAD.v} · EUR/CAD {FXEURCAD.v}", dateField: d, compareFields: [FXUSDCAD.v, FXEURCAD.v, FXGBPCAD.v, FXJPYCAD.v, FXCNYCAD.v], urlTemplate: "https://www.bankofcanada.ca/rates/exchange/daily-exchange-rates/" } }32      - { name: policy interest rate (Valet V39079), url: "https://www.bankofcanada.ca/valet/observations/V39079/json?recent=8", type: REST_API, connector: jsonlist, tier: B, config: { itemsPath: observations, keyField: d, titleTemplate: "Bank of Canada policy rate {d}: {V39079.v} %", dateField: d, compareFields: [V39079.v], urlTemplate: "https://www.bankofcanada.ca/core-functions/monetary-policy/key-interest-rate/" } }33      - { name: CORRA (Valet AVG.INTWO), url: "https://www.bankofcanada.ca/valet/observations/AVG.INTWO/json?recent=10", type: REST_API, connector: jsonlist, tier: C, config: { itemsPath: observations, keyField: d, titleTemplate: "CORRA {d}: {AVG.INTWO.v} %", dateField: d, compareFields: [AVG.INTWO.v], urlTemplate: "https://www.bankofcanada.ca/rates/interest-rates/corra/" } }34  - id: ecb35    extend: true36    categories: [open-data]37    sensors:38      - { name: USD/EUR reference rate (EXR daily), url: "https://data-api.ecb.europa.eu/service/data/EXR/D.USD.EUR.SP00.A?format=csvdata&lastNObservations=10", type: FILE, connector: csv, tier: C, config: { keyColumn: TIME_PERIOD, compareColumns: [OBS_VALUE], dateColumn: TIME_PERIOD, titleColumn: TITLE } }39      - { name: deposit facility rate (FM daily), url: "https://data-api.ecb.europa.eu/service/data/FM/B.U2.EUR.4F.KR.DFR.LEV?format=csvdata&lastNObservations=10", type: FILE, connector: csv, tier: B, config: { keyColumn: TIME_PERIOD, compareColumns: [OBS_VALUE], dateColumn: TIME_PERIOD, titleColumn: TITLE } }40      - { name: HICP inflation (ICP monthly), url: "https://data-api.ecb.europa.eu/service/data/ICP/M.U2.N.000000.4.ANR?format=csvdata&lastNObservations=6", type: FILE, connector: csv, tier: C, config: { keyColumn: TIME_PERIOD, compareColumns: [OBS_VALUE], dateColumn: TIME_PERIOD, titleColumn: TITLE } }41  - id: noaa42    extend: true43    categories: [open-data, climate]44    sensors:45      - { name: Mauna Loa CO2 monthly mean, url: "https://gml.noaa.gov/webdata/ccgg/trends/co2/co2_mm_mlo.csv", type: FILE, connector: csv, tier: D, config: { commentPrefix: "#", keyColumn: [year, month], compareColumns: [average, deseasonalized], tail: true, maxRows: 24 } }46  - id: nasa47    extend: true48    categories: [open-data, climate]49    sensors:50      - { name: GISTEMP global land-ocean temperature anomaly, url: "https://data.giss.nasa.gov/gistemp/tabledata_v4/GLB.Ts+dSST.csv", type: FILE, connector: csv, tier: D, config: { skipRows: 1, keyColumn: Year, compareColumns: [Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec, J-D], tail: true, maxRows: 5 } }51  # ── Official documents (PDF text) ──52  - id: nist53    extend: true54    sensors:55      - { name: cybersecurity framework 2.0 (PDF), url: "https://nvlpubs.nist.gov/nistpubs/CSWP/NIST.CSWP.29.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 40 } }56      - { name: SP 800-53 rev 5 controls (PDF), url: "https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-53r5.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 60 } }57  - id: sec58    extend: true59    sensors:60      - { name: form 10-K instructions (PDF), url: "https://www.sec.gov/files/form10-k.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 30, headers: { "User-Agent": "WebSensor (contact@websensor.io)" } } }61  - id: federal-reserve62    extend: true63    sensors:64      - { name: purposes & functions (PDF), url: "https://www.federalreserve.gov/aboutthefed/files/pf_complete.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 30 } }65  - id: visa66    extend: true67    sensors:68      - { name: Visa core rules & product and service rules (PDF), url: "https://usa.visa.com/dam/VCOM/download/about-visa/visa-rules-public.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 60 } }69  - id: cra70    extend: true71    sensors:72      - { name: T4012 T2 corporation income tax guide (PDF), url: "https://www.canada.ca/content/dam/cra-arc/formspubs/pub/t4012/t4012-24e.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 40 } }73  - id: openai74    extend: true75    sensors:76      - { name: preparedness framework (PDF), url: "https://cdn.openai.com/openai-preparedness-framework-beta.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 40 } }77  - id: apple78    extend: true79    sensors:80      - { name: platform security guide (PDF), url: "https://help.apple.com/pdf/security/en_US/apple-platform-security-guide.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 60 } }81      - { name: macOS software license agreement (PDF), url: "https://www.apple.com/legal/sla/docs/macOSSequoia.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 40 } }82  # ── Data-only sources ──83  - id: irs84    name: Internal Revenue Service85    domain: irs.gov86    homepage: https://www.irs.gov87    categories: [government, finance]88    tier: C89    aliases: [irs]90    discover: { rss: true }91    sensors:92      - { name: newsroom, url: "https://www.irs.gov/newsroom", type: HTML, connector: http, tier: C }93      - { name: form 1040 (PDF), url: "https://www.irs.gov/pub/irs-pdf/f1040.pdf", type: FILE, connector: pdf, tier: D, config: { maxPages: 4 } }94  - id: cboe-indices95    name: Cboe Global Indices96    domain: cboe.com97    homepage: https://www.cboe.com/tradable_products/vix/98    categories: [finance, open-data]99    tier: C100    aliases: [cboe, vix]101    products: [{ name: VIX, type: index, aliases: [cboe volatility index] }]102    sensors:103      - { name: VIX daily history (CSV), url: "https://cdn.cboe.com/api/global/us_indices/daily_prices/VIX_History.csv", type: FILE, connector: csv, tier: C, config: { keyColumn: DATE, compareColumns: [CLOSE], tail: true, maxRows: 30 } }104