模式版本 2026-10-17 · 8959dbf
最近更改 2026-10-17T07:37:29+02:00
/api/v1/schema/index.json
私有存储
读者线索保存在私有的 Cloudflare D1 数据库中。线索正文不在公开文件里,也不会从 /api/v1/ 提供。
新闻通讯订阅者的地址保存在私有的 Cloudflare D1 数据库中。它们不在公开文件里,也不会从 /api/v1/ 提供。
各集合如何关联
Relations between the public collections NEWS News stories EVENTS Events SOURCES Sources NEWSLETTERS Newsletters SPONSORS Sponsors ACADEMIA Academia BOOKS Books MARKETS Markets PROFILES Profiles ORGCHART Who's who TALKS Talks DEVELOPERS Developers ILLUSTRATIONS Illustrations IMAGES Portraits LOGOS Outlet logos CHANGELOG Changelog RULES Rules map STATS Visitor stats CROWDFUNDING Crowdfunding BUDGET Budget ARTICLES Article archive TITLE_I18N Headline translations BLURBS Front-page blurbs EVENT_DESCRIPTIONS Event descriptions EVENT_REDIRECTS Event redirects REGULATION_VIDEOS Regulation videos
Mermaid 源码 erDiagram
NEWS }|--|| SOURCES : source
NEWS }|--|| SOURCES : also_covered_by_.outlet
NEWS ||--|| TITLE_I18N : id
NEWS ||--|| BLURBS : id
EVENTS }|--|| SPONSORS : sponsored
EVENTS ||--o{ TALKS : id
EVENTS ||--|| EVENT_DESCRIPTIONS : id
EVENTS ||--|| EVENT_REDIRECTS : id
SOURCES ||--o{ NEWS : id
SPONSORS ||--o{ EVENTS : sponsored
PROFILES }|--|| ORGCHART : entity_id_object_key
ORGCHART }|--|| ORGCHART : relations_.from
ORGCHART }|--|| ORGCHART : relations_.to
ORGCHART }o--o{ TALKS : entities_.talk_ids
ORGCHART ||--o{ PROFILES : id
ORGCHART ||--o{ DEVELOPERS : id
TALKS }|--|| EVENTS : event_id
TALKS }o--o{ ORGCHART : speaker_ids
DEVELOPERS }|--|| ORGCHART : org_id
DEVELOPERS }|--|| ORGCHART : whoswho_id
ILLUSTRATIONS }o--o{ NEWS : assign_.id
IMAGES }|--|| ORGCHART : entity_id_object_key
LOGOS ||--|| SOURCES : id_object_key
ARTICLES }|--|| NEWS : articles_.id
TITLE_I18N }|--|| NEWS : items_key
BLURBS }|--|| NEWS : items_key
EVENT_DESCRIPTIONS }|--|| EVENTS : items_key
EVENT_REDIRECTS }|--|| EVENTS : removed_id_object_key
EVENT_REDIRECTS }|--|| EVENTS : value
集合
News stories
Stories in data/news.json. status is the editorial state: pending, published, rejected or merged. The public API lists published stories that have a summary. Editor fields stay in the file and are left out of /api/v1/.
文件 data/news.json · JSON Schema
页面
API
关系 source → sources many-to-one — Outlet id in sources.jsonalso_covered_by[].outlet → sources many-to-one — Other outlets on the same eventid → title-i18n one-to-one — Our headlines, when we wrote themid → blurbs one-to-one — Front-page blurb, when one is written
文件中的字段
字段 类型 状态 允许的值 示例 说明 updatedstring必填 — "2026-10-14T01:43:32+00:00"
Story
字段 类型 状态 允许的值 示例 说明 idstring必填 — "d58de33a2af7"Stable id, 12 hex characters. urlstring必填 — "https://respawn.fi/gta-6-vuotajan-kryptovaluutta-romahti-yli-50-prosenttia"The story the reader follows. Absolute. titlestring必填 — "Bitcoin presses av rekordstore uttak"Source headline. title_enstring or null必填 — "K33: Bitcoin outflows are heavy, but low leverage limits the downside"Our English headline, when the source headline is not English. Null when we did not write one. sourcestring必填 — "investornytt"Source id from sources.json. source_namestring必填 — "Investornytt"Outlet name as shown. countrystring必填 "NO" "SE" "DK" "FI" "IS" "NORDIC" "EU" "FO" "GL" "AX""NO"NO, SE, DK, FI, IS, NORDIC or EU. languagestring or null必填 — "Norwegian"Language name of the source headline. viastring必填 · 不包含在 /api/v1/ 中 — — seen_viaarray of string必填 · 不包含在 /api/v1/ 中 — — publishedstring必填 — "2026-10-13T15:04:51+00:00"When the outlet published it, ISO 8601. fetchedstring必填 · 不包含在 /api/v1/ 中 — — topicsarray of string必填 — ["bitcoin", "business"]Topic ids, such as bitcoin or regulation. matchedarray of string必填 · 不包含在 /api/v1/ 中 — — paywallboolean必填 — falseTrue when the outlet may require a subscription. Article text is never fetched. statusstring必填 "pending" "published" "rejected" "merged""published"Editorial state. The public build uses published. summarystring or null必填 — — Our English summary. Null until one is written. approved_bystring可选 · 不包含在 /api/v1/ 中 — — approved_atstring可选 · 不包含在 /api/v1/ 中 — — summary_i18nobject可选 — — Our summary in nn, nb, sv, da, fi and is, when that translation is published. summary_i18n.nnstring必填 — — summary_i18n.nbstring必填 — — summary_i18n.svstring必填 — — summary_i18n.dastring必填 — — summary_i18n.fistring必填 — — summary_i18n.isstring必填 — — summary_i18n_reviewstring可选 · 不包含在 /api/v1/ 中 — "approved"reject_reasonstring可选 · 不包含在 /api/v1/ 中 — — published_unverifiedboolean可选 — truesuggested_bystring可选 · 不包含在 /api/v1/ 中 — — originstring可选 · 不包含在 /api/v1/ 中 — "suggested by Kryptonytt"suggested_statusstring可选 · 不包含在 /api/v1/ 中 — — suggested_atstring可选 · 不包含在 /api/v1/ 中 — — primary_sourceobject可选 — — Editor-recorded original document (name and url), such as a regulator press release. Not the lead outlet. primary_source.namestring必填 — "fi.se"primary_source.urlstring必填 — "https://mfn.se/all/a/ace-digital/aced-ace-digital-q3-2026-update"also_covered_byarray of object of string or boolean or null可选 — — Other outlets on the same event. merged_intostring可选 — "5285674a58d8"Id of the story this item was merged into (status merged).
Events
Calendar events. data/events.json is the working list, archive/events.json is what the public calendar keeps, and data/events_backfill.json is the previous-events backfill. sponsored is null, false, true, or the sponsor's name, and is never Kaupr. The calendar status upcoming, ongoing or past is computed from start and end and is not stored.
文件 data/events.json, archive/events.json, data/events_backfill.json · JSON Schema
页面
API
关系 sponsored → sponsors many-to-one — Null, false, true, or the sponsor's nameid → talks one-to-many — Talks recorded at this eventid → event-descriptions one-to-one id → event-redirects one-to-one — A removed duplicate points at the kept id
文件中的字段
字段 类型 状态 允许的值 示例 说明 updatedstring可选 — "2026-10-13T02:13:07+00:00"_how_tostring可选 — — _notestring可选 — — calendar_statusstring在构建网站时计算,不写入文件。 upcoming ongoing past— Not stored. upcoming: start is in the future. ongoing: start is in the past and end is still ahead (an event with no end is never ongoing). past: the event has ended. The same split is published as /api/v1/events/upcoming.json, the ongoing array, and /api/v1/events/past.json.
Event
字段 类型 状态 允许的值 示例 说明 idstring必填 — "ccc2eea6b213"Stable id. titlestring必填 — "Göteborg Bitcoin Meetup #49"Event title. startstring必填 — "2026-10-08T18:00:00+02:00"Start, ISO 8601 with offset. endstring or null必填 — "2026-10-08T21:00:00+02:00"End, ISO 8601 with offset. Null when the source gave no end. placestring or null必填 — "Ölrepubliken, Kronhusgatan 2B, Göteborg"Venue. Null when the event is online or the venue was not stated. citystring必填 — "Göteborg"City name. countrystring必填 "NO" "SE" "DK" "FI" "IS" "NORDIC" "EU" "FO" "GL" "AX""SE"Country code. onlineboolean必填 — falseTrue when the event is online. organiserstring必填 — "Swedish Bitcoin Meetups"Who runs it. urlstring必填 — "https://www.meetup.com/swedish-bitcoin-meetups/events/316047111/"The organiser's page. sourcestring必填 — "Swedish Bitcoin Meetups (Meetup.com)"Where we read the listing. backfill on rows from the previous-events file. source_urlstring可选 — "https://www.meetup.com/swedish-bitcoin-meetups/"paidboolean or null可选 — — True, false, or null when the source did not say. sponsoredboolean or string or null可选 — "Reese Legal"Null or false when there is no sponsor, true when it is sponsored without a named sponsor, or the sponsor's name. Never Kaupr. trusted_sourceboolean可选 — truefoundstring可选 — "2026-10-03T15:23:20+00:00"statusstring必填 "pending" "published" "rejected""pending"Editorial state. The public calendar uses published. notestring or null可选 — — Our short note, in English. descriptionobject可选 — — The organiser's description. text is the original wording. description.textstring必填 — — description.langstring必填 — "en"description.source_urlstring必填 — "https://www.meetup.com/swedish-bitcoin-meetups/events/316047111/"description.source_namestring必填 — "Swedish Bitcoin Meetups (Meetup.com)"description.retrievedstring必填 — "2026-10-07T23:50:00+00:00"place_sourceobject or null可选 — — place_source.namestring必填 — "Polyteknisk Forening (program)"place_source.urlstring必填 — "https://www.polyteknisk.no/program/crypto-killer-apps"place_source.retrievedstring必填 — "2026-10-12T03:50:28+00:00"title_origstring or null可选 — "Krypto-skatt v/ Reese Legal"note_i18nobject or null可选 — — That note in nn, nb, sv, da, fi and is. note_i18n.nnstring必填 — "Fell på første nyttårsdag: sjekk sida til arrangøren før du dreg."note_i18n.nbstring必填 — "Faller på første nyttårsdag: sjekk arrangørens side før du drar."note_i18n.svstring必填 — "Upplysning: talaren, Jørgen S. Notland, är utgivare av Nordic Crypto."note_i18n.dastring必填 — "Oplysning: foredragsholderen, Jørgen S. Notland, er udgiver af Nordic Crypto."note_i18n.fistring必填 — "Tiedoksi: puhuja Jørgen S. Notland on Nordic Crypton julkaisija."note_i18n.isstring必填 — "Til upplýsingar: fyrirlesarinn, Jørgen S. Notland, er útgefandi Nordic Crypto."attendeesnull可选 — — event_typestring可选 "conference" "meetup" "hackathon" "seminar""conference"languagestring or null可选 — "is"backfillboolean可选 — trueTrue on rows from data/events_backfill.json. Those rows are only in previous.json. speakers_countnull可选 — — videos_urlnull可选 — — creditsobject可选 — — credits.titleobject必填 — — credits.title.source_namestring必填 — "BTCX"credits.title.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.title.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.startobject必填 — — credits.start.source_namestring必填 — "BTCX"credits.start.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.start.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.endobject可选 — — credits.end.source_namestring必填 — "BTCX"credits.end.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.end.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.placeobject可选 — — credits.place.source_namestring必填 — "BTCX"credits.place.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.place.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.cityobject可选 — — credits.city.source_namestring必填 — "BTCX"credits.city.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.city.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.countryobject必填 — — credits.country.source_namestring必填 — "BTCX"credits.country.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.country.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.organiserobject必填 — — credits.organiser.source_namestring必填 — "BTCX"credits.organiser.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.organiser.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.urlobject必填 — — credits.url.source_namestring必填 — "BTCX"credits.url.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.url.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.event_typeobject必填 — — credits.event_type.source_namestring必填 — "BTCX"credits.event_type.source_urlstring必填 — "https://archive.cs.helsinki.fi/www.cs.helsinki.fi/en/events/79303.html"credits.event_type.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"credits.languageobject可选 — — credits.language.source_namestring必填 — "Rafmyntaráð Íslands"credits.language.source_urlstring必填 — "https://info.btchel.com/index.html"credits.language.retrieved_atstring必填 — "2026-10-07T21:00:00+00:00"talk_idsarray of string可选 — ["yt-zi2JsPOm5HE"]
Sources
News outlets and event sources in sources.json. type is how the fetcher reads the outlet. coverage is national, regional, local or justice. Kaupr is a news source and is never a sponsor.
文件 sources.json · JSON Schema
页面
API
关系 id → news one-to-many — Stories that cite this outlet
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — — user_agentstring必填 — "NordicCryptoBot/0.1 (+__SITE__about/; news headline bot)"Fetcher user agent. __SITE__ is replaced with the public site origin at fetch time. min_delay_secondsinteger必填 — 2Minimum wait between requests to the same host. fetch_workersinteger必填 — 6
Outlet
字段 类型 状态 允许的值 示例 说明 idstring必填 — "e24"Stable source id. namestring必填 — "E24"Outlet name. countrystring必填 "NO" "SE" "DK" "FI" "IS" "NORDIC" "EU" "FO" "GL" "AX""NO"kindstring必填 — "Newspaper"urlstring必填 — "https://e24.no"feedstring or null必填 — "https://e24.no/rss2/"RSS, sitemap or index URL. Null when none was verified. typestring必填 "rss" "rss-all" "html" "sitemap" "bing" "search" "dok8""rss"How the fetcher reads it: rss, rss-all, html, sitemap, bing, search or dok8. paywallboolean必填 — trueTrue when a story may sit behind a subscription. enabledboolean必填 — trueFalse when the feed is blocked, duplicated or not worth reading. statusstring必填 — "ok"verifiedstring必填 — "2026-10-06"coveragestring必填 "national" "regional" "local" "justice""local"national, regional, local or justice. languagestring必填 — "Norwegian"logo_sourcestring可选 — "https://e24.no/vgc/gfx/icon-180x180-1.0.png"methodstring必填 "rss" "html" "sitemap" "search" "manual""rss"What the sources table shows: rss, html, sitemap, search or manual. search_fallbackboolean可选 — truemax_new_per_runinteger可选 — 8outletstring可选 — "nrk"match_extraarray of string可选 — ["kryptotillgång", "Mica", "kryptotjänst"]regionstring可选 — "Stockholm"link_patternstring可选 — "^/nyheter/"merged_fromstring可选 — "kryptonytt 2026-10-04"allowed_tldstring可选 — "reuters.com"queriesarray of string可选 — — site_termsarray of string可选 — — sitesarray of string可选 — — directorystring可选 — "Amedia portfolio"logostring可选 — "https://r.acdn.no/local/v3/publications/www.avisenagder.no/gfx/square_logo.jpg"logo_notestring可选 — "robots.txt disallows the homepage, so no logo was fetched. Text only."
Event source
字段 类型 状态 允许的值 示例 说明 idstring必填 — "oslo-blockchain-meetup"namestring必填 — "Oslo Blockchain Meetup (Meetup.com)"urlstring必填 — "https://www.meetup.com/oslo-blockchain-meetup/"typestring必填 — "jsonld"trustedboolean必填 — trueorganiserstring可选 — "Oslo Blockchain Meetup"citystring可选 — "Oslo"enabledboolean必填 — truestatusstring必填 — "ok (JSON-LD on the group page)"countrystring必填 — "NO"link_patternstring可选 — "^(https://www\\.polyteknisk\\.no)?/program/[a-z0-9-]+$"icsstring可选 — "https://api.lu.ma/ics/get?entity=calendar&id=cal-8VLp9TOOwhxwPog"methodstring可选 — "Luma public iCal subscribe feed (calendar Subscribe .ics)"merged_fromstring可选 — "kryptonytt 2026-10-04"organizer_idstring可选 — "46541998283"event_pagesarray of string可选 — — venuestring可选 — "Litteraturhuset"House or room name when the source is one venue. addressstring可选 — "Wergelandsveien 29"Street address of the venue. sitestring可选 — "https://www.litteraturhuset.no"Origin of the venue site. apistring可选 — "https://litthusfred.no/wp-json/wp/v2/event"Public programme API the fetcher reads. lang_pathstring可选 — "nb"Language segment on the venue site. keyword_profilestring可选 "crypto-money""crypto-money"Which keyword list keeps an event from this source. max_pagesinteger可选 — 4How many programme pages to read. max_linksinteger可选 — 8How many event pages to open. max_cardsinteger可选 — 40How many event cards to read from the listing.
Newsletters
Published issues in newsletter/published/issues.json. Drafts under newsletter/issues/ are not part of this schema. Subscriber addresses are a private store and are not in this file.
文件 newsletter/published/issues.json · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 _how_tostring必填 — —
Issue
字段 类型 状态 允许的值 示例 说明 idstring必填 — "002"Issue id, such as 001. numberinteger必填 — 2Issue number. datestring必填 — "2026-10-12"Publication date, YYYY-MM-DD. periodarray of string必填 — ["2026-10-05", "2026-10-12"]Start and end dates the issue covers, YYYY-MM-DD. langstring必填 — "en"titlestring必填 — "Nordic Crypto #1: Binance under scrutiny and Sweden's crypto sanctions warning"English title. subtitlestring必填 — "The Nordic crypto news our editor approved from 5 to 12 October 2026."English subtitle. storiesinteger必填 — 7eventsinteger必填 — 0videoobject必填 — — Shared English video. video.mp4 is not committed; the build copies or downloads it. video.filestring必填 — "video.mp4"video.posterstring必填 — "thumbnail.png"video.subsstring必填 — "subs.vtt"video.durationinteger必填 — 131video.widthinteger必填 — 1920video.heightinteger必填 — 1080video.bytesinteger必填 — 1048576video.sha256string必填 — "0f8966a443883e2ecb1e51a64b0fa8f35039bd2ddb76997c1143b93a9a4061f8"video.urlstring必填 — — video.youtubestring可选 — "https://www.youtube.com/watch?v=yqN3QaMdHhM"title_i18nobject可选 — — Title in the Nordic site languages. title_i18n.nnstring必填 — — title_i18n.nbstring必填 — — title_i18n.svstring必填 — "Nordic Crypto #1: Binance granskas och Sveriges varning om krypto och sanktioner"title_i18n.dastring必填 — "Nordic Crypto #1: Binance under lup og Sveriges advarsel om krypto og sanktioner"title_i18n.fistring必填 — — title_i18n.isstring必填 — — subtitle_i18nobject可选 — — subtitle_i18n.nnstring必填 — — subtitle_i18n.nbstring必填 — — subtitle_i18n.svstring必填 — — subtitle_i18n.dastring必填 — — subtitle_i18n.fistring必填 — — subtitle_i18n.isstring必填 — —
There is no sponsors file. A sponsor is the sponsored field on an event: null or false when there is no sponsor, true when it is sponsored without a named sponsor, or the sponsor's name. Kaupr is never a sponsor.
文件 — · JSON Schema
页面
API
关系 sponsored → events one-to-many — The event names its sponsor
字段 类型 状态 允许的值 示例 说明 sponsorsboolean or string or null必填 — "Reese Legal"Null or false when there is no sponsor, true when it is sponsored without a named sponsor, or the sponsor's name. Never Kaupr.
Academia
Courses, student groups, publications and research groups in data/academia.json. The public page shows rows whose status is approved.
文件 data/academia.json · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 updatedstring必填 — "2026-10-14"source_liststring必填 — — works_cataloguestring必填 — "research/academia/works.json"rulesarray of string必填 — — Editorial rules for what may be listed. Prose, not a record.
Course
字段 类型 状态 允许的值 示例 说明 countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""NO"institutionstring必填 — "NTNU"codestring必填 — "TTM4195"Course code at the institution. namestring必填 — "Blockchain Technologies and Cryptographic Tools"levelstring必填 — "Master, 7.5 ECTS"termstring必填 — "Autumn 2026"aboutstring必填 — — urlstring必填 — "https://www.ntnu.edu/studies/courses/TTM4195"sourcestring必填 — "https://www.ntnu.edu/studies/courses/TTM4195"checkedstring必填 — "2026-10-03"statusstring必填 "pending" "approved" "out" "unverified""approved"approved is shown on the public page. editor_notestring必填 — —
Student group
字段 类型 状态 允许的值 示例 说明 countrystring必填 — "SE"namestring必填 — "KTH Blockchain Initiative"institutionstring必填 — "KTH"aboutstring必填 — — activitystring必填 — "none dated (only a \"© 2026\" footer)"activeboolean必填 — falseurlstring必填 — "https://kthbci.org"sourcestring必填 — "https://kthbci.org"checkedstring必填 — "2026-10-05"statusstring必填 "pending" "approved" "out""pending"editor_notestring必填 — —
Publication
字段 类型 状态 允许的值 示例 说明 countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""FI"titlestring必填 — "Crypto disruption: blockchain and digital currencies from a CFO’s perspective"authorsarray of string必填 — ["Severi Seppä"]institutionarray of string or string必填 — "JAMK University of Applied Sciences"yearinteger or null必填 — 2026typestring必填 "master" "phd" "paper" "conference" "project""phd"master, project, phd, paper or conference. venuestring必填 — "PhD dissertation"doistring or null必填 — "10.1016/j.ribaf.2024.102333"DOI when the catalogue gave one, otherwise null. urlstring必填 — "http://www.theseus.fi/bitstream/10024/922533/2/Seppa_Severi.pdf"dbstring必填 — "http://www.theseus.fi/bitstream/10024/922533/2/Seppa_Severi.pdf"db_namestring必填 — "openalex"sourcestring必填 — "http://www.theseus.fi/bitstream/10024/922533/2/Seppa_Severi.pdf"aboutstring可选 — — keywordsarray of string可选 — ["blockchains", "finance", "central bank digital currency"]checkedstring必填 — "2026-10-14"statusstring必填 "pending" "approved" "out""pending"editor_notestring必填 — — originstring必填 — "research/academia/works.json"title_enstring or null可选 — "The Minimum Hybrid Contract (MHC): Combining Legal and Blockchain Smart Contracts"English title when the original is in another language. languagestring or null可选 — "English"Language of the work, as given by the catalogue.
Research group
字段 类型 状态 允许的值 示例 说明 countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""NO"namestring必填 — "Blockchain-UiO"institutionstring必填 — "University of Oslo, Dept. of Informatics"aboutstring必填 — — urlstring必填 — "https://www.mn.uio.no/ifi/english/research/networks/blockchainlab/"sourcestring必填 — "https://www.mn.uio.no/ifi/english/research/networks/blockchainlab/"checkedstring必填 — "2026-10-05"statusstring必填 "pending" "approved" "out""approved"editor_notestring必填 — —
Books
Published books about bitcoin, crypto or blockchain by Nordic authors, or about the Nordic countries, in data/books.json. Titles stay in the original language. about is our one-line description in English.
文件 data/books.json · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 updatedstring必填 — "2026-10-08"notestring必填 — —
Book
字段 类型 状态 允许的值 示例 说明 idstring必填 — "svalbard-pengar"titlestring必填 — "Svalbard! Pengar!"Title in the original language, as printed. authorsarray of string必填 — ["Morten Søberg"]Names as printed. yearinteger必填 — 2022Year of the edition we checked. publisherstring必填 — "Spartacus"languagestring必填 "nn" "nb" "sv" "da" "fi" "is" "en""nn"nn, nb, sv, da, fi, is or en. countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""NO"The author's country, or the country the book is about. isbnstring or null必填 — "9788243014817"ISBN-13 when the catalogue gave one. aboutstring必填 — — sourcestring必填 — "https://www.nb.no/items/URN:NBN:no-nb_digibok_2022102848045"Catalogue or publisher page where the title, authors, year and publisher were checked. source_namestring必填 — "Nasjonalbiblioteket"more_sourcesarray of string可选 — ["https://www.finna.fi/Record/3amk.284126"]subtitlestring可选 — "kryptovaluta, «smarte kontrakter» og andre eiendeler på blokkjeden"author_rolestring可选 "editors""editors"editors for an edited volume, otherwise omitted.
Markets
Nordic exchange prices written at build time to /api/v1/markets.json. This is not a file in data/. Market data, not investment advice. quote is NOK, SEK, DKK or EUR. Nothing is converted between currencies.
文件 — · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 api_versionstring必填 — "1"namestring必填 — "Nordic Crypto"generated_atstring必填 — "2026-10-14T12:00:00+00:00"previewboolean必填 — falsekindstring必填 — "markets"disclaimerstring必填 — — Market data, not investment advice. sign_offstring必填 — "The Nordic Crypto team"not_investment_adviceboolean必填 — truequotesarray of string必填 — — NOK, SEK, DKK and EUR only. quote_notestring必填 — — aggregationobject of string必填 — — refreshobject必填 — — refresh.buildstring必填 — "Fetched when the site is built (./build.sh and ./publish.sh)."refresh.github_actionsstring必填 — — refresh.browserstring必填 — — refresh.browser_json_secondsinteger必填 — 900refresh.browser_exchange_secondsinteger必填 — 300refresh.actions_cronstring必填 — "17 * * * *"urlsobject必填 — — urls.github_pagesstring必填 — "https://nordiccrypto.no/api/v1/markets.json"urls.raw_githubusercontentstring必填 — — urls.custom_domainstring必填 — "https://nordiccrypto.no/api/v1/markets.json"urls.aggregated_github_pagesstring必填 — "https://nordiccrypto.no/api/v1/markets/aggregated.json"urls.aggregated_custom_domainstring必填 — "https://nordiccrypto.no/api/v1/markets/aggregated.json"urls.logosstring必填 — "https://nordiccrypto.no/api/v1/markets/logos/"skippedarray of object必填 — — skipped[].idstring必填 — "safello"skipped[].namestring必填 — "Safello"skipped[].countrystring必填 — "SE"skipped[].reasonstring必填 — "No public unauthenticated ticker API was found."countinteger必填 — 1aggregated_countinteger必填 — 1
Ticker
字段 类型 状态 允许的值 示例 说明 idstring必填 — "firi:BTC-NOK"symbolstring必填 — "BTC-NOK"exchange_symbolstring必填 — "BTCNOK"basestring必填 — "BTC"quotestring必填 "NOK" "SEK" "DKK" "EUR""NOK"laststring必填 — "100.5"bidstring必填 — "100"askstring必填 — "101"exchangeobject必填 — — exchange.idstring必填 — "firi"exchange.namestring必填 — "Firi"exchange.countrystring必填 — "NO"fetched_atstring必填 — "2026-10-14T12:00:00+00:00"source_urlstring必填 — "https://api.firi.com/v2/markets/BTCNOK"volume_basestring必填 — "1"volume_quotenull必填 — — volume_base_24hnull必填 — — volume_quote_24hnull必填 — — highstring必填 — "101"lowstring必填 — "99"change_pctstring必填 — "0.1"exchange_timestring or null可选 — — Timestamp from the exchange payload, when it sends one.
Aggregate
字段 类型 状态 允许的值 示例 说明 symbolstring必填 — "BTC-NOK"basestring必填 — "BTC"namestring必填 — "Bitcoin"quotestring必填 "NOK" "SEK" "DKK" "EUR""NOK"currencystring必填 "NOK" "SEK" "DKK" "EUR""NOK"updated_atstring必填 — "2026-10-14T12:00:00+00:00"oldest_fetched_atstring必填 — "2026-10-14T12:00:00+00:00"exchange_countinteger必填 — 1methodstring必填 "mean_last" "mean_bid_ask_mid""mean_last"method_notestring必填 — — pricestring必填 — "100.5"minstring必填 — "100.5"maxstring必填 — "100.5"laststring必填 — "100.5"last_countinteger必填 — 1last_minstring必填 — "100.5"last_maxstring必填 — "100.5"midstring必填 — "100.5"mid_countinteger必填 — 1mid_minstring必填 — "100.5"mid_maxstring必填 — "100.5"vwapnull必填 — — volume_used_for_priceboolean必填 — falsevolumeobject必填 — — volume.unitsobject必填 — — volume.units.volume_basestring必填 — "base asset; window not named by the exchange"volume.units.volume_quotestring必填 — "quote currency; window not named by the exchange"volume.units.volume_base_24hstring必填 — "base asset; last 24 hours, as named by the exchange"volume.units.volume_quote_24hstring必填 — "quote currency; last 24 hours, as named by the exchange"volume.volume_basestring必填 — "1"volume.volume_base_exchangesinteger必填 — 1volume.volume_quotenull必填 — — volume.volume_quote_exchangesinteger必填 — 0volume.volume_base_24hnull必填 — — volume.volume_base_24h_exchangesinteger必填 — 0volume.volume_quote_24hnull必填 — — volume.volume_quote_24h_exchangesinteger必填 — 0contributorsarray of object必填 — — contributors[].exchange_idstring必填 — "firi"contributors[].namestring必填 — "Firi"contributors[].countrystring必填 — "NO"contributors[].laststring必填 — "100.5"contributors[].bidstring必填 — "100"contributors[].askstring必填 — "101"contributors[].midstring必填 — "100.5"contributors[].included_in_lastboolean必填 — truecontributors[].included_in_midboolean必填 — truecontributors[].volume_basestring必填 — "1"contributors[].volume_quotenull必填 — — contributors[].volume_base_24hnull必填 — — contributors[].volume_quote_24hnull必填 — — contributors[].fetched_atstring必填 — "2026-10-14T12:00:00+00:00"contributors[].source_urlstring必填 — "https://api.firi.com/v2/markets/BTCNOK"contributors[].included_in_priceboolean必填 — truelogo_urlstring必填 — "https://nordiccrypto.no/api/v1/markets/logos/btc.svg"logo_url_custom_domainstring必填 — "https://nordiccrypto.no/api/v1/markets/logos/btc.svg"logo_pathstring必填 — "api/v1/markets/logos/btc.svg"logoobject of string必填 — —
Exchange
字段 类型 状态 允许的值 示例 说明 idstring必填 — "firi"namestring必填 — "Firi"countrystring必填 — "NO"websitestring必填 — "https://firi.com/"docs_urlstring必填 — "https://developers.firi.com/"source_urlstring必填 — "https://api.firi.com/v2/markets"corsboolean必填 — truenotestring必填 — — statusstring必填 "ok" "error""ok"fetched_atstring必填 — "2026-10-14T17:10:34+00:00"errorstring or null必填 — "fixture"ticker_countinteger必填 — 1
Profiles
Public profile links in data/profiles.json, keyed by who's who id. Each link needs a source_url that shows it belongs to that person or organisation. status published is what the site shows.
文件 data/profiles.json · JSON Schema
页面
API
关系 entity id (object key) → orgchart many-to-one
文件中的字段
字段 类型 状态 允许的值 示例 说明 _how_tostring必填 — —
Link
字段 类型 状态 允许的值 示例 说明 kindstring必填 "github" "linkedin" "wikidata" "wikipedia" "x""wikipedia"wikipedia, wikidata, x, linkedin or github. labelstring必填 — "Wikipedia (en)"urlstring必填 — "https://en.wikipedia.org/wiki/Erik_Thed%C3%A9en"The public profile. source_urlstring必填 — "https://www.wikidata.org/wiki/Q6207027"Page that shows the link belongs to this person or organisation. statusstring必填 "pending" "published""published"published is shown. pending waits for the editor. reviewedstring可选 — — notestring可选 — — addedstring可选 — "2026-10-09 (open-source developers research)"
Who's who
People and organisations in data/orgchart.json, the relations between them, and a short regulation note per country. status published is what the public page and the API show.
文件 data/orgchart.json · JSON Schema
页面
API
关系 relations[].from → orgchart many-to-one relations[].to → orgchart many-to-one entities[].talk_ids → talks many-to-many id → profiles one-to-many id → developers one-to-many — whoswho_id and org_id on a developer
文件中的字段
字段 类型 状态 允许的值 示例 说明 updatedstring必填 — "2026-10-03"no_export_datestring必填 — "03.10.2026"caveatsarray of string必填 — —
Entity
字段 类型 状态 允许的值 示例 说明 idstring必填 — "stortinget-finanskomiteen"Stable who's who id. namestring必填 — "Storting (parliament) – Standing Committee on Finance"typestring必填 "person" "organisation""organisation"person or organisation. sectorstring必填 "private" "public""public"private or public. countrystring or null必填 "NO" "SE" "DK" "FI" "IS" "NORDIC" "EU" "FO" "GL" "AX" null"NO"descriptionstring or null必填 — — sourcesarray of object必填 — — Pages the row was checked against. sources[].urlstring必填 — "https://www.regjeringen.no/no/dep/fin/id216/"sources[].titlestring必填 — "Stortinget"sources[].source_namestring必填 — "Stortinget"sources[].datestring必填 — "03.10.2026"imageobject or null必填 — — image.filestring必填 — "assets/img/people/tuva-moflag.jpg"image.source_pagestring必填 — "https://commons.wikimedia.org/wiki/File:Tuva_Moflag.jpg"image.authorstring必填 — "Johannes Dalen Giske"image.licensestring必填 — "CC BY-SA 4.0"image.license_urlstring必填 — "https://creativecommons.org/licenses/by-sa/4.0"image.originstring必填 — "Wikimedia Commons"image.reviewstring必填 — "ok"image.notestring可选 — — image.checkedstring可选 — "2026-10-03"image.reviewedstring可选 — — caveatboolean可选 — falseoriginstring必填 — "Kryptonytt industry map (approved for Norway)"groupstring or null可选 — "Parliament & government"statusstring必填 "pending" "published" "rejected""published"published is shown. rejected stays in the file and is left off the public page. logoobject可选 — — logo.sourcestring必填 — "Wikimedia Commons"logo.source_urlstring必填 — "https://www.finanstilsynet.no/Content/Favicons/apple-touch-icon-57x57.png"logo.licensestring可选 — "Public domain"logo.authorstring or null可选 — "Worldlydev"logo.filestring必填 — "assets/img/logos/stortinget-finanskomiteen.svg"logo.wikidatastring可选 — "Q109016"logo.fetchedstring必填 — — logo.reviewstring必填 — "ok"logo.reviewedstring可选 — — logo.rasterstring可选 — "assets/img/logos/stortinget-finanskomiteen.png"logo.pagestring可选 — "https://www.finanstilsynet.no"logo.kindstring可选 — "touch"logo.notestring可选 — — logo.historyarray of object可选 — — logo.history[].reviewstring必填 — "rejected"logo.history[].reasonstring必填 — "editor: outdated logo"logo.history[].datestring必填 — "2026-10-04"orgstring or null可选 — "stortinget-finanskomiteen"rolestring or null可选 — "Chair (Labour)"profile_urlstring可选 — "https://www.regjeringen.no/no/dep/fin/id216/"profilesarray of object可选 — — profiles[].kindstring必填 — "wikipedia"profiles[].labelstring必填 — "Wikipedia (en)"profiles[].urlstring必填 — "https://en.wikipedia.org/wiki/Tuva_Moflag"profiles[].source_urlstring必填 — "https://www.wikidata.org/wiki/Q25427910"profiles[].statusstring必填 — "published"profiles[].reviewedstring可选 — — profiles[].notestring可选 — — profiles[].addedstring可选 — "2026-10-09 (open-source developers research)"talk_idsarray of string可选 — ["yt-gn50NxhPk-0"]talksarray of object可选 — — talks[].idstring必填 — "yt-gn50NxhPk-0"talks[].titlestring必填 — "Hvorfor og når får vi digitale sentralbankpenger og kryptovaluta?"talks[].video_urlstring必填 — "https://www.youtube.com/watch?v=gn50NxhPk-0"talks[].event_idstring可选 — "92041cfcb99c"talks[].datestring可选 — "2016-04-19"affiliationsarray of object可选 — — affiliations[].talk_idstring必填 — "yt-RTcqp3MqRtU"affiliations[].organisationstring必填 — "NBX"affiliations[].source_urlstring必填 — "https://www.youtube.com/watch?v=RTcqp3MqRtU&hl=en"affiliations[].source_namestring必填 — "Nordic Blockchain Association"affiliations[].retrieved_atstring必填 — "2026-10-07T23:30:36+00:00"affiliations[].rolestring可选 — "PhD Student"affiliations[].event_idstring可选 — "92041cfcb99c"affiliations[].datestring可选 — "2016-04-19"urlstring or null可选 — "https://www.fi.se"aliasesarray of string可选 — ["BTCX", "Goobit AB", "Goobit Group AB"]reviewstring可选 — "pending"viastring可选 — — addedstring可选 — "2026-10-03"event_idsarray of string可选 — ["92041cfcb99c"]from_talksboolean可选 — true
Relation
字段 类型 状态 允许的值 示例 说明 idstring必填 — "r-greenmerc-northcrypto"fromstring必填 — "greenmerc"Entity id. tostring必填 — "northcrypto"Entity id. typestring必填 "collaboration" "licensed" "partner" "refused" "supervises" "uses licence""uses licence"collaboration, licensed, partner, refused, supervises or uses licence. labelstring必填 — "Uses Northcrypto's MiCA licence for Trijo customers"sourcesarray of object必填 — — sources[].urlstring必填 — "https://www.meetup.com/swedish-bitcoin-meetups/"sources[].titlestring必填 — "GreenMerc trekker MiCA-klage og bruker Northcryptos lisens i Sverige"sources[].source_namestring必填 — "Kaupr"sources[].datestring必填 — "2026-10-03"statusstring必填 "pending" "published" "rejected""published"
Regulation note
字段 类型 状态 允许的值 示例 说明 countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""NO"micastring必填 — — lawstring必填 — "Lov om kryptoeiendeler (Crypto-Assets Act, 27 May 2025 no. 20)."regulatorstring必填 — — statusstring必填 — — sourcesarray of object必填 — — sources[].urlstring必填 — "https://lovdata.no/dokument/NL/lov/2025-05-27-20"sources[].titlestring必填 — "Lov om kryptoeiendeler"sources[].source_namestring必填 — "Lovdata"sources[].datestring必填 — "2026-10-03"
Talks
Public talks on bitcoin, cryptocurrencies and blockchain in the Nordic countries, in data/talks.json. description is ours. The other details come from the platform at source_url. A field the platform did not state is null.
文件 data/talks.json · JSON Schema
页面
API
关系 event_id → events many-to-one — Null when the talk could not be dated or placedspeaker_ids → orgchart many-to-many
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — —
Talk
字段 类型 状态 允许的值 示例 说明 idstring必填 — "yt-ZJHTEXcyePQ"video_urlstring必填 — "https://www.youtube.com/watch?v=ZJHTEXcyePQ"platformstring必填 "youtube" "vimeo" "university" "other""youtube"youtube, vimeo, university or other. titlestring必填 — "Nordic Blockchain Conference 2026: Market Abuse in Web3"speakersarray of string必填 — ["Disha L. Dinesha"]event_namestring or null必填 — "Nordic Blockchain Conference 2026"event_urlstring or null必填 — "https://energy-markets-school.dk/"calendar_event_idstring or null必填 — "30569783bb01"event_idstring or null必填 — "30569783bb01"Calendar event id when the talk is linked. Same value as calendar_event_id. unlink_reasonstring or null必填 — "the video page did not state the day"Why the talk is not linked to an event. Null when event_id is set. citystring or null必填 — "Copenhagen"countrystring or null必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX" null"DK"datestring or null必填 — "2020-01-16"publishedstring必填 — "2026-08-24"durationstring or null必填 — "PT11M38S"ISO 8601 duration when the platform states a length. languagenull必填 — — channelstring必填 — "DAAvern"descriptionstring必填 — — Short neutral summary in our own words. source_urlstring必填 — "https://www.youtube.com/watch?v=ZJHTEXcyePQ&hl=en"retrieved_atstring必填 — "2026-10-07T20:57:16Z"added_atstring必填 — "2026-10-07T20:57:16Z"embedboolean必填 — trueTrue when the platform's oEmbed response includes an official player. speaker_idsarray of string必填 — ["spk-disha-l-dinesha"]
Developers
Open-source developers in data/developers.json. Only public professional information: no addresses and no private details. The public page shows status published.
文件 data/developers.json · JSON Schema
页面
API
关系
文件中的字段
字段 类型 状态 允许的值 示例 说明 updatedstring必填 — "2026-10-09"_how_tostring必填 — —
Developer
字段 类型 状态 允许的值 示例 说明 idstring必填 — "torkel-rogstad"namestring必填 — "Torkel Rogstad"Name as shown on the public code profile. rolestring必填 — "Co-founder; developer"orgstring or null必填 — "Bare Bitcoin"org_idstring or null必填 — "bare-bitcoin"whoswho_idstring or null必填 — "torkel-rogstad"countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""NO"profilesarray of object必填 — — profiles[].kindstring必填 — "github"profiles[].urlstring必填 — "https://github.com/torkelrogstad"profiles[].loginstring必填 — "torkelrogstad"notablearray of object必填 — — Up to three public repos or contributions. notable[].kindstring必填 "repo" "contrib""contrib"notable[].projectstring可选 — "lightningnetwork/lnd"notable[].hoststring可选 — "github"notable[].urlstring必填 — "https://github.com/torkelrogstad/lnd-fun"notable[].commitsinteger or null可选 — 11notable[].merged_prsinteger or null可选 — 4notable[].namestring可选 — "torkelrogstad/lnd-fun"notable[].starsinteger可选 — 6notable[].languagestring or null可选 — "JavaScript"notable[].descriptionstring or null可选 — — notable[].last_pushstring可选 — "2018-09-10"nordic_sourceobject必填 — — Where the Nordic link was checked. nordic_source.urlstring必填 — "https://github.com/torkelrogstad"nordic_source.notestring必填 — — checkedstring必填 — "2026-10-09"YYYY-MM-DD the profile and counts were checked. statusstring必填 "pending" "published""pending"published is on the public page. pending waits for the editor. reviewstring必填 "editor" "ready_for_owner""editor"notestring可选 — —
Illustrations
Licensed pictures that may be assigned to a story, in data/illustrations.json. kind is original, commons or official-press. A newspaper photograph is never stored here.
文件 data/illustrations.json · JSON Schema
页面
API
关系 assign[].id → news many-to-many — Chosen from topics, then country
文件中的字段
字段 类型 状态 允许的值 示例 说明 _policystring必填 — — fallbackstring必填 — "original-crypto"Picture id used when no topic or country rule matches. countryobject必填 — — country.NOstring必填 — "commons-no"country.SEstring必填 — "commons-se"country.DKstring必填 — "commons-dk"country.FIstring必填 — "commons-fi"country.ISstring必填 — "commons-is"assignarray of object必填 — — Topic rules. The first match wins. assign[].topicsarray of string可选 — ["crime"]assign[].idstring必填 — "commons-court"assign[].countriesarray of string可选 — ["SE"]assign[].whystring可选 — —
Picture
字段 类型 状态 允许的值 示例 说明 idstring必填 — "original-bitcoin"kindstring必填 "original" "commons" "official-press""original"original (drawn for Nordic Crypto), commons (Wikimedia Commons) or official-press. filestring必填 — "assets/img/illustrations/original-bitcoin.webp"altstring必填 — "Abstract gold disc. Nordic Crypto illustration, not a photograph and not a logo."sourcestring必填 — "Nordic Crypto"authorstring必填 — "Nordic Crypto"licensestring必填 — "CC0 1.0"Licence name. license_urlstring必填 — "https://creativecommons.org/publicdomain/zero/1.0/"urlstring必填 — "https://cryptonordic.no/ethics/"The source page for the credit. widthinteger必填 — 960heightinteger必填 — 540modificationsstring可选 — "Cropped by Nordic Crypto to leave out a person at the edge of the frame."termsstring可选 — —
Portraits
Portrait files for the who's who, keyed by entity id, in data/images.json. Each record names the file, the author and the licence.
文件 data/images.json · JSON Schema
页面
API
关系 entity id (object key) → orgchart many-to-one
Portrait
字段 类型 状态 允许的值 示例 说明 filestring必填 — "assets/img/people/tuva-moflag.jpg"Path in the repo. source_pagestring必填 — "https://commons.wikimedia.org/wiki/File:Tuva_Moflag.jpg"Page the picture was taken from. authorstring必填 — "Johannes Dalen Giske"licensestring必填 — "CC BY-SA 4.0"Licence name, such as CC BY-SA 4.0. license_urlstring必填 — "https://creativecommons.org/licenses/by-sa/4.0"originstring必填 — "Wikimedia Commons"
Outlet logos
Outlet marks in assets/img/logos/logos.json, keyed by id. review ok is what the public API shows. A missing review counts as ok. pending is included only in a preview build. rejected is never shown. The marks are the publishers' trademarks, shown only to identify the source of a headline.
文件 assets/img/logos/logos.json · JSON Schema
API
关系 id (object key) → sources one-to-one
文件中的字段
字段 类型 状态 允许的值 示例 说明 _how_tostring必填 — — _how_to_sourcesstring必填 — — _source_aliasobject of string必填 — — Source id to logo key, when the who's who id differs from the news source id.
Logo
字段 类型 状态 允许的值 示例 说明 sourcestring可选 — "Wikimedia Commons"source_urlstring必填 — "https://www.finanstilsynet.no/Content/Favicons/apple-touch-icon-57x57.png"Where the file was fetched. licensestring可选 — "Public domain"authorstring or null可选 — "Worldlydev"filestring可选 — "assets/img/logos/stortinget-finanskomiteen.svg"Path of the original file, SVG or WebP. wikidatastring可选 — "Q109016"fetchedstring必填 — — reviewstring必填 "pending" "ok" "rejected""ok"pending, ok or rejected. The public build shows ok, and a missing review counts as ok. reviewedstring可选 — — rasterstring可选 — "assets/img/logos/stortinget-finanskomiteen.png"PNG rendering of an SVG, when one was made. pagestring可选 — "https://www.finanstilsynet.no"kindstring可选 — "touch"notestring可选 — — historyarray of object可选 — — history[].reviewstring必填 — "rejected"history[].reasonstring必填 — "editor: outdated logo"history[].datestring必填 — "2026-10-04"reasonstring可选 — "editor: rejected (shows the owner Bitdeer's logo); left blank"usestring可选 — "nominative"source_idstring可选 — "e24"outletstring可选 — "E24"license_urlstring可选 — "https://creativecommons.org/licenses/by/4.0"same_asstring可选 — "nbx"
Changelog
Site changes in changelog.json (new pages, sections and features, not the daily news). review pending keeps an entry off the public page until it has a date.
文件 changelog.json · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 _how_tostring必填 — — launch_datestring必填 — "2026-10-03"Set on the first publish. Entries with date launch use this day.
Entry
字段 类型 状态 允许的值 示例 说明 idstring必填 — "onion-tip-page"datestring or null必填 — "2026-10-07"YYYY-MM-DD, launch, or null while the entry is still pending. reviewstring可选 "pending""pending"pending keeps the entry off the public page. titlestring必填 — "Tor onion tip page"descriptionstring必填 — — i18nobject必填 — — title and description in nn, nb, sv, da, fi and is. i18n.nnobject必填 — — i18n.nn.titlestring必填 — "Tor-onion-tipsside"i18n.nn.descriptionstring必填 — — i18n.nbobject必填 — — i18n.nb.titlestring必填 — "Tor-onion-tipsside"i18n.nb.descriptionstring必填 — — i18n.svobject可选 — — i18n.sv.titlestring必填 — "Tor-onion-tipssida"i18n.sv.descriptionstring必填 — — i18n.daobject可选 — — i18n.da.titlestring必填 — "Tor-onion-tipside"i18n.da.descriptionstring必填 — — i18n.fiobject可选 — — i18n.fi.titlestring必填 — "Tor-onion-vinkkisivu"i18n.fi.descriptionstring必填 — — i18n.isobject可选 — — i18n.is.titlestring必填 — "Tor-onion-ábendingasíða"i18n.is.descriptionstring必填 — —
Rules map
The regulation map behind /rules/, in rules.json. Every node points at a primary source. review approved is what the public page shows.
文件 rules.json · JSON Schema
页面
API
字段 类型 状态 允许的值 示例 说明 _notestring必填 — — reviewstring必填 "pending" "approved""approved"approved is shown. pending leaves the public page as a short placeholder. checkedstring必填 — "2026-10-04"YYYY-MM-DD the claims were last checked. sourcesobject必填 — — Primary sources, keyed by id. sources.micaobject必填 — — sources.mica.urlstring必填 — "https://eur-lex.europa.eu/eli/reg/2023/1114/oj/eng"sources.mica.titlestring必填 — "Regulation (EU) 2023/1114 (MiCA), Art. 149 and closing formula"sources.mica.publisherstring必填 — "EUR-Lex"sources.tfrobject必填 — — sources.tfr.urlstring必填 — "https://eur-lex.europa.eu/eli/reg/2023/1113/oj/eng"sources.tfr.titlestring必填 — "Regulation (EU) 2023/1113 (transfer of funds and certain crypto-assets), Art. 40"sources.tfr.publisherstring必填 — "EUR-Lex"sources.amlrobject必填 — — sources.amlr.urlstring必填 — "https://eur-lex.europa.eu/eli/reg/2024/1624/oj/eng"sources.amlr.titlestring必填 — "Regulation (EU) 2024/1624 (AMLR), Art. 90"sources.amlr.publisherstring必填 — "EUR-Lex"sources.doraobject必填 — — sources.dora.urlstring必填 — "https://eur-lex.europa.eu/eli/reg/2022/2554/oj/eng"sources.dora.titlestring必填 — "Regulation (EU) 2022/2554 (DORA), Art. 64"sources.dora.publisherstring必填 — "EUR-Lex"sources.esmaobject必填 — — sources.esma.urlstring必填 — — sources.esma.titlestring必填 — "Markets in Crypto-Assets Regulation (MiCA) – interim MiCA register"sources.esma.publisherstring必填 — "ESMA"sources.is_actobject必填 — — sources.is_act.urlstring必填 — "https://www.althingi.is/altext/stjt/2025.101.html"sources.is_act.titlestring必填 — "Lög nr. 101/2025 um markaði fyrir sýndareignir (Art. 1, 3 and 16)"sources.is_act.publisherstring必填 — "Alþingi"sources.no_actobject必填 — — sources.no_act.urlstring必填 — "https://lovdata.no/dokument/NL/lov/2025-05-27-20"sources.no_act.titlestring必填 — "Lov om kryptoeiendeler (kryptoeiendelsloven), LOV-2025-05-27-20, § 2"sources.no_act.publisherstring必填 — "Lovdata"sources.se_actobject必填 — — sources.se_act.urlstring必填 — — sources.se_act.titlestring必填 — — sources.se_act.publisherstring必填 — "Sveriges riksdag"sources.dk_actobject必填 — — sources.dk_act.urlstring必填 — "https://www.retsinformation.dk/eli/lta/2024/1013"sources.dk_act.titlestring必填 — — sources.dk_act.publisherstring必填 — "Retsinformation"sources.fi_actobject必填 — — sources.fi_act.urlstring必填 — "https://www.finlex.fi/fi/lainsaadanto/2024/402"sources.fi_act.titlestring必填 — — sources.fi_act.publisherstring必填 — "Finlex"sources.fi_fivaobject必填 — — sources.fi_fiva.urlstring必填 — — sources.fi_fiva.titlestring必填 — "Crypto-asset service providers in Finland must be authorised in the EU"sources.fi_fiva.publisherstring必填 — "Finanssivalvonta"sources.no_amlobject必填 — — sources.no_aml.urlstring必填 — "https://lovdata.no/dokument/NL/lov/2018-06-01-23"sources.no_aml.titlestring必填 — — sources.no_aml.publisherstring必填 — "Lovdata"sources.se_amlobject必填 — — sources.se_aml.urlstring必填 — — sources.se_aml.titlestring必填 — — sources.se_aml.publisherstring必填 — "Sveriges riksdag"sources.fi_amlobject必填 — — sources.fi_aml.urlstring必填 — "https://www.finlex.fi/fi/lainsaadanto/2017/444"sources.fi_aml.titlestring必填 — — sources.fi_aml.publisherstring必填 — "Finlex"sources.is_amlobject必填 — — sources.is_aml.urlstring必填 — "https://www.althingi.is/lagas/nuna/2018140.html"sources.is_aml.titlestring必填 — — sources.is_aml.publisherstring必填 — "Alþingi"sources.dk_ftobject必填 — — sources.dk_ft.urlstring必填 — — sources.dk_ft.titlestring必填 — — sources.dk_ft.publisherstring必填 — "Finanstilsynet (DK)"sources.fi_fiu_actobject必填 — — sources.fi_fiu_act.urlstring必填 — "https://www.finlex.fi/fi/lainsaadanto/2017/445"sources.fi_fiu_act.titlestring必填 — — sources.fi_fiu_act.publisherstring必填 — "Finlex"sources.dk_fiuobject必填 — — sources.dk_fiu.urlstring必填 — "https://hvidvask.dk/"sources.dk_fiu.titlestring必填 — "Hvidvasksekretariatet – National enhed for Særlig Kriminalitet (NSK)"sources.dk_fiu.publisherstring必填 — "Hvidvasksekretariatet"sources.dk_taxobject必填 — — sources.dk_tax.urlstring必填 — — sources.dk_tax.titlestring必填 — "Skat på krypto: Kend reglerne, så du undgår et skattesmæk"sources.dk_tax.publisherstring必填 — "Skattestyrelsen (skat.dk)"sources.dk_tax_jvobject必填 — — sources.dk_tax_jv.urlstring必填 — "https://info.skat.dk/data.aspx?oid=2395613"sources.dk_tax_jv.titlestring必填 — — sources.dk_tax_jv.publisherstring必填 — "Skattestyrelsen (info.skat.dk)"sources.no_taxobject必填 — — sources.no_tax.urlstring必填 — — sources.no_tax.titlestring必填 — "Virtuelle eiendeler (kryptovaluta med mer)"sources.no_tax.publisherstring必填 — "Skatteetaten"sources.se_taxobject必填 — — sources.se_tax.urlstring必填 — — sources.se_tax.titlestring必填 — "Kryptovalutor"sources.se_tax.publisherstring必填 — "Skatteverket"sources.fi_taxobject必填 — — sources.fi_tax.urlstring必填 — "https://www.vero.fi/henkiloasiakkaat/omaisuus/sijoitukset/virtuaalivaluutat/"sources.fi_tax.titlestring必填 — "Kryptovarat"sources.fi_tax.publisherstring必填 — "Verohallinto (vero.fi)"sources.is_taxobject必填 — — sources.is_tax.urlstring必填 — "https://www.skatturinn.is/einstaklingar/skattskylda/rafmynt/"sources.is_tax.titlestring必填 — "Rafmynt (no special provisions; general tax rules apply)"sources.is_tax.publisherstring必填 — "Skatturinn"euobject必填 — — EU institutions, acts and agencies. eu.institutionsarray of object必填 — — eu.institutions[].namestring必填 — "European Commission"eu.institutions[].rolestring必填 — "propose"eu.institutions[].srcstring必填 — "mica"eu.actsarray of object必填 — — eu.acts[].namestring必填 — "MiCA"eu.acts[].refstring必填 — "Regulation (EU) 2023/1114"eu.acts[].appliesstring必填 — "2024-12-30"eu.acts[].note_keystring必填 — "act_mica"eu.acts[].srcstring必填 — "mica"eu.agenciesarray of object必填 — — eu.agencies[].namestring必填 — "ESMA"eu.agencies[].orgstring必填 — "esma"eu.agencies[].note_keystring必填 — "ag_esma"eu.agencies[].srcstring必填 — "mica"eu.agencies[].src2string可选 — "esma"countriesobject必填 — — One object per Nordic country. countries.SEobject必填 — — countries.SE.routestring必填 — "eu"countries.SE.lawstring必填 — "Lag (2024:1159)"countries.SE.law_srcstring必填 — "se_act"countries.SE.parliamentstring必填 — "Riksdagen"countries.SE.ministryobject必填 — — countries.SE.ministry.namestring必填 — "Finansdepartementet"countries.SE.ministry.orgstring必填 — "se-finansdepartementet"countries.SE.supervisorobject必填 — — countries.SE.supervisor.namestring必填 — "Finansinspektionen"countries.SE.supervisor.orgstring必填 — "se-fi"countries.SE.supervisor.srcstring必填 — "se_act"countries.SE.enforcearray of object必填 — — countries.DKobject必填 — — countries.DK.routestring必填 — "eu"countries.DK.lawstring必填 — "Lov om finansiel virksomhed § 332 c"countries.DK.law_srcstring必填 — "dk_act"countries.DK.parliamentstring必填 — "Folketinget"countries.DK.ministryobject必填 — — countries.DK.ministry.namestring必填 — "Erhvervsministeriet"countries.DK.ministry.orgstring必填 — "dk-erhvervsministeriet"countries.DK.supervisorobject必填 — — countries.DK.supervisor.namestring必填 — "Finanstilsynet"countries.DK.supervisor.orgstring必填 — "dk-finanstilsynet"countries.DK.supervisor.srcstring必填 — "dk_act"countries.DK.supervisor.src2string必填 — "dk_ft"countries.DK.enforcearray of object必填 — — countries.DK.note5string必填 — "r12_dk"countries.DK.note5_srcarray of string必填 — ["dk_fiu", "dk_tax", "dk_tax_jv"]countries.FIobject必填 — — countries.FI.routestring必填 — "eu"countries.FI.lawstring必填 — "Laki 402/2024"countries.FI.law_srcstring必填 — "fi_act"countries.FI.parliamentstring必填 — "Eduskunta"countries.FI.ministryobject必填 — — countries.FI.ministry.namestring必填 — "Valtiovarainministeriö"countries.FI.ministry.orgstring必填 — "fi-vm"countries.FI.supervisorobject必填 — — countries.FI.supervisor.namestring必填 — "Finanssivalvonta"countries.FI.supervisor.orgstring必填 — "fi-fiva"countries.FI.supervisor.srcstring必填 — "fi_act"countries.FI.supervisor.src2string必填 — "fi_fiva"countries.FI.enforcearray of object必填 — — countries.FI.note4string必填 — "r13_fi"countries.FI.note4_srcarray of string必填 — ["fi_act"]countries.FI.note5string必填 — "r14_fi"countries.FI.note5_srcarray of string必填 — ["fi_aml", "fi_fiu_act"]countries.NOobject必填 — — countries.NO.routestring必填 — "eea"countries.NO.lawstring必填 — "Lov om kryptoeiendeler (LOV-2025-05-27-20)"countries.NO.law_srcstring必填 — "no_act"countries.NO.parliamentstring必填 — "Stortinget"countries.NO.parliament_orgstring必填 — "stortinget-finanskomiteen"countries.NO.ministryobject必填 — — countries.NO.ministry.namestring必填 — "Finansdepartementet"countries.NO.ministry.orgstring必填 — "finansdepartementet"countries.NO.supervisorobject必填 — — countries.NO.supervisor.namestring必填 — "Finanstilsynet"countries.NO.supervisor.orgstring必填 — "finanstilsynet"countries.NO.supervisor.srcstring必填 — "no_act"countries.NO.enforcearray of object必填 — — countries.ISobject必填 — — countries.IS.routestring必填 — "eea"countries.IS.lawstring必填 — "Lög nr. 101/2025"countries.IS.law_srcstring必填 — "is_act"countries.IS.parliamentstring必填 — "Alþingi"countries.IS.ministryobject必填 — — countries.IS.ministry.namestring必填 — "Fjármála- og efnahagsráðuneytið"countries.IS.ministry.orgstring必填 — "is-fjr"countries.IS.supervisorobject必填 — — countries.IS.supervisor.namestring必填 — "Seðlabanki Íslands – Fjármálaeftirlit"countries.IS.supervisor.orgstring必填 — "is-fme"countries.IS.supervisor.srcstring必填 — "is_act"countries.IS.enforcearray of object必填 — — eeaobject必填 — — eea.decisionstring必填 — "EEA Joint Committee Decision No 41/2025 (20 February 2025)"eea.srcstring必填 — "is_act"approvedstring必填 — —
Visitor stats
Aggregate visits and page views in data/stats.json, from Cloudflare Web Analytics. No IP addresses, user agents, paths, referrers or countries. Days are UTC. Weeks are ISO weeks.
文件 data/stats.json · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 api_versionstring必填 — "1"namestring必填 — "Nordic Crypto"generated_atnull必填 — — previewboolean必填 — falsesourcestring必填 — "Cloudflare Web Analytics"statusstring必填 "pending" "ok""pending"ok when daily rows exist, otherwise pending. timezonestring必填 "UTC""UTC"notestring必填 — — schemainteger必填 — 1Integer schema version of the stats document. first_datenull必填 — — last_datenull必填 — — updated_atnull必填 — —
Day
字段 类型 状态 允许的值 示例 说明 datestring必填 — "2026-10-01"UTC day, YYYY-MM-DD. visitsinteger必填 — 0pageviewsinteger必填 — 0partialboolean可选 — — True while that day is still running.
Week
字段 类型 状态 允许的值 示例 说明 weekstring必填 — "2026-W41"ISO week, YYYY-Www. startstring必填 — "2026-10-05"endstring必填 — "2026-10-11"daysinteger必填 — — visitsinteger必填 — — pageviewsinteger必填 — — partialboolean可选 — —
Month
字段 类型 状态 允许的值 示例 说明 monthstring必填 — "2026-10"Calendar month, YYYY-MM. daysinteger必填 — — visitsinteger必填 — — pageviewsinteger必填 — — partialboolean可选 — —
Crowdfunding
The closed crowdfunding pilot in data/crowdfunding.json. Nordic Crypto does not hold keys or funds. The file has no donor data and no balances. demo true marks an example, not a live campaign.
文件 data/crowdfunding.json · JSON Schema
页面
API
文件中的字段
字段 类型 状态 允许的值 示例 说明 _docstring必填 — — pilotobject必填 — — pilot.statusstring必填 "closed" "open""closed"closed or open. The pilot is closed. pilot.max_projectsinteger必填 — 5pilot.apply_emailnull必填 — — pilot.report_emailnull必填 — —
Campaign
字段 类型 状态 允许的值 示例 说明 idstring必填 — "demo-example"demoboolean必填 — trueTrue for an example with invalid addresses. titlestring必填 — "Example campaign (demo, not live)"ownerstring必填 — "Example project owner"owner_countrystring必填 "NO" "SE" "DK" "FI" "IS" "NORDIC" "EU" "FO" "GL" "AX""NO"owner_is_traderboolean必填 — falsedescriptionstring必填 — — rewardstring必填 — — goalobject必填 — — goal.bchnumber必填 — 2.5goal.nexainteger必填 — 100000000goal.nok_approxnull必填 — — addressesobject必填 — — The project's own addresses. Nordic Crypto does not hold them. addresses.bchstring必填 — "bitcoincash:DEMO-NOT-A-REAL-ADDRESS"addresses.nexastring必填 — "nexa:DEMO-NOT-A-REAL-ADDRESS"deadlinestring必填 — "2026-12-31"kyc_verifiedboolean必填 — falselinksarray of object必填 — — links[].labelstring必填 — "Project website (example)"links[].urlstring必填 — "https://example.org/"
Budget
Monthly hosting and domain costs in data/budget.json. The figures exclude labour. amount is the monthly figure in currency.
文件 data/budget.json · JSON Schema
页面
此集合没有公开的 JSON 文件。
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — — as_ofstring必填 — "2026-10-13"YYYY-MM-DD the figures were written down. quotestring必填 "NOK""NOK"Currency the page converts into. rates_approximateboolean必填 — trueratesarray of object必填 — — Approximate conversion into the quote currency. rates[].currencystring必填 — "EUR"rates[].perstring必填 — "1"rates[].quote_amountstring必填 — "11.70"
Line
字段 类型 状态 允许的值 示例 说明 idstring必填 — "hetzner-electrum-1"kindstring必填 "server" "volume" "workers" "domains" "pages" "dns""server"server, volume, workers, domains, pages or dns. namestring可选 — "electrum-1"typestring可选 — "cx43"placestring可选 — "Falkenstein"runsstring可选 — "Electrum servers, Lightning node, Bitcoin/Nexa/BCH nodes, explorer"amountstring可选 — "15.99"Monthly amount, decimal string. currencystring可选 "EUR" "USD" "NOK""EUR"periodstring可选 — "month"amount_serverstring可选 — "8.49"amount_ipv4string可选 — "0.50"gbstring可选 — "1500"unit_pricestring可选 — "0.0572"unit_currencystring可选 — "EUR"namesstring可选 — "nordiccrypto.no/.dk/.se/.fi/.is/.eu"vendorstring可选 — "Domeneshop"amount_yearstring可选 — "1578"vatstring可选 — "incl"hoststring可选 — "nordiccrypto.no"freeboolean可选 — true
Article archive
Stories the public site has shown, in archive/articles.json, including when a story was removed. removal_reason stays null in this public file.
文件 archive/articles.json · JSON Schema
API
关系 articles[].id → news many-to-one
文件中的字段
字段 类型 状态 允许的值 示例 说明 schemainteger必填 — 2sitestring必填 — "nordic-crypto"exported_atstring必填 — "2026-10-14T07:38:23+02:00"
Archived story
字段 类型 状态 允许的值 示例 说明 sitestring必填 — "nordic-crypto"idstring必填 — "07e49032be5a"urlstring必填 — "https://www.kaupr.io/nyheter/nytt-nederlag-for-valuno-i-kampen-om-mica-lisens"canonical_urlstring必填 — "https://kaupr.io/nyheter/hilbert-finansierer-utlan-med-innskudd-pa-blokkjeden"titlestring必填 — "Safello åpner for at andre selskaper kan tilby kryptokjøp"sourcestring必填 — "kaupr"source_namestring必填 — "Kaupr"published_atstring必填 — "2026-09-24T12:00:00+00:00"When the outlet published the story. first_published_on_sitestring必填 — "2026-10-03T17:59:40+02:00"When it first appeared on Nordic Crypto. last_seen_on_sitestring必填 — "2026-10-14T07:38:23+02:00"languagesarray of string必填 — — summariesobject必填 — — summaries.enstring必填 — — summaries.nnstring必填 — — summaries.nbstring必填 — — summaries.svstring必填 — — summaries.dastring必填 — — summaries.fistring必填 — — summaries.isstring必填 — — titlesobject必填 — — titles.enstring可选 — "Safello opens up so other companies can offer crypto purchases"titles.nnstring可选 — "Safello opnar for at andre selskap kan tilby kryptokjøp"titles.svstring可选 — "Safello öppnar för att andra bolag kan erbjuda kryptoköp"titles.dastring可选 — "Safello åbner for, at andre selskaber kan tilbyde kryptokøb"titles.fistring可选 — "Safello antaa muiden yhtiöiden tarjota kryptokauppaa"titles.isstring可选 — "Safello opnar á að önnur fyrirtæki geti boðið kaup á rafmyntum"titles.nbstring可选 — "Opplysninger: Tenåringer sølvteipet mann i jakt på kryptovaluta"topicsarray of string必填 — ["business", "mica"]removedinteger必填 — 01 when the story was taken off the public site, otherwise 0. removed_atnull必填 — — removal_reasonnull必填 · 不包含在 /api/v1/ 中 — — Not filled in this public file. updated_atstring必填 — "2026-10-14T07:38:23+02:00"countrystring必填 "NO" "SE" "DK" "FI" "IS" "NORDIC" "EU" "FO" "GL" "AX""SE"
Archive event
字段 类型 状态 允许的值 示例 说明 seqinteger必填 — 1sitestring必填 — "nordic-crypto"idstring必填 — "e6727b4858b5"atstring必填 — "2026-10-03T17:59:40+02:00"eventstring必填 "backfill" "publish" "published" "update" "updated" "remove""backfill"What the archive recorded for this row. detailstring or null必填 — "summaries"
Headline translations
Our headlines by story id, in data/title_i18n.json. The source headline stays on the story. Keys are nn, nb, sv, da, fi and is, and only for languages that are not already the source headline.
文件 data/title_i18n.json · JSON Schema
此集合没有公开的 JSON 文件。
关系 items key → news many-to-one
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — — langsarray of string必填 — — Language codes this file translates into. itemsobject of headlines必填 — —
Headlines for one story
字段 类型 状态 允许的值 示例 说明 sourcestring必填 — "Småsparere hamstret krypto under renteuro"nnstring必填 — "Småspararar hamstra krypto under renteuro"svstring可选 — "Småsparare hamstrade krypto under ränteoro"dastring可选 — "Småsparere hamstrede krypto under renteuro"fistring可选 — "Piensijoittajat hamstrasivat kryptoa korkoheilunnassa"isstring必填 — "Smásparifólk hamstraði rafmynt í vaxtaóróa"nbstring可选 — "Slik kan Sverige brukes til å finansiere kjernevåpen"
Front-page blurbs
Front-page blurbs by story id, in data/frontpage_blurbs.json. en is ours, in English. The Nordic site languages sit beside it when a translation is published.
文件 data/frontpage_blurbs.json · JSON Schema
此集合没有公开的 JSON 文件。
关系 items key → news many-to-one
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — — langsarray of string必填 — — itemsobject of blurb必填 — —
Blurb
字段 类型 状态 允许的值 示例 说明 enstring必填 — — nnstring必填 — — nbstring必填 — — svstring必填 — — dastring必填 — — fistring必填 — — isstring必填 — —
Event descriptions
Organiser descriptions and our translations, by event id, in data/event_description_i18n.json. source is the original wording. A language key is present only when that translation is written.
文件 data/event_description_i18n.json · JSON Schema
此集合没有公开的 JSON 文件。
关系 items key → events many-to-one
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — — itemsobject of description必填 — —
Description
字段 类型 状态 允许的值 示例 说明 sourcestring必填 — — nnstring可选 — — nbstring可选 — — svstring必填 — — dastring必填 — — fistring必填 — — isstring可选 — — enstring可选 — —
Event redirects
Merged duplicate events in data/event_redirects.json. Each key is a removed id and each value is the id that was kept. The old calendar URL refreshes to the kept event.
文件 data/event_redirects.json · JSON Schema
页面
此集合没有公开的 JSON 文件。
关系 removed id (object key) → events many-to-one value → events many-to-one — The id that was kept
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — —
Kept id
字段 类型 状态 允许的值 示例 说明 event-redirectsstring必填 — "019f42a4506c"
Regulation videos
Country explainer slots in data/regulation-videos.json. status scripts_ready means the script and storyboard exist and the MP4 is not committed yet.
文件 data/regulation-videos.json · JSON Schema
页面
此集合没有公开的 JSON 文件。
文件中的字段
字段 类型 状态 允许的值 示例 说明 _notestring必填 — —
Video
字段 类型 状态 允许的值 示例 说明 idstring必填 — "reg-no"countrystring必填 "NO" "SE" "DK" "FI" "IS" "FO" "GL" "AX""NO"duration_target_sinteger必填 — 165statusstring必填 "scripts_ready" "published""scripts_ready"scripts_ready until an MP4 is published. filestring必填 — "video-no.mp4"MP4 name under regulation-videos/media/. The file is not committed. posterstring必填 — "poster-no.png"subsstring必填 — "subs-no.vtt"scriptstring必填 — "scripts/no-script.txt"Path of the script, relative to regulation-videos/. storyboardstring必填 — "storyboards/no-storyboard.md"
模式变更记录
时间 提交 变更
2026-10-17 8959dbfSchema examples: avoid 8-digit values the privacy gate reads as phone numbers 2026-10-16 5e22089Document the public data model at /db/ (#153)