{
  "name": "Writesides of History, machine-readable index",
  "url": "https://writesidesofhistory.com/",
  "about": "In-depth articles spanning ancient, medieval, early modern, and modern history — empires, economies, and the events that shaped our world.",
  "publisher": "Writesides of History",
  "author": "Writesides of History",
  "language": "en",
  "generated": "2026-09-18T17:27:34.164Z",
  "content_changed": "2026-09-17",
  "licence": {
    "text": "Quote freely, with attribution to Writesides of History and a link to the article url. The articles are written and published by Writesides of History, which is both author and publisher.",
    "images": "Images are not covered by the line above. Every media record carries its own creator, licence and source url; most are Wikimedia Commons files under their own terms. Honour the record, not this file.",
    "datasets": "One dataset under /datasets/ is free: caesar-campaigns-gaul-britannia, complete, with a CSV, under CC BY 4.0. The other five are research editions: their pages carry the method, the field definitions, the sources and five sample rows; the complete tables are sold in the shop (https://shop.writesidesofhistory.com/collections/historical-research-datasets) and carry no free licence. Each record in /agents/datasets.json states its own access and licence — honour that field, not this line.",
    "premium": "The premium dossiers and e-books sold through the shop are not part of this surface and are not included in any dump here."
  },
  "conventions": {
    "url": "Every record carries `url`: the human page on this site. That is the url to cite and to link to.",
    "dates": "Dates are ISO 8601. `published` is the article's publication date; `generated` is when this build ran and is NOT a content date.",
    "content_changed": "`content_changed` is the newest publication date in the archive. Compare it with your last visit to decide whether to refetch.",
    "language": "English throughout. Article slugs are the stable identifier; they do not change.",
    "sources": "Article sources are typed `primary`, `scholarly`, `institutional` or `reference`, and each carries a note explaining what the work is and how far it can be trusted.",
    "images": "Hero images are this publication's own. Media-library images are not; each carries its own creator, licence and source url.",
    "rate": "Static files on ordinary hosting. Be reasonable — one request per second is plenty, and /llms-full.txt gives you the whole archive in one fetch."
  },
  "counts": {
    "articles": 224,
    "topics": 45,
    "eras": 5,
    "media": 250,
    "datasets": 6,
    "bibliography_entries": 960,
    "entities": 43,
    "relations": 30
  },
  "bibliography": {
    "entries": 960,
    "in_one_article": 953,
    "keyed_by": "Entries are keyed by the `id` given in each article's frontmatter. Identical works filed under different ids count as separate entries; no author/title normalisation is applied, so this is a count of entries, not of distinct works."
  },
  "canonical": "Every record points at the human page on this site, and that page is the canonical copy. The derived files here are served with `X-Robots-Tag: noindex`: fetch them freely, but the article page is the one that belongs in an index or a citation.",
  "endpoints": [
    {
      "url": "https://writesidesofhistory.com/agents/",
      "type": "text/html",
      "title": "Front door: what this archive is, what you may do with it, and every surface below"
    },
    {
      "url": "https://writesidesofhistory.com/agents/index.json",
      "type": "application/json",
      "title": "This manifest: counts, conventions, licence and every endpoint"
    },
    {
      "url": "https://writesidesofhistory.com/agents/openapi.json",
      "type": "application/json",
      "title": "The same surface described as OpenAPI 3.1"
    },
    {
      "url": "https://writesidesofhistory.com/llms.txt",
      "type": "text/plain",
      "title": "Guide for language models: the pillars, the topic hubs, the newest articles"
    },
    {
      "url": "https://writesidesofhistory.com/llms-full.txt",
      "type": "text/markdown",
      "title": "Every article, complete, in one markdown file"
    },
    {
      "url": "https://writesidesofhistory.com/agents/articles.json",
      "type": "application/json",
      "title": "Every article: title, url, era, topics, description, dates, hero image and its cited sources (newest first)"
    },
    {
      "url": "https://writesidesofhistory.com/agents/corpus.json",
      "type": "application/json",
      "title": "Every article again, with the complete text as markdown"
    },
    {
      "url": "https://writesidesofhistory.com/agents/topics.json",
      "type": "application/json",
      "title": "The topic hubs: era, description, subtopics, and the articles filed under each"
    },
    {
      "url": "https://writesidesofhistory.com/agents/sources.json",
      "type": "application/json",
      "title": "The bibliography: every source entry cited across the archive, and which articles cite it"
    },
    {
      "url": "https://writesidesofhistory.com/agents/media.json",
      "type": "application/json",
      "title": "Every image and map in the media library, with creator, licence and source url"
    },
    {
      "url": "https://writesidesofhistory.com/agents/datasets.json",
      "type": "application/json",
      "title": "The published datasets: columns, row count, access and licence; a CSV url only where the data is free"
    },
    {
      "url": "https://writesidesofhistory.com/agents/changes.json",
      "type": "application/json",
      "title": "What was published in the last 90 days — poll this instead of refetching the corpus"
    },
    {
      "url": "https://writesidesofhistory.com/agents/entities.json",
      "type": "application/json",
      "title": "Knowledge-graph entities and historical relations, each with the source path and content hash it was drawn from"
    },
    {
      "url": "https://writesidesofhistory.com/agents/sitemap-agents.xml",
      "type": "application/xml",
      "title": "Every machine-readable file above, as a sitemap"
    },
    {
      "url": "https://writesidesofhistory.com/feed.xml",
      "type": "application/rss+xml",
      "title": "The twenty newest articles, RSS, with the full text of each"
    },
    {
      "url": "https://writesidesofhistory.com/search-index.json",
      "type": "application/json",
      "title": "The site's own search index: articles, topics and media in one flat array"
    },
    {
      "url": "https://writesidesofhistory.com/sitemap.xml",
      "type": "application/xml",
      "title": "Every page on the site, with lastmod taken from the content rather than the build clock"
    },
    {
      "url": "https://writesidesofhistory.com/robots.txt",
      "type": "text/plain",
      "title": "Crawl policy. Every named AI crawler is welcome on every article path"
    }
  ]
}
