generated: '2026-10-03' method: derived generator: derive-data-model.py source: - openapi/_original/arcmira-v1-openapi.json notation: has_one = property $ref; has_many = array of $ref; belongs_to = _id field summary: entities: 71 entities_in_spec: 71 relationships: 51 entities: - name: AccountSettings fields: 1 description: Account defaults every key of this account resolves against. Set them with PATCH /v1/me/settings. - name: Alert fields: 17 - name: AlertListResponse fields: 3 - name: BadRankingChange fields: 2 description: 'For issue_type bad_ranking: the expected and observed positions of the row.' - name: CaptionTrack fields: 3 - name: ChannelCoverageResponse fields: 2 - name: ChannelSponsor fields: 6 - name: ChannelSponsorsResponse fields: 4 - name: ChannelVideosResponse fields: 10 - name: DeliveryIssueChange fields: 1 description: 'For issue_type delivery_issue: targets the delivery row (the correction id) and names the channel that was wrong or never received.' - name: Entity fields: 17 - name: EntityDetailRecommendationsSummary fields: 6 description: Commercial-intelligence rollup. Only present for organization and product entities when the caller has Recommendations API access (a Pro+ plan) and a brand profile exists. - name: EntityDetailResponse fields: 2 - name: EntityMomentumResponse fields: 9 - name: EntityRef fields: 5 - name: EntityResolveResponse fields: 8 - name: Error fields: 1 - name: FeedbackCorrectionResult fields: 5 - name: FeedbackReadbackCorrection fields: 9 - name: FeedbackReadbackResponse fields: 7 - name: FeedbackResponse fields: 8 - name: FreeformSuggestedChange fields: 0 description: Any other object shape. Accepted and logged verbatim for human review; prefer the typed shapes above when one fits your issue_type. - name: HealthResponse fields: 3 - name: MeResponse fields: 12 - name: MeSettingsResponse fields: 1 - name: Mention fields: 14 - name: MentionCountsResponse fields: 10 - name: MentionListResponse fields: 7 - name: MergeSuggestionChange fields: 5 description: 'For issue_type merge_suggestion (and duplicate_entity): the canonical merge you are proposing. Provide ids when you have them, names otherwise.' - name: MessageResponse fields: 1 - name: MissedAlertChange fields: 3 description: 'For issue_type missed_alert: an expectation with no alert row to target. Omit the correction id and describe where the alert should have fired.' - name: MissingResultChange fields: 3 description: 'For issue_type missing_result: what should have been returned. Put video/channel/timestamp context in notes.' - name: Monitor fields: 23 - name: MonitorAddEntitiesResponse fields: 2 - name: MonitorAddTrackersResponse fields: 3 - name: MonitorDeleteResponse fields: 2 - name: MonitorEntityResult fields: 9 - name: MonitorListResponse fields: 1 - name: MonitorMutationResponse fields: 2 - name: MonitorTrackersResponse fields: 2 - name: NamedEntityRef fields: 3 - name: OpenApiDocument fields: 5 description: This OpenAPI 3.1 document, the one you are reading. - name: PublicationWindow fields: 2 description: The publication window the answer covers, [after, before) in UTC, normalized from after and before. - name: Recommendation fields: 15 - name: RecommendationEnrichmentItem fields: 8 - name: RecommendationListResponse fields: 5 - name: RefusedQuote fields: 0 description: 'The refused price, on a priced refusal: quota_exceeded, spend_limit_exceeded and paid_plan_required.' - name: ResolveCandidate fields: 9 description: The one row q means. Set on exact and single_fuzzy only. Name it in the answer. - name: ResolveSuggestion fields: 0 description: Set when best is null but one row stands out, with the reason and evidence. Use it and tell the user you assumed it. - name: SignupSentResponse fields: 2 - name: SignupVerifiedResponse fields: 8 - name: SlackIntegrationListResponse fields: 1 - name: StaleMetadataChange fields: 3 description: 'For issue_type stale_metadata: the field and its correct value, with a source URL when you have one.' - name: Tracker fields: 20 - name: TrackerListResponse fields: 2 - name: TrackerMutationResponse fields: 2 - name: TranscriptFailed fields: 6 - name: TranscriptPending fields: 4 - name: TranscriptPurchaseQuote fields: 12 - name: TranscriptQuote fields: 2 - name: TranscriptResponse fields: 16 - name: TranscriptSearchChunk fields: 17 - name: TranscriptSearchResponse fields: 13 - name: TranscriptSettings fields: 3 description: What a transcript request that names no parameter of its own receives. - name: TranscriptVideo fields: 7 - name: TranscriptionJob fields: 13 description: A Premium transcript purchase with its processing state, charge and URL for reading the transcript again. - name: TranscriptionListResponse fields: 3 - name: WebhookSecretRotateResponse fields: 3 - name: WrongClassificationChange fields: 1 description: 'For issue_type wrong_classification: the commercial class the row should carry.' - name: WrongEntityChange fields: 3 description: 'For issue_type wrong_entity (and wrong_person): the entity the row should have been attributed to.' - name: WrongEntityTypeChange fields: 2 description: 'For issue_type wrong_entity_type: { "field": "type", "value": "organization" }.' relationships: - from: MeResponse to: AccountSettings type: has_one via: settings - from: AccountSettings to: TranscriptSettings type: has_one via: transcripts - from: MeSettingsResponse to: AccountSettings type: has_one via: settings - from: EntityResolveResponse to: ResolveCandidate type: has_one via: best - from: EntityResolveResponse to: ResolveSuggestion type: has_one via: suggested - from: EntityResolveResponse to: ResolveCandidate type: has_many via: candidates - from: EntityDetailResponse to: Entity type: has_one via: entity - from: EntityDetailResponse to: EntityDetailRecommendationsSummary type: has_one via: recommendations_summary - from: MentionListResponse to: Mention type: has_many via: mentions - from: MentionListResponse to: Entity type: has_one via: entity - from: MentionListResponse to: PublicationWindow type: has_one via: window - from: Mention to: EntityRef type: has_one via: entity - from: RecommendationListResponse to: Recommendation type: has_many via: recommendations - from: RecommendationListResponse to: Entity type: has_one via: entity - from: RecommendationListResponse to: PublicationWindow type: has_one via: window - from: Recommendation to: EntityRef type: has_one via: entity - from: FeedbackResponse to: FeedbackCorrectionResult type: has_many via: corrections - from: WrongEntityChange to: Entity type: belongs_to via: entity_id - from: MissedAlertChange to: Entity type: belongs_to via: entity_id - from: FeedbackReadbackResponse to: FeedbackReadbackCorrection type: has_many via: corrections - from: ChannelSponsorsResponse to: ChannelSponsor type: has_many via: sponsors - from: ChannelSponsor to: EntityRef type: has_one via: entity - from: TranscriptSearchResponse to: PublicationWindow type: has_one via: window - from: TranscriptSearchResponse to: TranscriptSearchChunk type: has_many via: chunks - from: TranscriptSearchChunk to: NamedEntityRef type: has_many via: about - from: TranscriptSearchChunk to: NamedEntityRef type: has_many via: speakers_by - from: EntityMomentumResponse to: EntityRef type: has_one via: entity - from: ChannelVideosResponse to: PublicationWindow type: has_one via: window - from: MentionCountsResponse to: PublicationWindow type: has_one via: window - from: MonitorListResponse to: Monitor type: has_many via: monitors - from: MonitorMutationResponse to: Monitor type: has_one via: monitor - from: AlertListResponse to: Alert type: has_many via: alerts - from: Alert to: Tracker type: belongs_to via: tracker_id - from: Alert to: Monitor type: belongs_to via: monitor_id - from: Alert to: Entity type: belongs_to via: entity_id - from: Alert to: Mention type: belongs_to via: mention_id - from: MonitorAddTrackersResponse to: Monitor type: belongs_to via: monitor_id - from: MonitorAddEntitiesResponse to: Monitor type: belongs_to via: monitor_id - from: MonitorAddEntitiesResponse to: MonitorEntityResult type: has_many via: results - from: MonitorEntityResult to: Entity type: belongs_to via: entity_id - from: MonitorEntityResult to: Tracker type: belongs_to via: tracker_id - from: TrackerListResponse to: Tracker type: has_many via: trackers - from: Tracker to: Monitor type: belongs_to via: monitor_id - from: TrackerMutationResponse to: Tracker type: has_one via: tracker - from: TranscriptResponse to: TranscriptVideo type: has_one via: video - from: TranscriptResponse to: CaptionTrack type: has_many via: languages - from: TranscriptResponse to: TranscriptionJob type: has_one via: premium_job - from: TranscriptFailed to: TranscriptionJob type: has_one via: job - from: TranscriptPending to: TranscriptionJob type: has_one via: job - from: TranscriptPurchaseQuote to: TranscriptQuote type: has_one via: quote - from: TranscriptionListResponse to: TranscriptionJob type: has_many via: requests