generated: '2026-10-07' method: derived generator: derive-data-model.py source: - openapi/s1-dev-openapi.yml notation: has_one = property $ref; has_many = array of $ref; belongs_to = _id field summary: entities: 26 entities_in_spec: 26 relationships: 8 entities: - name: ApiError fields: 8 description: 'Search1API error. Every JSON error carries `ok: false`, `error` (a short status-derived label) and `message` (human-readable detail); validation failures add `errors`. Payment challenges may use RFC 9' - name: AskResponse fields: 4 - name: AskResult fields: 6 - name: CrawlRequest fields: 2 - name: CrawlResponse fields: 2 - name: CrawlResult fields: 4 - name: DeepcrawlAcceptedResponse fields: 2 - name: DeepcrawlRequest fields: 2 - name: DeepcrawlStatusResponse fields: 7 - name: ExtractRequest fields: 3 - name: ExtractResponse fields: 3 - name: FeedbackResponse fields: 2 - name: HealthResponse fields: 3 - name: NewsBatchResponse fields: 2 - name: NewsParameters fields: 9 - name: NewsResponse fields: 3 - name: SearchBatchResponse fields: 2 - name: SearchParameters fields: 10 - name: SearchResponse fields: 3 - name: SearchResult fields: 11 - name: SitemapRequest fields: 2 - name: SitemapResponse fields: 1 - name: TrendingRequest fields: 2 - name: TrendingResponse fields: 2 - name: TrendingResult fields: 3 - name: UsageResponse fields: 4 relationships: - from: SearchResponse to: SearchParameters type: has_one via: searchParameters - from: SearchResponse to: SearchResult type: has_many via: results - from: NewsResponse to: NewsParameters type: has_one via: searchParameters - from: NewsResponse to: SearchResult type: has_many via: results - from: AskResponse to: AskResult type: has_many via: results - from: CrawlResponse to: CrawlResult type: has_one via: results - from: TrendingResponse to: TrendingRequest type: has_one via: trendingParameters - from: TrendingResponse to: TrendingResult type: has_many via: results