{
 "openapi": "3.1.0",
 "info": {
  "title": "Mark Studios Open Data",
  "version": "2026-11-09",
  "summary": "Keyless JSON copies of the datasets behind Mark Studios' research pages.",
  "description": "Static JSON files, one per dataset, plus a catalog. No key or sign-up, and CORS is open (Access-Control-Allow-Origin: *). Each file is the whole dataset; there are no query parameters. CSV copies are linked from each file. Free to reuse with credit under CC BY 4.0.",
  "contact": {
   "name": "Mark Studios",
   "url": "https://www.markstudios.com/data",
   "email": "contact@markstudios.com"
  },
  "license": {
   "name": "CC BY 4.0",
   "url": "https://creativecommons.org/licenses/by/4.0/"
  }
 },
 "externalDocs": {
  "description": "Docs, fields and citation guidance",
  "url": "https://www.markstudios.com/data"
 },
 "servers": [
  {
   "url": "https://www.markstudios.com"
  }
 ],
 "security": [],
 "tags": [
  {
   "name": "catalog",
   "description": "The list of datasets."
  },
  {
   "name": "datasets",
   "description": "One file per dataset."
  }
 ],
 "paths": {
  "/data/index.json": {
   "get": {
    "operationId": "getCatalog",
    "summary": "List every dataset",
    "description": "The catalog: each dataset's name, description, fields, row count, research page and JSON/CSV links.",
    "tags": [
     "catalog"
    ],
    "responses": {
     "200": {
      "description": "The catalog.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Catalog"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editing-benchmarks.json": {
   "get": {
    "operationId": "getVideoEditingBenchmarks",
    "summary": "Video editing outsourcing benchmarks",
    "description": "Aggregates from Mark Studios' own order records, Jan 2023 to Sep 2026: delivery windows, what clients add to a long-form edit, raw footage per order, and repeat-client rates. One row per chart bar or table cell, with its unit and the number of orders behind it. Method and charts: https://www.markstudios.com/research/video-editing-outsourcing-benchmarks",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editing-outsourcing-benchmarks"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (76 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditingBenchmarksFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/buyer-questions.json": {
   "get": {
    "operationId": "getBuyerQuestions",
    "summary": "What buyers ask before hiring a video editor",
    "description": "What 698 buyers said in their first message to a video editor (Jul 9 to Sep 22, 2026): what they want edited, what they send, the questions they ask before ordering. Shares and counts per category; cells under 10 threads are suppressed. Method and charts: https://www.markstudios.com/research/what-buyers-ask-before-hiring-a-video-editor",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/what-buyers-ask-before-hiring-a-video-editor"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (148 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/BuyerQuestionsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/caption-reading-speed.json": {
   "get": {
    "operationId": "getCaptionReadingSpeed",
    "summary": "Caption reading speed, per video",
    "description": "Per-video results for 387 public videos (139 NASA, 248 MIT OpenCourseWare lectures), 339,521 captions measured with our caption checker against Netflix, BBC and DCMP limits: words a minute, characters a second, line length, time on screen and gaps, with a link to each caption file. Method and charts: https://www.markstudios.com/research/caption-reading-speed-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/caption-reading-speed-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (387 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/CaptionReadingSpeedFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-cpm-rpm.json": {
   "get": {
    "operationId": "getYoutubeCpmRpm",
    "summary": "YouTube CPM and RPM by niche, as creators report them",
    "description": "281 RPM and CPM figures YouTube creators published about their own channels (channel, niche, period and the post or interview each comes from), 19 YouTube and Alphabet revenue-share, eligibility and payout rows, and 14 niche medians we calculated (USD only, with n). One row per figure, with its source URL and access date. Method and charts: https://www.markstudios.com/research/youtube-cpm-rpm",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-cpm-rpm"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (314 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeCpmRpmFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-sponsorship-rates.json": {
   "get": {
    "operationId": "getYoutubeSponsorshipRates",
    "summary": "YouTube sponsorship rates, as creators list and report them",
    "description": "159 sponsorship prices listed on creators' public Passionfroot storefronts (format, currency and offer name) with 45 views-per-video figures from the same storefronts, 51 fees creators reported in interviews and press, 7 market-size figures from IAB and Mediakix, 8 FTC and YouTube rows, and 15 medians we calculated with n. One row per figure, with its source URL and access date. Method and charts: https://www.markstudios.com/research/youtube-sponsorship-rates",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-sponsorship-rates"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (285 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeSponsorshipRatesFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editing-service-prices.json": {
   "get": {
    "operationId": "getVideoEditingServicePrices",
    "summary": "Video editing service prices, as providers publish them",
    "description": "One row per figure on the video editing service prices page: the price or calculated figure, unit, population, geography, measurement period, publisher, source URL and locator, access date, and whether the figure is reported or calculated. Method and charts: https://www.markstudios.com/research/video-editing-service-prices",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editing-service-prices"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (102 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditingServicePricesFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-statistics-fact-check.json": {
   "get": {
    "operationId": "getVideoStatisticsFactCheck",
    "summary": "Popular video statistics, fact-checked",
    "description": "One row per popular video statistic we traced to its source: the claim as usually quoted, the research page that traces it, the opening of what its source actually measured, the verdict where the page gives one, and a link to the full trace. Method and charts: https://www.markstudios.com/research/fact-check",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/fact-check"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (875 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoStatisticsFactCheckFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-metadata.json": {
   "get": {
    "operationId": "getYoutubeMetadata",
    "summary": "YouTube tags, titles, descriptions and settings, per video",
    "description": "Tag counts, title and description lengths, links, hashtags, chapters, caption, translation, paid promotion and made-for-kids settings, and likes and comments per view for 487 regular videos and 574 Shorts from the most-subscribed YouTube channels. Method and charts: https://www.markstudios.com/research/youtube-metadata-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-metadata-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (1061 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeMetadataFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-video-length.json": {
   "get": {
    "operationId": "getYoutubeVideoLength",
    "summary": "YouTube video length, per video",
    "description": "Durations of the 30 latest long-form uploads of 97 of the most-subscribed YouTube channels (2,859 videos), with title, views when listed and a link to each video. Method and charts: https://www.markstudios.com/research/youtube-video-length-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-video-length-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (2859 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeVideoLengthFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-video-length-channels.json": {
   "get": {
    "operationId": "getYoutubeVideoLengthChannels",
    "summary": "YouTube video length and upload mix, per channel",
    "description": "One row per channel for 99 of the most-subscribed YouTube channels: median and mean length of the latest long-form videos, how many of the 15 latest uploads were Shorts, videos or live streams, uploads per week, median title length, and Wikipedia category, language and subscribers. Method and charts: https://www.markstudios.com/research/youtube-video-length-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-video-length-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (99 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeVideoLengthChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-shorts-length.json": {
   "get": {
    "operationId": "getYoutubeShortsLength",
    "summary": "YouTube Shorts length, per Short",
    "description": "Length, upload resolution and upload date of up to the 6 latest Shorts of 97 of the 100 most-subscribed YouTube channels (574 Shorts), with title, views when read and a link to each Short; upload resolution for the first 55 channels. Method and charts: https://www.markstudios.com/research/youtube-shorts-length-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-shorts-length-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (574 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeShortsLengthFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-shorts-length-channels.json": {
   "get": {
    "operationId": "getYoutubeShortsLengthChannels",
    "summary": "YouTube Shorts length, per channel",
    "description": "One row per channel for 94 of the most-subscribed YouTube channels, each with 6 Shorts read (3 of the 97 checked had fewer): median and longest Short in seconds and how many ran over 60 seconds, with Wikipedia category and language. Method and charts: https://www.markstudios.com/research/youtube-shorts-length-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-shorts-length-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (94 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeShortsLengthChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-upload-times.json": {
   "get": {
    "operationId": "getYoutubeUploadTimes",
    "summary": "YouTube publish times, per upload",
    "description": "Publish time (UTC and home time zone), day of week and upload type (video, Short, live stream) of every upload in four full weeks (Oct 1-28, 2026) of 82 of the most-subscribed YouTube channels (5,782 uploads), with a link to each upload. Method and charts: https://www.markstudios.com/research/youtube-upload-time-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-upload-time-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (5782 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeUploadTimesFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-upload-time-channels.json": {
   "get": {
    "operationId": "getYoutubeUploadTimeChannels",
    "summary": "YouTube publish times, per channel",
    "description": "One row per channel for all 99 channels: weeks read, uploads in the window, uploads a week (all, videos, Shorts), share published at :00 or :30, the most common local hour and its share, and whether the channel counts in the page's timing figures. Method and charts: https://www.markstudios.com/research/youtube-upload-time-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-upload-time-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (99 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeUploadTimeChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/deepfake-10-k-mentions.json": {
   "get": {
    "operationId": "getDeepfake10KMentions",
    "summary": "Deepfake, voice cloning, synthetic media and generative AI mentions in 10-K filings, per year",
    "description": "Original 10-K filings whose main document mentions each term, 2018-2026, with operating companies' 10-Ks in the same full-text index as the denominator. Method and charts: https://www.markstudios.com/research/deepfakes-in-sec-filings-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/deepfakes-in-sec-filings-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (36 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Deepfake10KMentionsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/deepfake-10-k-filings.json": {
   "get": {
    "operationId": "getDeepfake10KFilings",
    "summary": "Every 10-K filing mentioning deepfakes, 2020-2026",
    "description": "Company, CIK, SIC code, filing date and document link for each original 10-K whose main document mentions deepfakes; for 2026 also the 10-K item, topics and whether the clause is shared with another filing. Method and charts: https://www.markstudios.com/research/deepfakes-in-sec-filings-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/deepfakes-in-sec-filings-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (880 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Deepfake10KFilingsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/gsa-video-production-rates.json": {
   "get": {
    "operationId": "getGsaVideoProductionRates",
    "summary": "Video production labor ceiling rates on GSA schedules",
    "description": "1,598 GSA Multiple Award Schedule labor categories classed into video production roles (plus graphic designers and photographers): title, vendor, contract, hourly ceiling rate, experience, education, business size, worksite. Method and charts: https://www.markstudios.com/research/gsa-video-production-rates-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/gsa-video-production-rates-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (1598 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/GsaVideoProductionRatesFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editor-pay-by-state.json": {
   "get": {
    "operationId": "getVideoEditorPayByState",
    "summary": "Film and video editor pay by state, in nominal and national prices",
    "description": "BLS OEWS May 2025 state estimates for film and video editors: employment, median and mean pay, location quotient, plus BEA regional price parity and the median in national prices. Method and charts: https://www.markstudios.com/research/video-editor-pay-by-state-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editor-pay-by-state-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (43 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditorPayByStateFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/film-school-programs.json": {
   "get": {
    "operationId": "getFilmSchoolPrograms",
    "summary": "Film, video and photographic arts programs: graduate earnings and debt",
    "description": "Every CIP 50.06 program in the College Scorecard field-of-study file: institution, credential, median earnings 1 and 5 years after completing, graduates above a high school graduate's earnings, median federal debt. Method and charts: https://www.markstudios.com/research/film-school-earnings-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/film-school-earnings-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (1128 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FilmSchoolProgramsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/film-school-fields.json": {
   "get": {
    "operationId": "getFilmSchoolFields",
    "summary": "Graduate earnings and debt by field: film compared with 10 fields",
    "description": "Bachelor's and master's medians of program earnings (1 and 5 years), share above a high school graduate and median debt for film and 10 comparison fields, and all programs. Method and charts: https://www.markstudios.com/research/film-school-earnings-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/film-school-earnings-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (24 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FilmSchoolFieldsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/federal-video-workforce-headcount.json": {
   "get": {
    "operationId": "getFederalVideoWorkforceHeadcount",
    "summary": "U.S. federal civilian employees in video and communications occupations, 2015-2026",
    "description": "Headcount in OPM occupational series 1071 (audiovisual production), 1084, 1060, 1035 (public affairs) and 1082, and all federal civilian employees, per snapshot. Method and charts: https://www.markstudios.com/research/federal-video-workforce-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/federal-video-workforce-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (18 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FederalVideoWorkforceHeadcountFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/federal-public-affairs-departments.json": {
   "get": {
    "operationId": "getFederalPublicAffairsDepartments",
    "summary": "Federal public affairs staff by department, December 2024 and latest",
    "description": "Public affairs (series 1035) headcount in the 12 largest departments in December 2024 and the latest snapshot, with the change. Method and charts: https://www.markstudios.com/research/federal-video-workforce-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/federal-video-workforce-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (12 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FederalPublicAffairsDepartmentsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/federal-advertising-fiscal-years.json": {
   "get": {
    "operationId": "getFederalAdvertisingFiscalYears",
    "summary": "U.S. federal advertising and public relations contract spending by fiscal year, 2008-2026",
    "description": "Net obligations on contracts coded PSC R701 (advertising) and R708 (public relations) per fiscal year, nominal and in FY2025 dollars, with vendors and small-business and Defense shares. Method and charts: https://www.markstudios.com/research/federal-advertising-contracts-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/federal-advertising-contracts-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (19 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FederalAdvertisingFiscalYearsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/federal-advertising-largest-awards.json": {
   "get": {
    "operationId": "getFederalAdvertisingLargestAwards",
    "summary": "The 10 largest U.S. federal advertising and public relations awards, FY2021-2025",
    "description": "Funding and awarding office, parent vendor, product code, FY2021-2025 obligations, the agency's own description and the USAspending link for each of the 10 largest awards. Method and charts: https://www.markstudios.com/research/federal-advertising-contracts-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/federal-advertising-contracts-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (10 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FederalAdvertisingLargestAwardsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/federal-video-production-fiscal-years.json": {
   "get": {
    "operationId": "getFederalVideoProductionFiscalYears",
    "summary": "U.S. federal film and video production contract spending by fiscal year, 2008-2026",
    "description": "Net obligations on contracts coded PSC T006 (film/video production) per fiscal year, nominal and in FY2025 dollars, with new awards, vendors, small-business, set-aside, not-competed and Defense shares. Method and charts: https://www.markstudios.com/research/federal-video-production-contracts-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/federal-video-production-contracts-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (19 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FederalVideoProductionFiscalYearsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/federal-video-production-awards.json": {
   "get": {
    "operationId": "getFederalVideoProductionAwards",
    "summary": "U.S. federal film and video production contract awards, FY2021-2025",
    "description": "863 awards coded PSC T006 made in fiscal 2021-2025: agency, vendor, net obligations to date, competition, offers received, small-business status, place of performance and USAspending link. Method and charts: https://www.markstudios.com/research/federal-video-production-contracts-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/federal-video-production-contracts-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (863 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/FederalVideoProductionAwardsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/ai-video-generator-apps-app-store.json": {
   "get": {
    "operationId": "getAiVideoGeneratorAppsAppStore",
    "summary": "AI video generator apps on the U.S. App Store: ratings and listed plan and credit prices",
    "description": "60 AI video generator apps with 1,000+ U.S. ratings: ratings, update dates, chart ranks and the lowest listed weekly, monthly, yearly, credit-pack and lifetime prices. Method and charts: https://www.markstudios.com/research/ai-video-generator-apps-app-store-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/ai-video-generator-apps-app-store-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (60 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/AiVideoGeneratorAppsAppStoreFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editing-apps-google-play.json": {
   "get": {
    "operationId": "getVideoEditingAppsGooglePlay",
    "summary": "Video editing apps on Google Play: install bands",
    "description": "The Google Play listing, developer, install band, review count and star rating for each of the App Store study's video editing apps we could match to Android (developer or hand-checked brand match). Method and charts: https://www.markstudios.com/research/video-editing-apps-app-store-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editing-apps-app-store-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (41 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditingAppsGooglePlayFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editing-apps-app-store.json": {
   "get": {
    "operationId": "getVideoEditingAppsAppStore",
    "summary": "Video editing apps on the U.S. App Store: ratings and listed plan prices",
    "description": "135 video editing apps with 1,000+ U.S. ratings: ratings, update dates, chart ranks and the lowest listed weekly, monthly, yearly and lifetime prices. Method and charts: https://www.markstudios.com/research/video-editing-apps-app-store-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editing-apps-app-store-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (135 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditingAppsAppStoreFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editors-wikipedia.json": {
   "get": {
    "operationId": "getVideoEditorsWikipedia",
    "summary": "Video editing software on English Wikipedia: views per editor, last 12 months vs five years earlier",
    "description": "Human pageviews of 18 video editors' English Wikipedia articles plus redirects, share of the tracked editors, and views per billion English Wikipedia views in two 12-month periods five years apart. Method and charts: https://www.markstudios.com/research/video-editing-software-wikipedia-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editing-software-wikipedia-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (18 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditorsWikipediaFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/video-editors-wikipedia-monthly.json": {
   "get": {
    "operationId": "getVideoEditorsWikipediaMonthly",
    "summary": "Video editing software on English Wikipedia: monthly views per editor, 2016-2026",
    "description": "One row per editor and month: human pageviews of the article plus its redirects, with all of English Wikipedia's human views that month. Method and charts: https://www.markstudios.com/research/video-editing-software-wikipedia-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/video-editing-software-wikipedia-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (2322 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/VideoEditorsWikipediaMonthlyFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/creator-economy-10-k-terms.json": {
   "get": {
    "operationId": "getCreatorEconomy10KTerms",
    "summary": "Creator-economy and video-platform terms in 10-K filings, per term and year",
    "description": "Original 10-K filings mentioning TikTok, YouTube, Instagram, influencers, content creators and related terms, 2019-2025, in the main document and in any document, with each year's total 10-K filings. Method and charts: https://www.markstudios.com/research/creator-economy-sec-filings-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/creator-economy-sec-filings-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (70 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/CreatorEconomy10KTermsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-view-count-change.json": {
   "get": {
    "operationId": "getYoutubeViewCountChange",
    "summary": "YouTube likes and views before and after the Aug 24, 2026 view count change, per upload",
    "description": "Views, likes, comments, type, length, upload date and before/after period of 6,098 uploads posted Jun 1-Oct 23, 2026 by 68 of the most-subscribed YouTube channels, read 2026-10-31, with a link to each upload. Method and charts: https://www.markstudios.com/research/youtube-view-count-change-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-view-count-change-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (6098 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeViewCountChangeFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-view-count-change-channels.json": {
   "get": {
    "operationId": "getYoutubeViewCountChangeChannels",
    "summary": "YouTube likes per view before and after the view count change, per channel",
    "description": "One row per channel and upload type: uploads and median likes per 1,000 views before (Jun 1-Aug 23) and after (Aug 24-Oct 23, 2026), percent change and median views. Method and charts: https://www.markstudios.com/research/youtube-view-count-change-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-view-count-change-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (63 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeViewCountChangeChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-creator-comments.json": {
   "get": {
    "operationId": "getYoutubeCreatorComments",
    "summary": "Creator comments on uploads from the most-subscribed YouTube channels",
    "description": "One upload per row: channel, type, views, comments, top threads read, whether the creator's own comment is first, own top-level comments and own replies shown. Method and charts: https://www.markstudios.com/research/youtube-creator-comments-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-creator-comments-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (447 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeCreatorCommentsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-title-style.json": {
   "get": {
    "operationId": "getYoutubeTitleStyle",
    "summary": "Titles of YouTube most-popular chart videos",
    "description": "One video per row from YouTube's most-popular charts in five countries (Oct 31 to Nov 2, 2026): channel, title, category ID, length and the charts it appeared on. Method and charts: https://www.markstudios.com/research/youtube-title-style-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-title-style-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (6776 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeTitleStyleFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-sponsorship-disclosure.json": {
   "get": {
    "operationId": "getYoutubeSponsorshipDisclosure",
    "summary": "YouTube paid promotion label vs sponsors named in descriptions, most-popular chart videos",
    "description": "One video per row from YouTube's most-popular charts in five countries (Oct 31 to Nov 2, 2026): category, length, views, whether it carries the paid promotion label, whether its description names a sponsor or only a promo code, and the phrases matched. Method and charts: https://www.markstudios.com/research/youtube-sponsorship-disclosure-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-sponsorship-disclosure-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (6776 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeSponsorshipDisclosureFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/podcasts-on-youtube.json": {
   "get": {
    "operationId": "getPodcastsOnYoutube",
    "summary": "Apple's top 100 U.S. podcasts on YouTube",
    "description": "One show per row from Apple's top 100 U.S. podcasts chart: genre, publisher, its YouTube channel and subscribers, whether it posts full episodes or only clips, episodes matched, and the median gap between the feed and the YouTube upload. Method and charts: https://www.markstudios.com/research/podcasts-on-youtube-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/podcasts-on-youtube-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (100 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/PodcastsOnYoutubeFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/sp500-youtube.json": {
   "get": {
    "operationId": "getSp500Youtube",
    "summary": "YouTube on S&P 500 company homepages and channels",
    "description": "One S&P 500 constituent per row: sector, homepage, whether it links to or embeds YouTube, the company channel and how it was found, subscribers, uploads and Shorts in the past 12 months, last upload. Method and charts: https://www.markstudios.com/research/sp500-youtube-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/sp500-youtube-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (503 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Sp500YoutubeFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-engagement.json": {
   "get": {
    "operationId": "getYoutubeEngagement",
    "summary": "YouTube views, likes and comments, per upload",
    "description": "Public views, likes and comments, engagement rate, type (video, Short, live stream), length, age when read and made-for-kids setting of 5,799 uploads posted Oct 1-28, 2026 by 83 of the most-subscribed YouTube channels, read Oct 30, 2026, with a link to each upload. Method and charts: https://www.markstudios.com/research/youtube-engagement-rate-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-engagement-rate-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (5799 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeEngagementFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-engagement-channels.json": {
   "get": {
    "operationId": "getYoutubeEngagementChannels",
    "summary": "YouTube engagement rate, per channel",
    "description": "One row per channel for 83 of the most-subscribed YouTube channels: uploads read, regular videos and Shorts counted, median engagement rate of each, median likes and comments per 1,000 views, and made-for-kids uploads. Method and charts: https://www.markstudios.com/research/youtube-engagement-rate-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-engagement-rate-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (83 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeEngagementChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-thumbnails.json": {
   "get": {
    "operationId": "getYoutubeThumbnails",
    "summary": "YouTube thumbnail content, per thumbnail",
    "description": "Labels for 487 thumbnails of the latest regular uploads of 98 of the most-subscribed YouTube channels: human and drawn faces, largest face size, open mouth, headline text and word count, script, logo, split screen and arrows. Method and charts: https://www.markstudios.com/research/youtube-thumbnail-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-thumbnail-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (487 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeThumbnailsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-thumbnail-channels.json": {
   "get": {
    "operationId": "getYoutubeThumbnailChannels",
    "summary": "YouTube thumbnail content, per channel",
    "description": "One row per channel for the same 98 channels: thumbnails labelled, how many show a human face, a drawn face or headline text, and the median headline word count when there is text. Method and charts: https://www.markstudios.com/research/youtube-thumbnail-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-thumbnail-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (98 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeThumbnailChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-dubbing.json": {
   "get": {
    "operationId": "getYoutubeDubbing",
    "summary": "YouTube dubbed audio, per video",
    "description": "Audio tracks on the 5 latest regular videos of 97 of the most-subscribed YouTube channels (485 videos), with each dub classed by YouTube's own tag as uploaded by the channel or made by YouTube's automatic dubbing: dub languages per video, original language, and whether the channel uploaded its own captions. Method and charts: https://www.markstudios.com/research/youtube-dubbing-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-dubbing-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (485 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeDubbingFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-dubbing-channels.json": {
   "get": {
    "operationId": "getYoutubeDubbingChannels",
    "summary": "YouTube dubbed audio, per channel",
    "description": "One row per channel for the same 97 channels: of the 5 videos checked, how many carry any dub, the channel's own dubs or YouTube's automatic dubs, the most dub languages on one video and how many have the channel's own captions, with category, language, country and subscribers. Method and charts: https://www.markstudios.com/research/youtube-dubbing-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-dubbing-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (97 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeDubbingChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-auto-caption-accuracy.json": {
   "get": {
    "operationId": "getYoutubeAutoCaptionAccuracy",
    "summary": "YouTube automatic captions vs human captions, per video",
    "description": "Per-video comparison of YouTube automatic English captions with the channel-uploaded human caption track for 299 recent videos from MIT OpenCourseWare, NASA, TED, Khan Academy, CrashCourse and Stanford: words missed or wrong, word error rate (normalized and naive), insertions, words a minute, and misses on capitalized terms. Method and charts: https://www.markstudios.com/research/youtube-auto-caption-accuracy-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-auto-caption-accuracy-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (299 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeAutoCaptionAccuracyFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/youtube-caption-coverage-channels.json": {
   "get": {
    "operationId": "getYoutubeCaptionCoverageChannels",
    "summary": "YouTube caption coverage, per channel",
    "description": "Caption coverage on 97 of the most-subscribed YouTube channels: of each channel's 5 latest regular videos, how many carry a caption track the channel uploaded, an English one, automatic captions only or no captions, and the most caption languages the channel uploaded on one video. Method and charts: https://www.markstudios.com/research/youtube-auto-caption-accuracy-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/youtube-auto-caption-accuracy-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (97 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/YoutubeCaptionCoverageChannelsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/homepage-video.json": {
   "get": {
    "operationId": "getHomepageVideo",
    "summary": "Video on the homepages of the most-visited websites, per domain",
    "description": "For each of the 1,000 highest-ranked domains on Tranco list ZJ8PG: whether its homepage loaded, and whether it showed video, where, with what playback settings and from which host (579 homepages, 182 with video). Method and charts: https://www.markstudios.com/research/homepage-video-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/homepage-video-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (1000 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HomepageVideoFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/homepage-seo.json": {
   "get": {
    "operationId": "getHomepageSeo",
    "summary": "SEO tags on the homepages of the most-visited websites, per site",
    "description": "For each of 567 working homepages among the 1,000 highest-ranked domains on Tranco list ZJ8PG: title and meta description length, canonical, html lang, viewport, hreflang count, Open Graph and Twitter card tags, H1 count and JSON-LD types. Method and charts: https://www.markstudios.com/research/homepage-seo-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/homepage-seo-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (567 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HomepageSeoFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/ai-crawler-robots-txt.json": {
   "get": {
    "operationId": "getAiCrawlerRobotsTxt",
    "summary": "AI crawler rules in robots.txt and llms.txt, per site",
    "description": "For each of 579 working homepages among the 1,000 highest-ranked domains on Tranco list ZJ8PG: whether robots.txt lets each of 19 AI crawler tokens and Googlebot and Bingbot fetch the homepage (and whether it names the crawler), and whether the site serves a real llms.txt. Method and charts: https://www.markstudios.com/research/ai-crawler-robots-txt-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/ai-crawler-robots-txt-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (579 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/AiCrawlerRobotsTxtFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/website-third-party-tools.json": {
   "get": {
    "operationId": "getWebsiteThirdPartyTools",
    "summary": "Third-party tools on the homepages of the most-visited websites, per site",
    "description": "For each of 568 working homepages among the 1,000 highest-ranked domains on Tranco list ZJ8PG: which of 40 tag managers, analytics, advertising, session-replay, consent, monitoring, testing and font services it loaded in its first 10 seconds, its chat widget, and how many other domains it contacted. Method and charts: https://www.markstudios.com/research/website-third-party-tools-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/website-third-party-tools-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (568 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/WebsiteThirdPartyToolsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/website-fonts.json": {
   "get": {
    "operationId": "getWebsiteFonts",
    "summary": "Fonts on the homepages of the most-visited websites, per site",
    "description": "For each of 566 working homepages among the 1,000 highest-ranked domains on Tranco list ZJ8PG: the first-choice font of the body text and main heading, the kind of font, and the web fonts the page loaded. Method and charts: https://www.markstudios.com/research/website-fonts-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/website-fonts-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (566 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/WebsiteFontsFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  },
  "/data/website-social-media-links.json": {
   "get": {
    "operationId": "getWebsiteSocialMediaLinks",
    "summary": "Social media links on the homepages of the most-visited websites, per site",
    "description": "For each of 572 working homepages among the 1,000 highest-ranked domains on Tranco list ZJ8PG: which of 18 social networks it links to a profile on, how many, whether in the footer, and twitter.com vs x.com addresses. Method and charts: https://www.markstudios.com/research/website-social-media-links-study",
    "tags": [
     "datasets"
    ],
    "externalDocs": {
     "url": "https://www.markstudios.com/research/website-social-media-links-study"
    },
    "responses": {
     "200": {
      "description": "The whole dataset (572 rows) with its provenance and license.",
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/WebsiteSocialMediaLinksFile"
        }
       }
      }
     },
     "404": {
      "description": "Not found."
     }
    }
   }
  }
 },
 "components": {
  "schemas": {
   "License": {
    "type": "object",
    "required": [
     "name",
     "url"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "url": {
      "type": "string",
      "format": "uri"
     }
    }
   },
   "Catalog": {
    "type": "object",
    "required": [
     "publisher",
     "docs",
     "license",
     "datasets"
    ],
    "properties": {
     "publisher": {
      "type": "object",
      "properties": {
       "name": {
        "type": "string"
       },
       "url": {
        "type": "string",
        "format": "uri"
       }
      }
     },
     "docs": {
      "type": "string",
      "format": "uri"
     },
     "openapi": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "datasets": {
      "type": "array",
      "items": {
       "type": "object",
       "required": [
        "name",
        "description",
        "source_page",
        "json",
        "csv",
        "license",
        "updated",
        "count",
        "fields"
       ],
       "properties": {
        "name": {
         "type": "string"
        },
        "description": {
         "type": "string"
        },
        "source_page": {
         "type": "string",
         "format": "uri"
        },
        "json": {
         "type": "string",
         "format": "uri"
        },
        "csv": {
         "type": "string",
         "format": "uri"
        },
        "license": {
         "$ref": "#/components/schemas/License"
        },
        "updated": {
         "type": [
          "string",
          "null"
         ],
         "format": "date"
        },
        "count": {
         "type": "integer"
        },
        "fields": {
         "type": "array",
         "items": {
          "type": "string"
         }
        }
       }
      }
     }
    }
   },
   "VideoEditingBenchmarksRow": {
    "type": "object",
    "properties": {
     "table": {
      "type": "string"
     },
     "row": {
      "type": [
       "string",
       "integer"
      ]
     },
     "value": {
      "type": "number"
     },
     "unit": {
      "type": "string"
     },
     "n": {
      "type": [
       "integer",
       "null"
      ]
     }
    },
    "required": [
     "table",
     "row",
     "value",
     "unit",
     "n"
    ],
    "additionalProperties": false
   },
   "VideoEditingBenchmarksFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditingBenchmarksRow"
      }
     }
    }
   },
   "BuyerQuestionsRow": {
    "type": "object",
    "properties": {
     "table": {
      "type": "string"
     },
     "row": {
      "type": "string"
     },
     "share_pct": {
      "type": [
       "number",
       "null"
      ]
     },
     "count": {
      "type": [
       "string",
       "integer",
       "null"
      ]
     },
     "base": {
      "type": "integer"
     },
     "note": {
      "type": "string"
     }
    },
    "required": [
     "table",
     "row",
     "share_pct",
     "count",
     "base",
     "note"
    ],
    "additionalProperties": false
   },
   "BuyerQuestionsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/BuyerQuestionsRow"
      }
     }
    }
   },
   "CaptionReadingSpeedRow": {
    "type": "object",
    "properties": {
     "source": {
      "type": "string"
     },
     "group": {
      "type": "string"
     },
     "title_or_course": {
      "type": "string"
     },
     "date": {
      "type": [
       "string",
       "null"
      ]
     },
     "captions": {
      "type": "integer"
     },
     "minutes": {
      "type": "number"
     },
     "words_per_minute_overall": {
      "type": "integer"
     },
     "median_chars_per_second": {
      "type": "number"
     },
     "pct_over_20cps": {
      "type": "number"
     },
     "pct_over_160wpm": {
      "type": "number"
     },
     "pct_line_over_42": {
      "type": "number"
     },
     "pct_under_5_6s": {
      "type": "number"
     },
     "pct_over_7s": {
      "type": "number"
     },
     "pct_gap_under_2_frames": {
      "type": "number"
     },
     "longest_line": {
      "type": "integer"
     },
     "caption_file_url": {
      "type": "string"
     }
    },
    "required": [
     "source",
     "group",
     "title_or_course",
     "date",
     "captions",
     "minutes",
     "words_per_minute_overall",
     "median_chars_per_second",
     "pct_over_20cps",
     "pct_over_160wpm",
     "pct_line_over_42",
     "pct_under_5_6s",
     "pct_over_7s",
     "pct_gap_under_2_frames",
     "longest_line",
     "caption_file_url"
    ],
    "additionalProperties": false
   },
   "CaptionReadingSpeedFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/CaptionReadingSpeedRow"
      }
     }
    }
   },
   "YoutubeCpmRpmRow": {
    "type": "object",
    "properties": {
     "stat_id": {
      "type": "string"
     },
     "claim": {
      "type": "string"
     },
     "value": {
      "type": [
       "string",
       "number"
      ]
     },
     "unit": {
      "type": "string"
     },
     "population": {
      "type": "string"
     },
     "geography": {
      "type": "string"
     },
     "period": {
      "type": [
       "string",
       "integer"
      ]
     },
     "publisher": {
      "type": "string"
     },
     "source_title": {
      "type": [
       "string",
       "null"
      ]
     },
     "source_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "source_locator": {
      "type": "string"
     },
     "publication_date": {
      "type": [
       "string",
       "null"
      ]
     },
     "accessed_date": {
      "type": "string"
     },
     "claim_kind": {
      "type": "string"
     },
     "status": {
      "type": "string"
     },
     "method_notes": {
      "type": "string"
     },
     "license_notes": {
      "type": "string"
     }
    },
    "required": [
     "stat_id",
     "claim",
     "value",
     "unit",
     "population",
     "geography",
     "period",
     "publisher",
     "source_title",
     "source_url",
     "source_locator",
     "publication_date",
     "accessed_date",
     "claim_kind",
     "status",
     "method_notes",
     "license_notes"
    ],
    "additionalProperties": false
   },
   "YoutubeCpmRpmFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeCpmRpmRow"
      }
     }
    }
   },
   "YoutubeSponsorshipRatesRow": {
    "type": "object",
    "properties": {
     "stat_id": {
      "type": "string"
     },
     "claim": {
      "type": "string"
     },
     "value": {
      "type": [
       "string",
       "number"
      ]
     },
     "unit": {
      "type": "string"
     },
     "population": {
      "type": "string"
     },
     "geography": {
      "type": "string"
     },
     "period": {
      "type": [
       "string",
       "integer"
      ]
     },
     "publisher": {
      "type": "string"
     },
     "source_title": {
      "type": [
       "string",
       "null"
      ]
     },
     "source_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "source_locator": {
      "type": "string"
     },
     "publication_date": {
      "type": [
       "string",
       "null"
      ]
     },
     "accessed_date": {
      "type": "string"
     },
     "claim_kind": {
      "type": "string"
     },
     "status": {
      "type": "string"
     },
     "method_notes": {
      "type": "string"
     },
     "license_notes": {
      "type": "string"
     }
    },
    "required": [
     "stat_id",
     "claim",
     "value",
     "unit",
     "population",
     "geography",
     "period",
     "publisher",
     "source_title",
     "source_url",
     "source_locator",
     "publication_date",
     "accessed_date",
     "claim_kind",
     "status",
     "method_notes",
     "license_notes"
    ],
    "additionalProperties": false
   },
   "YoutubeSponsorshipRatesFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeSponsorshipRatesRow"
      }
     }
    }
   },
   "VideoEditingServicePricesRow": {
    "type": "object",
    "properties": {
     "stat_id": {
      "type": "string"
     },
     "claim": {
      "type": "string"
     },
     "value": {
      "type": [
       "string",
       "number"
      ]
     },
     "unit": {
      "type": "string"
     },
     "population": {
      "type": "string"
     },
     "geography": {
      "type": "string"
     },
     "period": {
      "type": "string"
     },
     "publisher": {
      "type": "string"
     },
     "source_title": {
      "type": [
       "string",
       "null"
      ]
     },
     "source_url": {
      "type": [
       "string",
       "null"
      ]
     },
     "source_locator": {
      "type": "string"
     },
     "publication_date": {
      "type": [
       "string",
       "null"
      ]
     },
     "accessed_date": {
      "type": "string"
     },
     "claim_kind": {
      "type": "string"
     },
     "status": {
      "type": "string"
     },
     "method_notes": {
      "type": "string"
     },
     "license_notes": {
      "type": "string"
     }
    },
    "required": [
     "stat_id",
     "claim",
     "value",
     "unit",
     "population",
     "geography",
     "period",
     "publisher",
     "source_title",
     "source_url",
     "source_locator",
     "publication_date",
     "accessed_date",
     "claim_kind",
     "status",
     "method_notes",
     "license_notes"
    ],
    "additionalProperties": false
   },
   "VideoEditingServicePricesFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditingServicePricesRow"
      }
     }
    }
   },
   "VideoStatisticsFactCheckRow": {
    "type": "object",
    "properties": {
     "claim": {
      "type": "string"
     },
     "research_page": {
      "type": "string"
     },
     "what_the_source_measured": {
      "type": "string"
     },
     "verdict": {
      "type": [
       "string",
       "boolean",
       "null"
      ]
     },
     "full_trace": {
      "type": "string"
     }
    },
    "required": [
     "claim",
     "research_page",
     "what_the_source_measured",
     "verdict",
     "full_trace"
    ],
    "additionalProperties": false
   },
   "VideoStatisticsFactCheckFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoStatisticsFactCheckRow"
      }
     }
    }
   },
   "YoutubeMetadataRow": {
    "type": "object",
    "properties": {
     "kind": {
      "type": "string"
     },
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "published": {
      "type": "string"
     },
     "seconds": {
      "type": "integer"
     },
     "category": {
      "type": "string"
     },
     "audio_language": {
      "type": [
       "string",
       "null"
      ]
     },
     "title": {
      "type": "string"
     },
     "title_chars": {
      "type": "integer"
     },
     "tags": {
      "type": "integer"
     },
     "tag_chars": {
      "type": "integer"
     },
     "tag_has_channel_name": {
      "type": "boolean"
     },
     "description_chars": {
      "type": "integer"
     },
     "description_links": {
      "type": "integer"
     },
     "description_hashtags": {
      "type": "integer"
     },
     "title_hashtags": {
      "type": "integer"
     },
     "chapters": {
      "type": "boolean"
     },
     "uploaded_captions": {
      "type": "boolean"
     },
     "translated_title_description": {
      "type": "boolean"
     },
     "translations": {
      "type": "integer"
     },
     "paid_promotion": {
      "type": "boolean"
     },
     "made_for_kids": {
      "type": "boolean"
     },
     "views": {
      "type": "integer"
     },
     "likes": {
      "type": [
       "integer",
       "null"
      ]
     },
     "comments": {
      "type": [
       "integer",
       "null"
      ]
     },
     "likes_per_1000_views": {
      "type": [
       "number",
       "null"
      ]
     },
     "url": {
      "type": "string"
     }
    },
    "required": [
     "kind",
     "rank",
     "channel",
     "video_id",
     "published",
     "seconds",
     "category",
     "audio_language",
     "title",
     "title_chars",
     "tags",
     "tag_chars",
     "tag_has_channel_name",
     "description_chars",
     "description_links",
     "description_hashtags",
     "title_hashtags",
     "chapters",
     "uploaded_captions",
     "translated_title_description",
     "translations",
     "paid_promotion",
     "made_for_kids",
     "views",
     "likes",
     "comments",
     "likes_per_1000_views",
     "url"
    ],
    "additionalProperties": false
   },
   "YoutubeMetadataFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeMetadataRow"
      }
     }
    }
   },
   "YoutubeVideoLengthRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "minutes": {
      "type": "number"
     },
     "views_when_listed": {
      "type": [
       "integer",
       "null"
      ]
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "channel",
     "video_id",
     "title",
     "minutes",
     "views_when_listed",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeVideoLengthFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeVideoLengthRow"
      }
     }
    }
   },
   "YoutubeVideoLengthChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "category": {
      "type": "string"
     },
     "language": {
      "type": "string"
     },
     "subscribers_millions": {
      "type": "number"
     },
     "videos_with_duration": {
      "type": "integer"
     },
     "median_minutes": {
      "type": "number"
     },
     "mean_minutes": {
      "type": "number"
     },
     "latest_uploads": {
      "type": "integer"
     },
     "shorts": {
      "type": "integer"
     },
     "videos": {
      "type": "integer"
     },
     "streams": {
      "type": "integer"
     },
     "other": {
      "type": "integer"
     },
     "latest_upload_from": {
      "type": "string"
     },
     "latest_upload_to": {
      "type": "string"
     },
     "uploads_per_week": {
      "type": [
       "number",
       "null"
      ]
     },
     "title_median_characters": {
      "type": "number"
     }
    },
    "required": [
     "rank",
     "channel",
     "category",
     "language",
     "subscribers_millions",
     "videos_with_duration",
     "median_minutes",
     "mean_minutes",
     "latest_uploads",
     "shorts",
     "videos",
     "streams",
     "other",
     "latest_upload_from",
     "latest_upload_to",
     "uploads_per_week",
     "title_median_characters"
    ],
    "additionalProperties": false
   },
   "YoutubeVideoLengthChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeVideoLengthChannelsRow"
      }
     }
    }
   },
   "YoutubeShortsLengthRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "video_id": {
      "type": "string"
     },
     "seconds": {
      "type": "integer"
     },
     "width": {
      "type": [
       "integer",
       "null"
      ]
     },
     "height": {
      "type": [
       "integer",
       "null"
      ]
     },
     "upload_date": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "views_when_read": {
      "type": [
       "integer",
       "null"
      ]
     },
     "short_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "video_id",
     "seconds",
     "width",
     "height",
     "upload_date",
     "title",
     "views_when_read",
     "short_url"
    ],
    "additionalProperties": false
   },
   "YoutubeShortsLengthFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeShortsLengthRow"
      }
     }
    }
   },
   "YoutubeShortsLengthChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "category": {
      "type": "string"
     },
     "language": {
      "type": "string"
     },
     "shorts": {
      "type": "integer"
     },
     "median_seconds": {
      "type": "number"
     },
     "over_60_seconds": {
      "type": "integer"
     },
     "longest_seconds": {
      "type": "integer"
     }
    },
    "required": [
     "rank",
     "channel",
     "category",
     "language",
     "shorts",
     "median_seconds",
     "over_60_seconds",
     "longest_seconds"
    ],
    "additionalProperties": false
   },
   "YoutubeShortsLengthChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeShortsLengthChannelsRow"
      }
     }
    }
   },
   "YoutubeUploadTimesRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "country_wikipedia": {
      "type": "string"
     },
     "upload_type": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "published_utc": {
      "type": "string"
     },
     "local_day": {
      "type": "string"
     },
     "local_hour": {
      "type": "integer"
     },
     "local_minute": {
      "type": "integer"
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "channel",
     "country_wikipedia",
     "upload_type",
     "video_id",
     "published_utc",
     "local_day",
     "local_hour",
     "local_minute",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeUploadTimesFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeUploadTimesRow"
      }
     }
    }
   },
   "YoutubeUploadTimeChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "country_wikipedia": {
      "type": "string"
     },
     "weeks_read": {
      "type": "integer"
     },
     "uploads_in_window": {
      "type": [
       "integer",
       "null"
      ]
     },
     "uploads_per_week": {
      "type": "number"
     },
     "videos_per_week": {
      "type": [
       "number",
       "null"
      ]
     },
     "shorts_per_week": {
      "type": [
       "number",
       "null"
      ]
     },
     "share_at_00_or_30": {
      "type": [
       "number",
       "null"
      ]
     },
     "most_common_local_hour": {
      "type": [
       "integer",
       "null"
      ]
     },
     "share_in_that_hour": {
      "type": [
       "number",
       "null"
      ]
     },
     "in_timing_figures": {
      "type": "string"
     },
     "note": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "rank",
     "channel",
     "country_wikipedia",
     "weeks_read",
     "uploads_in_window",
     "uploads_per_week",
     "videos_per_week",
     "shorts_per_week",
     "share_at_00_or_30",
     "most_common_local_hour",
     "share_in_that_hour",
     "in_timing_figures",
     "note"
    ],
    "additionalProperties": false
   },
   "YoutubeUploadTimeChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeUploadTimeChannelsRow"
      }
     }
    }
   },
   "Deepfake10KMentionsRow": {
    "type": "object",
    "properties": {
     "term": {
      "type": "string"
     },
     "filing_year": {
      "type": "integer"
     },
     "through": {
      "type": "string"
     },
     "tenk_filings_main_document": {
      "type": "integer"
     },
     "operating_company_tenk_filings_in_index": {
      "type": "integer"
     },
     "share_pct_operating": {
      "type": "number"
     },
     "tenk_filings_form_index": {
      "type": "integer"
     }
    },
    "required": [
     "term",
     "filing_year",
     "through",
     "tenk_filings_main_document",
     "operating_company_tenk_filings_in_index",
     "share_pct_operating",
     "tenk_filings_form_index"
    ],
    "additionalProperties": false
   },
   "Deepfake10KMentionsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Deepfake10KMentionsRow"
      }
     }
    }
   },
   "Deepfake10KFilingsRow": {
    "type": "object",
    "properties": {
     "filing_year": {
      "type": "integer"
     },
     "file_date": {
      "type": "string"
     },
     "company": {
      "type": "string"
     },
     "cik": {
      "type": "integer"
     },
     "sic": {
      "type": [
       "integer",
       "null"
      ]
     },
     "state": {
      "type": [
       "string",
       "null"
      ]
     },
     "document_url": {
      "type": "string"
     },
     "section_of_first_mention": {
      "type": [
       "string",
       "null"
      ]
     },
     "topics": {
      "type": [
       "string",
       "null"
      ]
     },
     "shared_clause": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "filing_year",
     "file_date",
     "company",
     "cik",
     "sic",
     "state",
     "document_url",
     "section_of_first_mention",
     "topics",
     "shared_clause"
    ],
    "additionalProperties": false
   },
   "Deepfake10KFilingsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Deepfake10KFilingsRow"
      }
     }
    }
   },
   "GsaVideoProductionRatesRow": {
    "type": "object",
    "properties": {
     "role": {
      "type": "string"
     },
     "labor_category": {
      "type": "string"
     },
     "vendor": {
      "type": "string"
     },
     "gsa_contract": {
      "type": "string"
     },
     "schedule": {
      "type": "string"
     },
     "hourly_ceiling_rate_usd": {
      "type": "number"
     },
     "next_year_rate_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "min_years_experience": {
      "type": "integer"
     },
     "education": {
      "type": "string"
     },
     "business_size": {
      "type": "string"
     },
     "worksite": {
      "type": "string"
     },
     "security_clearance": {
      "type": "boolean"
     },
     "sins": {
      "type": [
       "string",
       "integer"
      ]
     },
     "contract_start": {
      "type": "string"
     },
     "contract_end": {
      "type": "string"
     }
    },
    "required": [
     "role",
     "labor_category",
     "vendor",
     "gsa_contract",
     "schedule",
     "hourly_ceiling_rate_usd",
     "next_year_rate_usd",
     "min_years_experience",
     "education",
     "business_size",
     "worksite",
     "security_clearance",
     "sins",
     "contract_start",
     "contract_end"
    ],
    "additionalProperties": false
   },
   "GsaVideoProductionRatesFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/GsaVideoProductionRatesRow"
      }
     }
    }
   },
   "VideoEditorPayByStateRow": {
    "type": "object",
    "properties": {
     "state": {
      "type": "string"
     },
     "film_video_editors_employed": {
      "type": [
       "number",
       "null"
      ]
     },
     "median_annual_wage_usd": {
      "type": "number"
     },
     "mean_annual_wage_usd": {
      "type": "number"
     },
     "median_hourly_wage_usd": {
      "type": "number"
     },
     "location_quotient": {
      "type": [
       "number",
       "null"
      ]
     },
     "bea_rpp_2024": {
      "type": [
       "number",
       "null"
      ]
     },
     "median_in_national_prices_usd": {
      "type": [
       "integer",
       "null"
      ]
     }
    },
    "required": [
     "state",
     "film_video_editors_employed",
     "median_annual_wage_usd",
     "mean_annual_wage_usd",
     "median_hourly_wage_usd",
     "location_quotient",
     "bea_rpp_2024",
     "median_in_national_prices_usd"
    ],
    "additionalProperties": false
   },
   "VideoEditorPayByStateFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditorPayByStateRow"
      }
     }
    }
   },
   "FilmSchoolProgramsRow": {
    "type": "object",
    "properties": {
     "institution": {
      "type": "string"
     },
     "unitid": {
      "type": [
       "string",
       "integer"
      ]
     },
     "control": {
      "type": "string"
     },
     "credential": {
      "type": "string"
     },
     "cip": {
      "type": "integer"
     },
     "awards_latest_year": {
      "type": [
       "string",
       "integer"
      ]
     },
     "median_earnings_1yr": {
      "type": [
       "string",
       "integer"
      ]
     },
     "median_earnings_5yr": {
      "type": [
       "string",
       "integer"
      ]
     },
     "grads_working_5yr": {
      "type": [
       "string",
       "integer"
      ]
     },
     "grads_above_hs_5yr": {
      "type": [
       "string",
       "integer"
      ]
     },
     "median_debt_stafford_gradplus": {
      "type": [
       "string",
       "integer"
      ]
     }
    },
    "required": [
     "institution",
     "unitid",
     "control",
     "credential",
     "cip",
     "awards_latest_year",
     "median_earnings_1yr",
     "median_earnings_5yr",
     "grads_working_5yr",
     "grads_above_hs_5yr",
     "median_debt_stafford_gradplus"
    ],
    "additionalProperties": false
   },
   "FilmSchoolProgramsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FilmSchoolProgramsRow"
      }
     }
    }
   },
   "FilmSchoolFieldsRow": {
    "type": "object",
    "properties": {
     "credential": {
      "type": "string"
     },
     "field": {
      "type": "string"
     },
     "programs": {
      "type": "integer"
     },
     "programs_with_5yr_earnings": {
      "type": "integer"
     },
     "median_program_earnings_1yr": {
      "type": "integer"
     },
     "median_program_earnings_5yr": {
      "type": "integer"
     },
     "share_above_high_school_5yr_pct": {
      "type": "number"
     },
     "median_program_debt": {
      "type": "integer"
     }
    },
    "required": [
     "credential",
     "field",
     "programs",
     "programs_with_5yr_earnings",
     "median_program_earnings_1yr",
     "median_program_earnings_5yr",
     "share_above_high_school_5yr_pct",
     "median_program_debt"
    ],
    "additionalProperties": false
   },
   "FilmSchoolFieldsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FilmSchoolFieldsRow"
      }
     }
    }
   },
   "FederalVideoWorkforceHeadcountRow": {
    "type": "object",
    "properties": {
     "snapshot_yyyymm": {
      "type": "integer"
     },
     "series_1071_audiovisual_production": {
      "type": "integer"
     },
     "series_1084_visual_information": {
      "type": "integer"
     },
     "series_1060_photography": {
      "type": "integer"
     },
     "series_1035_public_affairs": {
      "type": "integer"
     },
     "series_1082_writing_and_editing": {
      "type": "integer"
     },
     "all_federal_civilian": {
      "type": "integer"
     }
    },
    "required": [
     "snapshot_yyyymm",
     "series_1071_audiovisual_production",
     "series_1084_visual_information",
     "series_1060_photography",
     "series_1035_public_affairs",
     "series_1082_writing_and_editing",
     "all_federal_civilian"
    ],
    "additionalProperties": false
   },
   "FederalVideoWorkforceHeadcountFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FederalVideoWorkforceHeadcountRow"
      }
     }
    }
   },
   "FederalPublicAffairsDepartmentsRow": {
    "type": "object",
    "properties": {
     "department": {
      "type": "string"
     },
     "public_affairs_202412": {
      "type": "integer"
     },
     "public_affairs_202608": {
      "type": "integer"
     },
     "change_pct": {
      "type": "number"
     }
    },
    "required": [
     "department",
     "public_affairs_202412",
     "public_affairs_202608",
     "change_pct"
    ],
    "additionalProperties": false
   },
   "FederalPublicAffairsDepartmentsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FederalPublicAffairsDepartmentsRow"
      }
     }
    }
   },
   "FederalAdvertisingFiscalYearsRow": {
    "type": "object",
    "properties": {
     "fiscal_year": {
      "type": "integer"
     },
     "provisional": {
      "type": "boolean"
     },
     "advertising_r701_usd": {
      "type": "number"
     },
     "public_relations_r708_usd": {
      "type": "number"
     },
     "total_usd": {
      "type": "number"
     },
     "total_fy2025_usd": {
      "type": "number"
     },
     "vendors": {
      "type": "integer"
     },
     "small_business_share": {
      "type": "number"
     },
     "dod_awarded_share": {
      "type": "number"
     },
     "cpi_u_fy_average": {
      "type": "number"
     },
     "cpi_months": {
      "type": "integer"
     },
     "all_federal_contract_obligations_usd": {
      "type": "number"
     }
    },
    "required": [
     "fiscal_year",
     "provisional",
     "advertising_r701_usd",
     "public_relations_r708_usd",
     "total_usd",
     "total_fy2025_usd",
     "vendors",
     "small_business_share",
     "dod_awarded_share",
     "cpi_u_fy_average",
     "cpi_months",
     "all_federal_contract_obligations_usd"
    ],
    "additionalProperties": false
   },
   "FederalAdvertisingFiscalYearsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FederalAdvertisingFiscalYearsRow"
      }
     }
    }
   },
   "FederalAdvertisingLargestAwardsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "funding_office": {
      "type": "string"
     },
     "awarding_office": {
      "type": "string"
     },
     "vendor_parent": {
      "type": "string"
     },
     "psc": {
      "type": "string"
     },
     "obligations_fy2021_2025_usd": {
      "type": "integer"
     },
     "description": {
      "type": "string"
     },
     "usaspending_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "funding_office",
     "awarding_office",
     "vendor_parent",
     "psc",
     "obligations_fy2021_2025_usd",
     "description",
     "usaspending_url"
    ],
    "additionalProperties": false
   },
   "FederalAdvertisingLargestAwardsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FederalAdvertisingLargestAwardsRow"
      }
     }
    }
   },
   "FederalVideoProductionFiscalYearsRow": {
    "type": "object",
    "properties": {
     "fiscal_year": {
      "type": "integer"
     },
     "provisional": {
      "type": "boolean"
     },
     "net_obligations_usd": {
      "type": "number"
     },
     "net_obligations_fy2025_usd": {
      "type": "number"
     },
     "transactions": {
      "type": "integer"
     },
     "new_awards": {
      "type": "integer"
     },
     "new_awards_25k_plus": {
      "type": "integer"
     },
     "vendors": {
      "type": "integer"
     },
     "small_business_share": {
      "type": "number"
     },
     "set_aside_share": {
      "type": "number"
     },
     "not_competed_share": {
      "type": "number"
     },
     "dod_share": {
      "type": "number"
     },
     "cpi_u_fy_average": {
      "type": "number"
     },
     "cpi_months": {
      "type": "integer"
     },
     "all_federal_contract_obligations_usd": {
      "type": "number"
     }
    },
    "required": [
     "fiscal_year",
     "provisional",
     "net_obligations_usd",
     "net_obligations_fy2025_usd",
     "transactions",
     "new_awards",
     "new_awards_25k_plus",
     "vendors",
     "small_business_share",
     "set_aside_share",
     "not_competed_share",
     "dod_share",
     "cpi_u_fy_average",
     "cpi_months",
     "all_federal_contract_obligations_usd"
    ],
    "additionalProperties": false
   },
   "FederalVideoProductionFiscalYearsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FederalVideoProductionFiscalYearsRow"
      }
     }
    }
   },
   "FederalVideoProductionAwardsRow": {
    "type": "object",
    "properties": {
     "fiscal_year_of_award": {
      "type": "integer"
     },
     "awarding_agency": {
      "type": "string"
     },
     "awarding_sub_agency": {
      "type": "string"
     },
     "recipient": {
      "type": "string"
     },
     "psc": {
      "type": "string"
     },
     "naics": {
      "type": "integer"
     },
     "award_type": {
      "type": "string"
     },
     "net_obligations_to_date_usd": {
      "type": "number"
     },
     "extent_competed": {
      "type": "string"
     },
     "offers_received": {
      "type": [
       "integer",
       "null"
      ]
     },
     "small_business": {
      "type": "boolean"
     },
     "set_aside": {
      "type": [
       "string",
       "null"
      ]
     },
     "place_of_performance_state": {
      "type": [
       "string",
       "null"
      ]
     },
     "description": {
      "type": "string"
     },
     "usaspending_url": {
      "type": "string"
     }
    },
    "required": [
     "fiscal_year_of_award",
     "awarding_agency",
     "awarding_sub_agency",
     "recipient",
     "psc",
     "naics",
     "award_type",
     "net_obligations_to_date_usd",
     "extent_competed",
     "offers_received",
     "small_business",
     "set_aside",
     "place_of_performance_state",
     "description",
     "usaspending_url"
    ],
    "additionalProperties": false
   },
   "FederalVideoProductionAwardsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/FederalVideoProductionAwardsRow"
      }
     }
    }
   },
   "AiVideoGeneratorAppsAppStoreRow": {
    "type": "object",
    "properties": {
     "app": {
      "type": "string"
     },
     "seller": {
      "type": "string"
     },
     "app_store_url": {
      "type": "string"
     },
     "us_ratings": {
      "type": "integer"
     },
     "average_rating": {
      "type": "number"
     },
     "download_price_usd": {
      "type": "number"
     },
     "released": {
      "type": "string"
     },
     "last_updated": {
      "type": "string"
     },
     "top_grossing_photo_video_rank": {
      "type": [
       "integer",
       "null"
      ]
     },
     "top_free_photo_video_rank": {
      "type": [
       "integer",
       "null"
      ]
     },
     "lowest_weekly_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "lowest_monthly_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "lowest_yearly_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "cheapest_credit_pack_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "lifetime_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "in_app_purchases_listed": {
      "type": "string"
     }
    },
    "required": [
     "app",
     "seller",
     "app_store_url",
     "us_ratings",
     "average_rating",
     "download_price_usd",
     "released",
     "last_updated",
     "top_grossing_photo_video_rank",
     "top_free_photo_video_rank",
     "lowest_weekly_usd",
     "lowest_monthly_usd",
     "lowest_yearly_usd",
     "cheapest_credit_pack_usd",
     "lifetime_usd",
     "in_app_purchases_listed"
    ],
    "additionalProperties": false
   },
   "AiVideoGeneratorAppsAppStoreFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/AiVideoGeneratorAppsAppStoreRow"
      }
     }
    }
   },
   "VideoEditingAppsGooglePlayRow": {
    "type": "object",
    "properties": {
     "ios_app": {
      "type": "string"
     },
     "google_play_package": {
      "type": "string"
     },
     "google_play_title": {
      "type": "string"
     },
     "google_play_developer": {
      "type": "string"
     },
     "installs_band": {
      "type": "string"
     },
     "reviews": {
      "type": [
       "string",
       "integer"
      ]
     },
     "stars": {
      "type": "number"
     },
     "match_rule": {
      "type": "string"
     }
    },
    "required": [
     "ios_app",
     "google_play_package",
     "google_play_title",
     "google_play_developer",
     "installs_band",
     "reviews",
     "stars",
     "match_rule"
    ],
    "additionalProperties": false
   },
   "VideoEditingAppsGooglePlayFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditingAppsGooglePlayRow"
      }
     }
    }
   },
   "VideoEditingAppsAppStoreRow": {
    "type": "object",
    "properties": {
     "app": {
      "type": "string"
     },
     "seller": {
      "type": "string"
     },
     "app_store_url": {
      "type": "string"
     },
     "us_ratings": {
      "type": "integer"
     },
     "average_rating": {
      "type": "number"
     },
     "download_price_usd": {
      "type": "number"
     },
     "released": {
      "type": "string"
     },
     "last_updated": {
      "type": "string"
     },
     "top_grossing_photo_video_rank": {
      "type": [
       "integer",
       "null"
      ]
     },
     "top_free_photo_video_rank": {
      "type": [
       "integer",
       "null"
      ]
     },
     "lowest_weekly_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "lowest_monthly_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "lowest_yearly_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "lifetime_usd": {
      "type": [
       "number",
       "null"
      ]
     },
     "in_app_purchases_listed": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "app",
     "seller",
     "app_store_url",
     "us_ratings",
     "average_rating",
     "download_price_usd",
     "released",
     "last_updated",
     "top_grossing_photo_video_rank",
     "top_free_photo_video_rank",
     "lowest_weekly_usd",
     "lowest_monthly_usd",
     "lowest_yearly_usd",
     "lifetime_usd",
     "in_app_purchases_listed"
    ],
    "additionalProperties": false
   },
   "VideoEditingAppsAppStoreFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditingAppsAppStoreRow"
      }
     }
    }
   },
   "VideoEditorsWikipediaRow": {
    "type": "object",
    "properties": {
     "editor": {
      "type": "string"
     },
     "wikipedia_article": {
      "type": "string"
     },
     "views_202510_202609": {
      "type": "integer"
     },
     "share_pct_of_tracked_editors": {
      "type": "number"
     },
     "views_202010_202109": {
      "type": "integer"
     },
     "views_per_billion_202010_202109": {
      "type": "number"
     },
     "views_per_billion_202510_202609": {
      "type": "number"
     },
     "change_per_billion_pct": {
      "type": [
       "integer",
       "null"
      ]
     },
     "redirects_counted": {
      "type": "integer"
     },
     "article_first_revision": {
      "type": "string"
     }
    },
    "required": [
     "editor",
     "wikipedia_article",
     "views_202510_202609",
     "share_pct_of_tracked_editors",
     "views_202010_202109",
     "views_per_billion_202010_202109",
     "views_per_billion_202510_202609",
     "change_per_billion_pct",
     "redirects_counted",
     "article_first_revision"
    ],
    "additionalProperties": false
   },
   "VideoEditorsWikipediaFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditorsWikipediaRow"
      }
     }
    }
   },
   "VideoEditorsWikipediaMonthlyRow": {
    "type": "object",
    "properties": {
     "month": {
      "type": "string"
     },
     "editor": {
      "type": "string"
     },
     "views_article_plus_redirects": {
      "type": "integer"
     },
     "english_wikipedia_total_human_views": {
      "type": "integer"
     }
    },
    "required": [
     "month",
     "editor",
     "views_article_plus_redirects",
     "english_wikipedia_total_human_views"
    ],
    "additionalProperties": false
   },
   "VideoEditorsWikipediaMonthlyFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/VideoEditorsWikipediaMonthlyRow"
      }
     }
    }
   },
   "CreatorEconomy10KTermsRow": {
    "type": "object",
    "properties": {
     "term": {
      "type": "string"
     },
     "year": {
      "type": "integer"
     },
     "tenk_filings_main_document": {
      "type": "integer"
     },
     "share_pct_main_document": {
      "type": "number"
     },
     "tenk_filings_any_document": {
      "type": "integer"
     },
     "share_pct_any_document": {
      "type": "number"
     },
     "tenk_filings_total": {
      "type": "integer"
     }
    },
    "required": [
     "term",
     "year",
     "tenk_filings_main_document",
     "share_pct_main_document",
     "tenk_filings_any_document",
     "share_pct_any_document",
     "tenk_filings_total"
    ],
    "additionalProperties": false
   },
   "CreatorEconomy10KTermsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/CreatorEconomy10KTermsRow"
      }
     }
    }
   },
   "YoutubeViewCountChangeRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "upload_type": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "published_utc": {
      "type": "string"
     },
     "period": {
      "type": "string"
     },
     "age_days_when_read": {
      "type": "number"
     },
     "seconds": {
      "type": "integer"
     },
     "views": {
      "type": "integer"
     },
     "likes": {
      "type": [
       "integer",
       "null"
      ]
     },
     "comments": {
      "type": [
       "integer",
       "null"
      ]
     },
     "made_for_kids": {
      "type": "boolean"
     },
     "counted": {
      "type": "string"
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "channel",
     "upload_type",
     "video_id",
     "published_utc",
     "period",
     "age_days_when_read",
     "seconds",
     "views",
     "likes",
     "comments",
     "made_for_kids",
     "counted",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeViewCountChangeFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeViewCountChangeRow"
      }
     }
    }
   },
   "YoutubeViewCountChangeChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "upload_type": {
      "type": "string"
     },
     "uploads_before": {
      "type": "integer"
     },
     "median_likes_per_1000_before": {
      "type": "number"
     },
     "uploads_after": {
      "type": "integer"
     },
     "median_likes_per_1000_after": {
      "type": "number"
     },
     "change_pct": {
      "type": "integer"
     },
     "median_views_before": {
      "type": "integer"
     },
     "median_views_after": {
      "type": "integer"
     }
    },
    "required": [
     "rank",
     "channel",
     "upload_type",
     "uploads_before",
     "median_likes_per_1000_before",
     "uploads_after",
     "median_likes_per_1000_after",
     "change_pct",
     "median_views_before",
     "median_views_after"
    ],
    "additionalProperties": false
   },
   "YoutubeViewCountChangeChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeViewCountChangeChannelsRow"
      }
     }
    }
   },
   "YoutubeCreatorCommentsRow": {
    "type": "object",
    "properties": {
     "video_id": {
      "type": "string"
     },
     "channel": {
      "type": "string"
     },
     "format": {
      "type": "string"
     },
     "published_utc": {
      "type": "string"
     },
     "views": {
      "type": "integer"
     },
     "comments": {
      "type": "integer"
     },
     "threads_read": {
      "type": "integer"
     },
     "own_comment_first": {
      "type": "integer"
     },
     "own_top_level_comments": {
      "type": "integer"
     },
     "own_replies_shown": {
      "type": "integer"
     },
     "threads_with_replies_shown": {
      "type": "integer"
     }
    },
    "required": [
     "video_id",
     "channel",
     "format",
     "published_utc",
     "views",
     "comments",
     "threads_read",
     "own_comment_first",
     "own_top_level_comments",
     "own_replies_shown",
     "threads_with_replies_shown"
    ],
    "additionalProperties": false
   },
   "YoutubeCreatorCommentsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeCreatorCommentsRow"
      }
     }
    }
   },
   "YoutubeTitleStyleRow": {
    "type": "object",
    "properties": {
     "video_id": {
      "type": "string"
     },
     "channel": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "category_id": {
      "type": "string"
     },
     "seconds": {
      "type": "integer"
     },
     "charts": {
      "type": "string"
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "video_id",
     "channel",
     "title",
     "category_id",
     "seconds",
     "charts",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeTitleStyleFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeTitleStyleRow"
      }
     }
    }
   },
   "YoutubeSponsorshipDisclosureRow": {
    "type": "object",
    "properties": {
     "video_id": {
      "type": "string"
     },
     "channel": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "category": {
      "type": "string"
     },
     "charts": {
      "type": "string"
     },
     "seconds": {
      "type": "integer"
     },
     "views": {
      "type": [
       "integer",
       "null"
      ]
     },
     "paid_promotion_label": {
      "type": "string"
     },
     "description_names_sponsor": {
      "type": "string"
     },
     "promo_code_only": {
      "type": "string"
     },
     "affiliate_link": {
      "type": "string"
     },
     "matched_phrases": {
      "type": [
       "string",
       "null"
      ]
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "video_id",
     "channel",
     "title",
     "category",
     "charts",
     "seconds",
     "views",
     "paid_promotion_label",
     "description_names_sponsor",
     "promo_code_only",
     "affiliate_link",
     "matched_phrases",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeSponsorshipDisclosureFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeSponsorshipDisclosureRow"
      }
     }
    }
   },
   "PodcastsOnYoutubeRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "show": {
      "type": "string"
     },
     "genre": {
      "type": "string"
     },
     "publisher": {
      "type": "string"
     },
     "youtube_status": {
      "type": "string"
     },
     "channel": {
      "type": [
       "string",
       "null"
      ]
     },
     "channel_id": {
      "type": [
       "string",
       "null"
      ]
     },
     "subscribers": {
      "type": [
       "integer",
       "null"
      ]
     },
     "full_episodes_matched": {
      "type": "integer"
     },
     "clips_matched": {
      "type": "integer"
     },
     "found_by": {
      "type": [
       "string",
       "null"
      ]
     },
     "median_lag_hours": {
      "type": [
       "number",
       "null"
      ]
     },
     "median_length_ratio": {
      "type": [
       "number",
       "null"
      ]
     },
     "feed_links_youtube": {
      "type": "boolean"
     },
     "site_links_youtube": {
      "type": "boolean"
     }
    },
    "required": [
     "rank",
     "show",
     "genre",
     "publisher",
     "youtube_status",
     "channel",
     "channel_id",
     "subscribers",
     "full_episodes_matched",
     "clips_matched",
     "found_by",
     "median_lag_hours",
     "median_length_ratio",
     "feed_links_youtube",
     "site_links_youtube"
    ],
    "additionalProperties": false
   },
   "PodcastsOnYoutubeFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/PodcastsOnYoutubeRow"
      }
     }
    }
   },
   "Sp500YoutubeRow": {
    "type": "object",
    "properties": {
     "symbol": {
      "type": "string"
     },
     "company": {
      "type": "string"
     },
     "sector": {
      "type": "string"
     },
     "homepage": {
      "type": "string"
     },
     "homepage_read": {
      "type": "integer"
     },
     "homepage_links_youtube": {
      "type": "integer"
     },
     "homepage_embeds_youtube": {
      "type": "integer"
     },
     "channel_id": {
      "type": [
       "string",
       "null"
      ]
     },
     "channel_found_by": {
      "type": [
       "string",
       "null"
      ]
     },
     "subscribers": {
      "type": [
       "integer",
       "null"
      ]
     },
     "uploads_12m": {
      "type": [
       "integer",
       "null"
      ]
     },
     "uploads_12m_is_floor": {
      "type": [
       "integer",
       "null"
      ]
     },
     "shorts_12m": {
      "type": [
       "integer",
       "null"
      ]
     },
     "last_upload": {
      "type": [
       "string",
       "null"
      ]
     },
     "channel_created": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "symbol",
     "company",
     "sector",
     "homepage",
     "homepage_read",
     "homepage_links_youtube",
     "homepage_embeds_youtube",
     "channel_id",
     "channel_found_by",
     "subscribers",
     "uploads_12m",
     "uploads_12m_is_floor",
     "shorts_12m",
     "last_upload",
     "channel_created"
    ],
    "additionalProperties": false
   },
   "Sp500YoutubeFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/Sp500YoutubeRow"
      }
     }
    }
   },
   "YoutubeEngagementRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "country_wikipedia": {
      "type": "string"
     },
     "upload_type": {
      "type": "string"
     },
     "youtube_category": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "published_utc": {
      "type": "string"
     },
     "age_days_when_read": {
      "type": "number"
     },
     "seconds": {
      "type": [
       "integer",
       "null"
      ]
     },
     "views": {
      "type": "integer"
     },
     "likes": {
      "type": [
       "integer",
       "null"
      ]
     },
     "comments": {
      "type": [
       "integer",
       "null"
      ]
     },
     "made_for_kids": {
      "type": "boolean"
     },
     "engagement_rate_pct": {
      "type": [
       "number",
       "null"
      ]
     },
     "counted": {
      "type": "string"
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "channel",
     "country_wikipedia",
     "upload_type",
     "youtube_category",
     "video_id",
     "published_utc",
     "age_days_when_read",
     "seconds",
     "views",
     "likes",
     "comments",
     "made_for_kids",
     "engagement_rate_pct",
     "counted",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeEngagementFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeEngagementRow"
      }
     }
    }
   },
   "YoutubeEngagementChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "country_wikipedia": {
      "type": "string"
     },
     "uploads_read": {
      "type": "integer"
     },
     "videos_with_a_rate": {
      "type": "integer"
     },
     "median_video_engagement_pct": {
      "type": [
       "number",
       "null"
      ]
     },
     "median_video_likes_per_1000_views": {
      "type": [
       "number",
       "null"
      ]
     },
     "median_video_comments_per_1000_views": {
      "type": [
       "number",
       "null"
      ]
     },
     "shorts_with_a_rate": {
      "type": "integer"
     },
     "median_short_engagement_pct": {
      "type": [
       "number",
       "null"
      ]
     },
     "made_for_kids_uploads": {
      "type": "integer"
     }
    },
    "required": [
     "rank",
     "channel",
     "country_wikipedia",
     "uploads_read",
     "videos_with_a_rate",
     "median_video_engagement_pct",
     "median_video_likes_per_1000_views",
     "median_video_comments_per_1000_views",
     "shorts_with_a_rate",
     "median_short_engagement_pct",
     "made_for_kids_uploads"
    ],
    "additionalProperties": false
   },
   "YoutubeEngagementChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeEngagementChannelsRow"
      }
     }
    }
   },
   "YoutubeThumbnailsRow": {
    "type": "object",
    "properties": {
     "n": {
      "type": "integer"
     },
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "upload_date": {
      "type": "string"
     },
     "human_faces": {
      "type": "integer"
     },
     "animated_face": {
      "type": "boolean"
     },
     "face_size": {
      "type": "string"
     },
     "open_mouth": {
      "type": [
       "boolean",
       "null"
      ]
     },
     "headline_text": {
      "type": [
       "string",
       "null"
      ]
     },
     "headline_words": {
      "type": "integer"
     },
     "text_script": {
      "type": "string"
     },
     "logo": {
      "type": "boolean"
     },
     "fine_print": {
      "type": "boolean"
     },
     "arrow_or_circle": {
      "type": "boolean"
     },
     "split_screen": {
      "type": "boolean"
     },
     "uncertain_fields": {
      "type": [
       "string",
       "null"
      ]
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "n",
     "rank",
     "channel",
     "video_id",
     "title",
     "upload_date",
     "human_faces",
     "animated_face",
     "face_size",
     "open_mouth",
     "headline_text",
     "headline_words",
     "text_script",
     "logo",
     "fine_print",
     "arrow_or_circle",
     "split_screen",
     "uncertain_fields",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeThumbnailsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeThumbnailsRow"
      }
     }
    }
   },
   "YoutubeThumbnailChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "category": {
      "type": "string"
     },
     "language": {
      "type": "string"
     },
     "thumbnails": {
      "type": "integer"
     },
     "with_human_face": {
      "type": "integer"
     },
     "with_drawn_face": {
      "type": "integer"
     },
     "with_headline_text": {
      "type": "integer"
     },
     "median_words_when_text": {
      "type": "number"
     }
    },
    "required": [
     "rank",
     "channel",
     "category",
     "language",
     "thumbnails",
     "with_human_face",
     "with_drawn_face",
     "with_headline_text",
     "median_words_when_text"
    ],
    "additionalProperties": false
   },
   "YoutubeThumbnailChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeThumbnailChannelsRow"
      }
     }
    }
   },
   "YoutubeDubbingRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "video_id": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "upload_date": {
      "type": "string"
     },
     "minutes": {
      "type": "number"
     },
     "original_language": {
      "type": [
       "string",
       "null"
      ]
     },
     "channel_dub_count": {
      "type": "integer"
     },
     "channel_dub_languages": {
      "type": [
       "string",
       "null"
      ]
     },
     "youtube_auto_dub_count": {
      "type": "integer"
     },
     "youtube_auto_dub_languages": {
      "type": [
       "string",
       "null"
      ]
     },
     "own_caption_track_count": {
      "type": "integer"
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "rank",
     "channel",
     "video_id",
     "title",
     "upload_date",
     "minutes",
     "original_language",
     "channel_dub_count",
     "channel_dub_languages",
     "youtube_auto_dub_count",
     "youtube_auto_dub_languages",
     "own_caption_track_count",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeDubbingFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeDubbingRow"
      }
     }
    }
   },
   "YoutubeDubbingChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "category": {
      "type": "string"
     },
     "language": {
      "type": "string"
     },
     "country": {
      "type": [
       "string",
       "null"
      ]
     },
     "subscribers_millions": {
      "type": "number"
     },
     "videos_checked": {
      "type": "integer"
     },
     "videos_with_any_dub": {
      "type": "integer"
     },
     "videos_with_channel_dubs": {
      "type": "integer"
     },
     "videos_with_youtube_auto_dubs": {
      "type": "integer"
     },
     "max_dub_languages_one_video": {
      "type": "integer"
     },
     "videos_with_own_captions": {
      "type": "integer"
     }
    },
    "required": [
     "rank",
     "channel",
     "category",
     "language",
     "country",
     "subscribers_millions",
     "videos_checked",
     "videos_with_any_dub",
     "videos_with_channel_dubs",
     "videos_with_youtube_auto_dubs",
     "max_dub_languages_one_video",
     "videos_with_own_captions"
    ],
    "additionalProperties": false
   },
   "YoutubeDubbingChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeDubbingChannelsRow"
      }
     }
    }
   },
   "YoutubeAutoCaptionAccuracyRow": {
    "type": "object",
    "properties": {
     "channel": {
      "type": "string"
     },
     "id": {
      "type": "string"
     },
     "title": {
      "type": "string"
     },
     "upload_date": {
      "type": "string"
     },
     "minutes": {
      "type": "number"
     },
     "ref_words": {
      "type": "integer"
     },
     "auto_words": {
      "type": "integer"
     },
     "words_per_minute": {
      "type": "integer"
     },
     "substitutions": {
      "type": "integer"
     },
     "deletions": {
      "type": "integer"
     },
     "insertions": {
      "type": "integer"
     },
     "missed_pct": {
      "type": "number"
     },
     "wer_pct": {
      "type": "number"
     },
     "naive_wer_pct": {
      "type": "number"
     },
     "cap_terms": {
      "type": "integer"
     },
     "cap_terms_missed": {
      "type": "integer"
     },
     "other_words": {
      "type": "integer"
     },
     "other_words_missed": {
      "type": "integer"
     },
     "video_url": {
      "type": "string"
     }
    },
    "required": [
     "channel",
     "id",
     "title",
     "upload_date",
     "minutes",
     "ref_words",
     "auto_words",
     "words_per_minute",
     "substitutions",
     "deletions",
     "insertions",
     "missed_pct",
     "wer_pct",
     "naive_wer_pct",
     "cap_terms",
     "cap_terms_missed",
     "other_words",
     "other_words_missed",
     "video_url"
    ],
    "additionalProperties": false
   },
   "YoutubeAutoCaptionAccuracyFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeAutoCaptionAccuracyRow"
      }
     }
    }
   },
   "YoutubeCaptionCoverageChannelsRow": {
    "type": "object",
    "properties": {
     "rank": {
      "type": "integer"
     },
     "channel": {
      "type": "string"
     },
     "language": {
      "type": "string"
     },
     "subscribers_millions": {
      "type": "number"
     },
     "videos_checked": {
      "type": "integer"
     },
     "with_own_captions": {
      "type": "integer"
     },
     "with_own_english_captions": {
      "type": "integer"
     },
     "automatic_only": {
      "type": "integer"
     },
     "no_captions": {
      "type": "integer"
     },
     "max_uploaded_languages": {
      "type": "integer"
     }
    },
    "required": [
     "rank",
     "channel",
     "language",
     "subscribers_millions",
     "videos_checked",
     "with_own_captions",
     "with_own_english_captions",
     "automatic_only",
     "no_captions",
     "max_uploaded_languages"
    ],
    "additionalProperties": false
   },
   "YoutubeCaptionCoverageChannelsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/YoutubeCaptionCoverageChannelsRow"
      }
     }
    }
   },
   "HomepageVideoRow": {
    "type": "object",
    "properties": {
     "tranco_rank": {
      "type": "integer"
     },
     "domain": {
      "type": "string"
     },
     "result": {
      "type": "string"
     },
     "video": {
      "type": [
       "boolean",
       "null"
      ]
     },
     "above_fold": {
      "type": [
       "boolean",
       "null"
      ]
     },
     "muted_autoplay_no_controls": {
      "type": [
       "boolean",
       "null"
      ]
     },
     "self_hosted_file": {
      "type": [
       "boolean",
       "null"
      ]
     },
     "video_platforms": {
      "type": [
       "string",
       "null"
      ]
     },
     "stream_host_not_identified": {
      "type": [
       "boolean",
       "null"
      ]
     },
     "video_elements": {
      "type": [
       "integer",
       "null"
      ]
     },
     "player_iframes": {
      "type": [
       "integer",
       "null"
      ]
     },
     "click_to_play_placeholders": {
      "type": [
       "integer",
       "null"
      ]
     },
     "largest_video_mb": {
      "type": [
       "number",
       "null"
      ]
     },
     "background_loop_mb": {
      "type": [
       "number",
       "null"
      ]
     },
     "background_loop_seconds": {
      "type": [
       "number",
       "null"
      ]
     },
     "background_loop_height": {
      "type": [
       "integer",
       "null"
      ]
     },
     "final_url": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "tranco_rank",
     "domain",
     "result",
     "video",
     "above_fold",
     "muted_autoplay_no_controls",
     "self_hosted_file",
     "video_platforms",
     "stream_host_not_identified",
     "video_elements",
     "player_iframes",
     "click_to_play_placeholders",
     "largest_video_mb",
     "background_loop_mb",
     "background_loop_seconds",
     "background_loop_height",
     "final_url"
    ],
    "additionalProperties": false
   },
   "HomepageVideoFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/HomepageVideoRow"
      }
     }
    }
   },
   "HomepageSeoRow": {
    "type": "object",
    "properties": {
     "tranco_rank": {
      "type": "integer"
     },
     "domain": {
      "type": "string"
     },
     "title": {
      "type": [
       "string",
       "null"
      ]
     },
     "title_length": {
      "type": "integer"
     },
     "meta_description_length": {
      "type": [
       "integer",
       "null"
      ]
     },
     "canonical": {
      "type": "integer"
     },
     "html_lang": {
      "type": [
       "string",
       "null"
      ]
     },
     "viewport": {
      "type": "integer"
     },
     "hreflang_links": {
      "type": "integer"
     },
     "og_title": {
      "type": "integer"
     },
     "og_image": {
      "type": "integer"
     },
     "twitter_card": {
      "type": [
       "string",
       "null"
      ]
     },
     "h1_count": {
      "type": "integer"
     },
     "jsonld_types": {
      "type": [
       "string",
       "null"
      ]
     },
     "jsonld_only_after_javascript": {
      "type": [
       "integer",
       "null"
      ]
     }
    },
    "required": [
     "tranco_rank",
     "domain",
     "title",
     "title_length",
     "meta_description_length",
     "canonical",
     "html_lang",
     "viewport",
     "hreflang_links",
     "og_title",
     "og_image",
     "twitter_card",
     "h1_count",
     "jsonld_types",
     "jsonld_only_after_javascript"
    ],
    "additionalProperties": false
   },
   "HomepageSeoFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/HomepageSeoRow"
      }
     }
    }
   },
   "AiCrawlerRobotsTxtRow": {
    "type": "object",
    "properties": {
     "tranco_rank": {
      "type": "integer"
     },
     "domain": {
      "type": "string"
     },
     "robots_txt_readable": {
      "type": "integer"
     },
     "blocks_all_crawlers_via_star": {
      "type": "integer"
     },
     "llms_txt": {
      "type": "integer"
     },
     "GPTBot_blocked": {
      "type": "integer"
     },
     "OAI-SearchBot_blocked": {
      "type": "integer"
     },
     "ChatGPT-User_blocked": {
      "type": "integer"
     },
     "ClaudeBot_blocked": {
      "type": "integer"
     },
     "Claude-SearchBot_blocked": {
      "type": "integer"
     },
     "Claude-User_blocked": {
      "type": "integer"
     },
     "anthropic-ai_blocked": {
      "type": "integer"
     },
     "Google-Extended_blocked": {
      "type": "integer"
     },
     "Applebot-Extended_blocked": {
      "type": "integer"
     },
     "PerplexityBot_blocked": {
      "type": "integer"
     },
     "Perplexity-User_blocked": {
      "type": "integer"
     },
     "CCBot_blocked": {
      "type": "integer"
     },
     "Meta-ExternalAgent_blocked": {
      "type": "integer"
     },
     "Bytespider_blocked": {
      "type": "integer"
     },
     "Amazonbot_blocked": {
      "type": "integer"
     },
     "cohere-ai_blocked": {
      "type": "integer"
     },
     "Diffbot_blocked": {
      "type": "integer"
     },
     "DuckAssistBot_blocked": {
      "type": "integer"
     },
     "MistralAI-User_blocked": {
      "type": "integer"
     },
     "Googlebot_blocked": {
      "type": "integer"
     },
     "Bingbot_blocked": {
      "type": "integer"
     },
     "GPTBot_named": {
      "type": "integer"
     },
     "OAI-SearchBot_named": {
      "type": "integer"
     },
     "ChatGPT-User_named": {
      "type": "integer"
     },
     "ClaudeBot_named": {
      "type": "integer"
     },
     "Claude-SearchBot_named": {
      "type": "integer"
     },
     "Claude-User_named": {
      "type": "integer"
     },
     "anthropic-ai_named": {
      "type": "integer"
     },
     "Google-Extended_named": {
      "type": "integer"
     },
     "Applebot-Extended_named": {
      "type": "integer"
     },
     "PerplexityBot_named": {
      "type": "integer"
     },
     "Perplexity-User_named": {
      "type": "integer"
     },
     "CCBot_named": {
      "type": "integer"
     },
     "Meta-ExternalAgent_named": {
      "type": "integer"
     },
     "Bytespider_named": {
      "type": "integer"
     },
     "Amazonbot_named": {
      "type": "integer"
     },
     "cohere-ai_named": {
      "type": "integer"
     },
     "Diffbot_named": {
      "type": "integer"
     },
     "DuckAssistBot_named": {
      "type": "integer"
     },
     "MistralAI-User_named": {
      "type": "integer"
     },
     "Googlebot_named": {
      "type": "integer"
     },
     "Bingbot_named": {
      "type": "integer"
     }
    },
    "required": [
     "tranco_rank",
     "domain",
     "robots_txt_readable",
     "blocks_all_crawlers_via_star",
     "llms_txt",
     "GPTBot_blocked",
     "OAI-SearchBot_blocked",
     "ChatGPT-User_blocked",
     "ClaudeBot_blocked",
     "Claude-SearchBot_blocked",
     "Claude-User_blocked",
     "anthropic-ai_blocked",
     "Google-Extended_blocked",
     "Applebot-Extended_blocked",
     "PerplexityBot_blocked",
     "Perplexity-User_blocked",
     "CCBot_blocked",
     "Meta-ExternalAgent_blocked",
     "Bytespider_blocked",
     "Amazonbot_blocked",
     "cohere-ai_blocked",
     "Diffbot_blocked",
     "DuckAssistBot_blocked",
     "MistralAI-User_blocked",
     "Googlebot_blocked",
     "Bingbot_blocked",
     "GPTBot_named",
     "OAI-SearchBot_named",
     "ChatGPT-User_named",
     "ClaudeBot_named",
     "Claude-SearchBot_named",
     "Claude-User_named",
     "anthropic-ai_named",
     "Google-Extended_named",
     "Applebot-Extended_named",
     "PerplexityBot_named",
     "Perplexity-User_named",
     "CCBot_named",
     "Meta-ExternalAgent_named",
     "Bytespider_named",
     "Amazonbot_named",
     "cohere-ai_named",
     "Diffbot_named",
     "DuckAssistBot_named",
     "MistralAI-User_named",
     "Googlebot_named",
     "Bingbot_named"
    ],
    "additionalProperties": false
   },
   "AiCrawlerRobotsTxtFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/AiCrawlerRobotsTxtRow"
      }
     }
    }
   },
   "WebsiteThirdPartyToolsRow": {
    "type": "object",
    "properties": {
     "tranco_rank": {
      "type": "integer"
     },
     "domain": {
      "type": "string"
     },
     "other_domains_contacted": {
      "type": "integer"
     },
     "requests_first_10s": {
      "type": "integer"
     },
     "chat_widget": {
      "type": [
       "string",
       "null"
      ]
     },
     "ai_assistant_button": {
      "type": "integer"
     },
     "Google Tag Manager / gtag.js": {
      "type": "integer"
     },
     "Adobe Launch": {
      "type": "integer"
     },
     "Tealium": {
      "type": "integer"
     },
     "Google Analytics": {
      "type": "integer"
     },
     "Adobe Analytics": {
      "type": "integer"
     },
     "Segment": {
      "type": "integer"
     },
     "Amplitude": {
      "type": "integer"
     },
     "Mixpanel": {
      "type": "integer"
     },
     "Heap": {
      "type": "integer"
     },
     "Yandex Metrica": {
      "type": "integer"
     },
     "Baidu Tongji": {
      "type": "integer"
     },
     "Cloudflare Web Analytics": {
      "type": "integer"
     },
     "Google Ads / DoubleClick": {
      "type": "integer"
     },
     "Meta Pixel": {
      "type": "integer"
     },
     "TikTok Pixel": {
      "type": "integer"
     },
     "LinkedIn Insight Tag": {
      "type": "integer"
     },
     "X (Twitter) Pixel": {
      "type": "integer"
     },
     "Microsoft UET (Bing Ads)": {
      "type": "integer"
     },
     "Criteo": {
      "type": "integer"
     },
     "Amazon Ads": {
      "type": "integer"
     },
     "Reddit Pixel": {
      "type": "integer"
     },
     "Hotjar": {
      "type": "integer"
     },
     "Microsoft Clarity": {
      "type": "integer"
     },
     "FullStory": {
      "type": "integer"
     },
     "Contentsquare": {
      "type": "integer"
     },
     "Quantum Metric": {
      "type": "integer"
     },
     "OneTrust": {
      "type": "integer"
     },
     "Cookiebot": {
      "type": "integer"
     },
     "TrustArc": {
      "type": "integer"
     },
     "Usercentrics": {
      "type": "integer"
     },
     "Didomi": {
      "type": "integer"
     },
     "New Relic": {
      "type": "integer"
     },
     "Datadog RUM": {
      "type": "integer"
     },
     "Sentry": {
      "type": "integer"
     },
     "Dynatrace": {
      "type": "integer"
     },
     "Akamai mPulse": {
      "type": "integer"
     },
     "Optimizely": {
      "type": "integer"
     },
     "VWO": {
      "type": "integer"
     },
     "Google Fonts": {
      "type": "integer"
     },
     "Adobe Fonts": {
      "type": "integer"
     }
    },
    "required": [
     "tranco_rank",
     "domain",
     "other_domains_contacted",
     "requests_first_10s",
     "chat_widget",
     "ai_assistant_button",
     "Google Tag Manager / gtag.js",
     "Adobe Launch",
     "Tealium",
     "Google Analytics",
     "Adobe Analytics",
     "Segment",
     "Amplitude",
     "Mixpanel",
     "Heap",
     "Yandex Metrica",
     "Baidu Tongji",
     "Cloudflare Web Analytics",
     "Google Ads / DoubleClick",
     "Meta Pixel",
     "TikTok Pixel",
     "LinkedIn Insight Tag",
     "X (Twitter) Pixel",
     "Microsoft UET (Bing Ads)",
     "Criteo",
     "Amazon Ads",
     "Reddit Pixel",
     "Hotjar",
     "Microsoft Clarity",
     "FullStory",
     "Contentsquare",
     "Quantum Metric",
     "OneTrust",
     "Cookiebot",
     "TrustArc",
     "Usercentrics",
     "Didomi",
     "New Relic",
     "Datadog RUM",
     "Sentry",
     "Dynatrace",
     "Akamai mPulse",
     "Optimizely",
     "VWO",
     "Google Fonts",
     "Adobe Fonts"
    ],
    "additionalProperties": false
   },
   "WebsiteThirdPartyToolsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/WebsiteThirdPartyToolsRow"
      }
     }
    }
   },
   "WebsiteFontsRow": {
    "type": "object",
    "properties": {
     "tranco_rank": {
      "type": "integer"
     },
     "domain": {
      "type": "string"
     },
     "body_font_first_choice": {
      "type": [
       "string",
       "null"
      ]
     },
     "heading_font_first_choice": {
      "type": [
       "string",
       "null"
      ]
     },
     "body_font_kind": {
      "type": "string"
     },
     "body_font_is_downloaded": {
      "type": "integer"
     },
     "serif_body": {
      "type": "integer"
     },
     "heading_same_as_body": {
      "type": "integer"
     },
     "web_fonts_loaded": {
      "type": "integer"
     },
     "web_font_families": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "tranco_rank",
     "domain",
     "body_font_first_choice",
     "heading_font_first_choice",
     "body_font_kind",
     "body_font_is_downloaded",
     "serif_body",
     "heading_same_as_body",
     "web_fonts_loaded",
     "web_font_families"
    ],
    "additionalProperties": false
   },
   "WebsiteFontsFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/WebsiteFontsRow"
      }
     }
    }
   },
   "WebsiteSocialMediaLinksRow": {
    "type": "object",
    "properties": {
     "tranco_rank": {
      "type": "integer"
     },
     "domain": {
      "type": "string"
     },
     "networks_linked": {
      "type": "integer"
     },
     "youtube": {
      "type": "integer"
     },
     "instagram": {
      "type": "integer"
     },
     "facebook": {
      "type": "integer"
     },
     "x": {
      "type": "integer"
     },
     "linkedin": {
      "type": "integer"
     },
     "tiktok": {
      "type": "integer"
     },
     "pinterest": {
      "type": "integer"
     },
     "threads": {
      "type": "integer"
     },
     "discord": {
      "type": "integer"
     },
     "reddit": {
      "type": "integer"
     },
     "twitch": {
      "type": "integer"
     },
     "telegram": {
      "type": "integer"
     },
     "whatsapp": {
      "type": "integer"
     },
     "bluesky": {
      "type": "integer"
     },
     "snapchat": {
      "type": "integer"
     },
     "vk": {
      "type": "integer"
     },
     "weibo": {
      "type": "integer"
     },
     "line": {
      "type": "integer"
     },
     "in_footer": {
      "type": [
       "string",
       "null"
      ]
     },
     "x_link_address": {
      "type": [
       "string",
       "null"
      ]
     },
     "own_network_excluded": {
      "type": [
       "string",
       "null"
      ]
     }
    },
    "required": [
     "tranco_rank",
     "domain",
     "networks_linked",
     "youtube",
     "instagram",
     "facebook",
     "x",
     "linkedin",
     "tiktok",
     "pinterest",
     "threads",
     "discord",
     "reddit",
     "twitch",
     "telegram",
     "whatsapp",
     "bluesky",
     "snapchat",
     "vk",
     "weibo",
     "line",
     "in_footer",
     "x_link_address",
     "own_network_excluded"
    ],
    "additionalProperties": false
   },
   "WebsiteSocialMediaLinksFile": {
    "type": "object",
    "required": [
     "name",
     "description",
     "about",
     "source_page",
     "json",
     "csv",
     "license",
     "license_note",
     "attribution",
     "updated",
     "fields",
     "count",
     "rows"
    ],
    "properties": {
     "name": {
      "type": "string"
     },
     "description": {
      "type": "string"
     },
     "about": {
      "type": [
       "string",
       "null"
      ],
      "description": "Where the numbers come from."
     },
     "source_page": {
      "type": "string",
      "format": "uri",
      "description": "The research page with the method and charts."
     },
     "json": {
      "type": "string",
      "format": "uri"
     },
     "csv": {
      "type": "string",
      "format": "uri"
     },
     "license": {
      "$ref": "#/components/schemas/License"
     },
     "license_note": {
      "type": [
       "string",
       "null"
      ]
     },
     "attribution": {
      "type": "string",
      "description": "Suggested credit line."
     },
     "updated": {
      "type": [
       "string",
       "null"
      ],
      "format": "date",
      "description": "When the source CSV last changed."
     },
     "fields": {
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "count": {
      "type": "integer",
      "description": "Number of rows."
     },
     "rows": {
      "type": "array",
      "items": {
       "$ref": "#/components/schemas/WebsiteSocialMediaLinksRow"
      }
     }
    }
   }
  }
 }
}
