generated: '2026-10-04' method: derived generator: derive-data-model.py source: - openapi/grafana-com-openapi.json notation: has_one = property $ref; has_many = array of $ref; belongs_to = _id field summary: entities: 400 entities_in_spec: 414 relationships: 350 entities: - name: AccessControlStatus fields: 1 - name: Ack fields: 0 - name: ActiveSyncStatusDTO fields: 4 description: ActiveSyncStatusDTO holds the information for LDAP background Sync - name: ActiveUserStats fields: 4 - name: AddDataSourceCommand fields: 13 description: Also acts as api DTO - name: AddInviteForm fields: 4 - name: AddOrgUserCommand fields: 2 - name: AddServiceAccountTokenCommand fields: 2 - name: AddTeamMemberCommand fields: 1 - name: AddTeamRoleCommand fields: 1 - name: AddUserRoleCommand fields: 2 - name: Address fields: 6 - name: AdminCreateUserForm fields: 5 - name: AdminCreateUserResponse fields: 3 - name: AdminStats fields: 24 - name: AdminUpdateUserPasswordForm fields: 1 - name: AdminUpdateUserPermissionsForm fields: 1 - name: Alert fields: 5 - name: AlertDiscovery fields: 1 - name: AlertInstancesResponse fields: 1 - name: AlertManager fields: 1 - name: AlertManagerNotReady fields: 0 - name: AlertManagersResult fields: 2 - name: AlertQuery fields: 5 - name: AlertQueryExport fields: 5 - name: AlertResponse fields: 4 - name: AlertRuleEditorSettings fields: 2 - name: AlertRuleExport fields: 16 - name: AlertRuleGroup fields: 4 - name: AlertRuleGroupExport fields: 5 - name: AlertRuleGroupMetadata fields: 1 - name: AlertRuleMetadata fields: 1 - name: AlertRuleNotificationSettings fields: 8 - name: AlertRuleNotificationSettingsExport fields: 7 - name: AlertRuleRecordExport fields: 3 - name: AlertingFileExport fields: 5 - name: AlertingRule fields: 22 description: adapted from cortex - name: AlertingStatus fields: 2 - name: AlertmanagerUserConfig fields: 2 - name: Annotation fields: 20 - name: AnnotationActions fields: 3 - name: AnnotationEvent fields: 11 - name: AnnotationPanelFilter fields: 2 - name: AnnotationPermission fields: 1 - name: AnnotationQuery fields: 10 description: TODO docs - name: AnnotationTarget fields: 4 description: 'TODO: this should be a regular DataQuery that depends on the selected dashboard' - name: ApiRuleNode fields: 7 - name: Assignments fields: 4 - name: AttributeTypeAndValue fields: 2 description: When parsed as part of a pkix.Name structure in a crypto/x509 type, - name: Authorization fields: 4 - name: BacktestConfig fields: 15 - name: BasicAuth fields: 6 - name: CacheConfig fields: 9 description: Config defines the internal representation of a cache configuration, including fields not set by the API caller - name: CacheConfigResponse fields: 10 - name: CacheConfigSetter fields: 6 description: ConfigSetter defines the cache parameters that users can configure per datasource - name: CalculateDiffTarget fields: 3 - name: Certificate fields: 53 - name: ChangeUserPasswordCommand fields: 2 - name: CloudMigrationRunListDTO fields: 1 - name: CloudMigrationSessionListResponseDTO fields: 1 - name: CloudMigrationSessionRequestDTO fields: 1 - name: CloudMigrationSessionResponseDTO fields: 4 - name: Config fields: 6 - name: ContactPointExport fields: 3 - name: ConvertAlertmanagerResponse fields: 5 - name: ConvertPrometheusResponse fields: 3 - name: Correlation fields: 9 description: Correlation is the model for correlations definitions - name: CorrelationConfig fields: 4 - name: CorrelationConfigUpdateDTO fields: 3 - name: CreateAccessTokenResponseDTO fields: 1 - name: CreateCorrelationCommand fields: 6 description: CreateCorrelationCommand is the command for creating a correlation - name: CreateCorrelationResponseBody fields: 2 description: CreateCorrelationResponse is the response struct for CreateCorrelationCommand - name: CreateDashboardSnapshotCommand fields: 8 - name: CreateFolderCommand fields: 4 description: CreateFolderCommand captures the information required by the folder service - name: CreateLibraryElementCommand fields: 6 description: CreateLibraryElementCommand is the command for adding a LibraryElement - name: CreateOrUpdateReport fields: 14 - name: CreateOrgCommand fields: 1 - name: CreatePlaylistCommand fields: 3 - name: CreateQueryInQueryHistoryCommand fields: 2 description: CreateQueryInQueryHistoryCommand is the command for adding query history - name: CreateRoleForm fields: 8 - name: CreateServiceAccountForm fields: 3 - name: CreateSnapshotRequestDTO fields: 1 - name: CreateSnapshotResponseDTO fields: 1 - name: CreateTeamCommand fields: 2 - name: DashboardACLInfoDTO fields: 24 - name: DashboardACLUpdateItem fields: 4 - name: DashboardCreateCommand fields: 6 description: These are the values expected to be sent from an end user - name: DashboardFullWithMeta fields: 2 - name: DashboardMeta fields: 26 - name: DashboardSnapshotDTO fields: 7 description: DashboardSnapshotDTO without dashboard map - name: DashboardTagCloudItem fields: 2 - name: DashboardVersionMeta fields: 10 description: DashboardVersionMeta extends the DashboardVersionDTO with the names - name: DashboardVersionResponseMeta fields: 2 - name: DataLink fields: 4 description: DataLink define what - name: DataResponse fields: 4 description: A map of RefIDs (unique query identifiers) to this type makes up the Responses property of a QueryDataResponse. - name: DataSource fields: 19 - name: DataSourceListItemDTO fields: 15 - name: DataSourceRef fields: 2 description: Ref to a DataSource instance - name: DeleteCorrelationResponseBody fields: 1 - name: DeleteTokenCommand fields: 1 - name: DescendantCounts fields: 0 - name: Description fields: 2 - name: DeviceSearchHitDTO fields: 6 - name: DiscordConfig fields: 6 - name: DiscoveryBase fields: 3 - name: EmailConfig fields: 15 - name: EmailDTO fields: 2 - name: EmbeddedContactPoint fields: 6 description: EmbeddedContactPoint is the contact point type that is used - name: EnumFieldConfig fields: 4 description: Enum field config - name: ErrorResponseBody fields: 3 - name: EvalAlertConditionCommand fields: 3 description: EvalAlertConditionCommand is the command for evaluating a condition - name: EvalQueriesPayload fields: 3 - name: EvalQueriesResponse fields: 0 - name: ExtendedReceiver fields: 9 - name: Extension fields: 3 description: Extension represents the ASN.1 structure of the same name. See RFC - name: ExternalAlertmanagerConfig fields: 2 - name: ExternalAlertmanagerStatus fields: 4 - name: ExtraConfiguration fields: 4 - name: FailedUser fields: 2 description: FailedUser holds the information of an user that failed - name: Field fields: 3 description: A Field is essentially a slice of various types with extra properties and methods. - name: FieldConfig fields: 18 - name: FieldTypeConfig fields: 1 description: FieldTypeConfig has type specific configs, only one should be active at a time - name: FindTagsResult fields: 1 - name: FloatHistogram fields: 9 description: A FloatHistogram is needed by PromQL to handle operations that might result - name: Folder fields: 19 - name: FolderSearchHit fields: 5 - name: FooterItem fields: 6 - name: ForbiddenError fields: 1 - name: Frame fields: 4 description: Each Field is well typed by its FieldType and supports optional Labels. - name: FrameLabels fields: 0 description: Labels are used to add metadata to an object. The JSON will always be sorted keys - name: FrameMeta fields: 13 description: https://github.com/grafana/grafana/blob/master/packages/grafana-data/src/types/data.ts#L11 - name: GetAccessTokenResponseDTO fields: 6 - name: GetAnnotationTagsResponse fields: 1 - name: GetHomeDashboardResponse fields: 0 - name: GetSnapshotResponseDTO fields: 7 - name: GettableAlertmanagers fields: 2 - name: GettableApiAlertingConfig fields: 8 - name: GettableApiReceiver fields: 17 - name: GettableExtendedRuleNode fields: 8 - name: GettableGrafanaReceiver fields: 8 - name: GettableGrafanaReceivers fields: 1 - name: GettableGrafanaRule fields: 20 - name: GettableHistoricUserConfig fields: 5 - name: GettableNGalertConfig fields: 2 - name: GettableRuleGroupConfig fields: 10 - name: GettableStatus fields: 4 - name: GettableUserConfig fields: 4 - name: GlobalConfig fields: 27 description: GlobalConfig defines configuration parameters that are valid globally - name: Gone fields: 0 - name: HTTPClientConfig fields: 13 - name: Header fields: 3 - name: Headers fields: 1 - name: Hit fields: 19 - name: HostPort fields: 2 - name: IPNet fields: 2 - name: ImportDashboardInput fields: 4 - name: ImportDashboardRequest fields: 7 - name: ImportDashboardResponse fields: 15 - name: InhibitRule fields: 7 description: InhibitRule defines an inhibition rule that mutes alerts that match the - name: InhibitionRule fields: 9 description: It embeds the upstream Alertmanager InhibitRule and adds Grafana-specific fields. - name: IntegrationStatus fields: 5 - name: InternalDataLink fields: 6 description: InternalDataLink definition to allow Explore links to be constructed in the backend - name: JSONWebKey fields: 8 description: JSONWebKey represents a public or private key in JWK format. It can be - name: JiraConfig fields: 14 - name: Json fields: 0 - name: Labels fields: 0 description: Each name and value is preceded by its length, encoded as a single byte - name: LibraryElementArrayResponse fields: 1 - name: LibraryElementConnectionDTO fields: 7 - name: LibraryElementConnectionsResponse fields: 1 - name: LibraryElementDTO fields: 13 - name: LibraryElementDTOMeta fields: 7 - name: LibraryElementDTOMetaUser fields: 3 - name: LibraryElementResponse fields: 1 - name: LibraryElementSearchResponse fields: 1 - name: LibraryElementSearchResult fields: 4 - name: LinkTransformationConfig fields: 4 - name: MSTeamsConfig fields: 7 - name: MSTeamsV2Config fields: 6 - name: ManagedInhibitionRules fields: 0 - name: ManagedRoutes fields: 0 description: ManagedRoutes this type exists purely to ensure unmarshalling upstream Routes will call Validate and populate - name: MassDeleteAnnotationsCmd fields: 4 - name: MatchRegexps fields: 0 - name: Matcher fields: 3 - name: MergeStats fields: 5 - name: Metadata fields: 0 description: Metadata contains user accesses for a given resource - name: MetricRequest fields: 4 - name: MigrateDataResponseDTO fields: 2 - name: MigrateDataResponseItemDTO fields: 7 - name: MigrateDataResponseListDTO fields: 1 - name: MoveFolderCommand fields: 1 description: MoveFolderCommand captures the information required by the folder service - name: MultiStatus fields: 0 - name: MuteTimeInterval fields: 2 - name: MuteTimeIntervalExport fields: 3 - name: Name fields: 11 description: Name represents an X.509 distinguished name. This only includes the common - name: NamespaceConfigResponse fields: 0 - name: NavbarPreference fields: 1 - name: NewApiKeyResult fields: 3 - name: NotFound fields: 0 - name: Notice fields: 4 - name: NotificationPolicyExport fields: 14 - name: NotificationTemplate fields: 4 - name: NotificationTemplateContent fields: 2 - name: NotifierConfig fields: 1 - name: OAuth2 fields: 21 - name: OpsGenieConfig fields: 16 - name: OpsGenieConfigResponder fields: 4 - name: OrgDTO fields: 2 - name: OrgDetailsDTO fields: 3 - name: OrgUserDTO fields: 16 - name: PagerdutyConfig fields: 18 - name: PagerdutyImage fields: 3 - name: PagerdutyLink fields: 2 - name: PatchAnnotationsCmd fields: 6 - name: PatchLibraryElementCommand fields: 7 description: PatchLibraryElementCommand is the command for patching a LibraryElement - name: PatchPrefsCmd fields: 8 - name: PatchQueryCommentInQueryHistoryCommand fields: 1 description: PatchQueryCommentInQueryHistoryCommand is the command for updating comment for query in query history - name: Permission fields: 4 description: Permission is the model for access control permissions - name: PermissionDenied fields: 0 - name: Playlist fields: 4 description: Playlist model - name: PlaylistDTO fields: 4 - name: PlaylistDashboard fields: 6 - name: PlaylistItem fields: 6 - name: PlaylistItemDTO fields: 3 - name: PolicyMapping fields: 2 - name: PostAnnotationsCmd fields: 8 - name: PostGraphiteAnnotationsCmd fields: 4 - name: PostableApiAlertingConfig fields: 7 description: nolint:revive - name: PostableApiReceiver fields: 2 description: nolint:revive - name: PostableApiTemplate fields: 3 description: nolint:revive - name: PostableExtendedRuleNode fields: 8 - name: PostableExtendedRuleNodeExtended fields: 4 - name: PostableGrafanaReceiver fields: 7 - name: PostableGrafanaReceivers fields: 1 - name: PostableGrafanaRule fields: 11 - name: PostableNGalertConfig fields: 2 - name: PostableRuleGroupConfig fields: 10 - name: PostableUserConfig fields: 6 - name: PreferencesNavbarPreference fields: 1 - name: PreferencesQueryHistoryPreference fields: 1 - name: PreferencesSpec fields: 8 - name: PrometheusNamespace fields: 1 - name: PrometheusRemoteWriteTargetJSON fields: 3 - name: PrometheusRule fields: 7 - name: PrometheusRuleGroup fields: 6 - name: ProvisionedAlertRule fields: 20 - name: ProxyConfig fields: 4 - name: ProxyHeader fields: 0 - name: PublicDashboard fields: 12 - name: PublicDashboardDTO fields: 6 - name: PublicDashboardListResponse fields: 6 - name: PublicDashboardListResponseWithPagination fields: 4 - name: PublicError fields: 4 description: PublicError is derived from Error and only contains information - name: PushoverConfig fields: 17 - name: QueryDataResponse fields: 1 description: It is the return type of a QueryData call. - name: QueryHistoryDTO fields: 7 - name: QueryHistoryDeleteQueryResponse fields: 2 description: QueryHistoryDeleteQueryResponse is the response struct for deleting a query from query history - name: QueryHistoryPreference fields: 1 - name: QueryHistoryResponse fields: 1 description: QueryHistoryResponse is a response struct for QueryHistoryDTO - name: QueryHistorySearchResponse fields: 1 - name: QueryHistorySearchResult fields: 4 - name: QueryStat fields: 19 description: The embedded FieldConfig's display name must be set. - name: QuotaDTO fields: 5 - name: RawMessage fields: 0 - name: Receiver fields: 16 - name: ReceiverExport fields: 4 - name: ReceiverStatus fields: 3 - name: Record fields: 3 - name: RecordingRuleJSON fields: 11 description: RecordingRuleJSON is the external representation of a recording rule - name: RelativeTimeRange fields: 2 description: RelativeTimeRange is the per query start and end time - name: RelativeTimeRangeExport fields: 2 - name: RemoteWriteConfig fields: 1 - name: RenameResources fields: 2 description: RenameResources describes which resources were renamed to avoid conflicts - name: Report fields: 20 - name: ReportBrandingOptions fields: 5 - name: ReportDashboard fields: 3 - name: ReportDashboardID fields: 3 - name: ReportEmail fields: 3 - name: ReportOptions fields: 6 - name: ReportSchedule fields: 8 - name: ReportSettings fields: 11 - name: ReportTimeRange fields: 2 - name: ReportURLItem fields: 2 - name: ResourceDependenciesResponseDTO fields: 1 - name: ResourceDependencyDTO fields: 2 - name: ResponseDetails fields: 1 - name: Responses fields: 0 description: The QueryData method the QueryDataHandler method will set the RefId - name: RestoreDashboardVersionCommand fields: 1 - name: RestoreDeletedDashboardCommand fields: 1 - name: RevokeAuthTokenCmd fields: 1 - name: RoleAssignmentsDTO fields: 4 - name: RoleDTO fields: 13 - name: RolesSearchQuery fields: 4 - name: Route fields: 14 description: A Route is a node that contains definitions of how to handle alerts. This is modified - name: RouteExport fields: 13 description: RouteExport is the provisioned file export of definitions.Route. This is needed to hide fields that aren't useable in - name: Rule fields: 13 description: adapted from cortex - name: RuleDiscovery fields: 3 - name: RuleGroup fields: 8 - name: RuleGroupConfigResponse fields: 10 - name: RuleResponse fields: 4 - name: SNSConfig fields: 10 - name: Sample fields: 5 description: Sample is a single sample belonging to a metric. It represents either a float - name: SaveDashboardCommand fields: 8 - name: SearchDeviceQueryResult fields: 4 - name: SearchOrgServiceAccountsResult fields: 4 - name: SearchOrgUsersQueryResult fields: 4 - name: SearchTeamGroupsQueryResult fields: 4 - name: SearchTeamQueryResult fields: 4 - name: SearchUserQueryResult fields: 4 - name: ServiceAccountDTO fields: 11 - name: ServiceAccountProfileDTO fields: 15 - name: SetResourcePermissionCommand fields: 4 - name: SetRoleAssignmentsCommand fields: 3 - name: SetTeamMembershipsCommand fields: 2 - name: SetTeamRolesCommand fields: 2 - name: SetUserRolesCommand fields: 3 - name: SettingsBag fields: 0 - name: SigV4Config fields: 5 description: SigV4Config is the configuration for signing remote write requests with - name: SilenceMetadata fields: 3 - name: SlackAction fields: 7 description: See https://api.slack.com/docs/message-attachments#action_fields and https://api.slack.com/docs/message-buttons - name: SlackConfig fields: 23 - name: SlackConfirmationField fields: 4 description: SlackConfirmationField protect users from destructive actions or particularly distinguished decisions - name: SlackField fields: 3 description: Each field must contain a title, value, and optionally, a boolean value to indicate if the field - name: SnapshotDTO fields: 5 description: Base snapshot without results - name: SnapshotListResponseDTO fields: 1 - name: SnapshotResourceStats fields: 3 - name: Span fields: 2 - name: SuccessResponseBody fields: 1 - name: SyncResult fields: 5 - name: TLSConfig fields: 13 - name: TagsDTO fields: 2 - name: TeamDTO fields: 11 - name: TeamGroupDTO fields: 5 - name: TeamGroupMapping fields: 1 description: '---------------------' - name: TeamLBACRule fields: 3 - name: TeamLBACRules fields: 1 - name: TeamMemberDTO fields: 13 - name: TelegramConfig fields: 9 - name: TempUserDTO fields: 14 - name: TestRulePayload fields: 2 - name: TestRuleResponse fields: 2 - name: TestTemplatesConfigBodyParams fields: 4 - name: TestTemplatesErrorResult fields: 3 - name: TestTemplatesResult fields: 3 - name: TestTemplatesResults fields: 2 - name: Threshold fields: 3 description: Threshold a single step on the threshold list - name: ThresholdsConfig fields: 2 description: ThresholdsConfig setup thresholds - name: TimeInterval fields: 2 - name: TimeIntervalItem fields: 6 - name: TimeIntervalTimeRange fields: 2 - name: TimeRange fields: 2 description: Redefining this to avoid an import cycle - name: Token fields: 24 - name: TokenDTO fields: 8 - name: Transformation fields: 4 - name: TypeMeta fields: 2 description: TypeMeta describes an individual object in an API response or request - name: Unstructured fields: 1 description: Unstructured allows objects that do not have Golang structs registered to be manipulated - name: UpdateAnnotationsCmd fields: 6 - name: UpdateCorrelationCommand fields: 4 description: UpdateCorrelationCommand is the command for updating a correlation - name: UpdateCorrelationResponseBody fields: 2 - name: UpdateDashboardACLCommand fields: 1 - name: UpdateDataSourceCommand fields: 14 description: Also acts as api DTO - name: UpdateFolderCommand fields: 4 description: UpdateFolderCommand captures the information required by the folder service - name: UpdateNamespaceRulesRequest fields: 1 - name: UpdateNamespaceRulesResponse fields: 1 - name: UpdateOrgAddressForm fields: 6 - name: UpdateOrgForm fields: 1 - name: UpdateOrgUserCommand fields: 1 - name: UpdatePlaylistCommand fields: 4 - name: UpdatePrefsCmd fields: 8 - name: UpdateQuotaCmd fields: 2 - name: UpdateRoleCommand fields: 7 - name: UpdateRuleGroupResponse fields: 4 - name: UpdateServiceAccountForm fields: 4 - name: UpdateTeamCommand fields: 2 - name: UpdateTeamLBACCommand fields: 1 - name: UpdateTeamMemberCommand fields: 1 - name: UpdateUserCommand fields: 4 - name: UserInfo fields: 2 - name: UserSearchHitDTO fields: 15 - name: VictorOpsConfig fields: 11 - name: WebexConfig fields: 5 - name: WebhookConfig fields: 6 - name: WechatConfig fields: 11 - name: alert fields: 2 description: Alert alert - name: alertGroup fields: 3 description: AlertGroup alert group - name: alertStatus fields: 3 description: AlertStatus alert status - name: alertmanagerConfig fields: 1 description: AlertmanagerConfig alertmanager config - name: alertmanagerStatus fields: 4 description: AlertmanagerStatus alertmanager status - name: clusterStatus fields: 3 description: ClusterStatus cluster status - name: gettableAlert fields: 9 description: GettableAlert gettable alert - name: gettableGrafanaSilence fields: 10 - name: gettableSilence fields: 8 description: GettableSilence gettable silence - name: labelSet fields: 0 description: LabelSet label set - name: peerStatus fields: 2 description: PeerStatus peer status - name: postSilencesOKBody fields: 1 - name: postableAlert fields: 5 description: PostableAlert postable alert - name: receiver fields: 1 description: Receiver receiver - name: setPermissionsCommand fields: 1 - name: silence fields: 5 description: Silence silence - name: silenceStatus fields: 1 description: SilenceStatus silence status - name: versionInfo fields: 6 description: VersionInfo version info relationships: - from: ActiveSyncStatusDTO to: SyncResult type: has_one via: prevSync - from: AddDataSourceCommand to: Json type: has_one via: jsonData - from: Alert to: Labels type: has_one via: annotations - from: Alert to: Labels type: has_one via: labels - from: AlertDiscovery to: Alert type: has_many via: alerts - from: AlertManagersResult to: AlertManager type: has_many via: activeAlertManagers - from: AlertManagersResult to: AlertManager type: has_many via: droppedAlertManagers - from: AlertQuery to: RelativeTimeRange type: has_one via: relativeTimeRange - from: AlertQueryExport to: RelativeTimeRangeExport type: has_one via: relativeTimeRange - from: AlertResponse to: AlertDiscovery type: has_one via: data - from: AlertRuleExport to: AlertQueryExport type: has_many via: data - from: AlertRuleExport to: AlertRuleNotificationSettingsExport type: has_one via: notification_settings - from: AlertRuleExport to: AlertRuleRecordExport type: has_one via: record - from: AlertRuleGroup to: ProvisionedAlertRule type: has_many via: rules - from: AlertRuleGroupExport to: AlertRuleExport type: has_many via: rules - from: AlertRuleMetadata to: AlertRuleEditorSettings type: has_one via: editor_settings - from: AlertingFileExport to: ContactPointExport type: has_many via: contactPoints - from: AlertingFileExport to: AlertRuleGroupExport type: has_many via: groups - from: AlertingFileExport to: MuteTimeIntervalExport type: has_many via: muteTimes - from: AlertingFileExport to: NotificationPolicyExport type: has_many via: policies - from: AlertingRule to: Alert type: has_many via: alerts - from: AlertingRule to: Labels type: has_one via: annotations - from: AlertingRule to: Labels type: has_one via: labels - from: AlertingRule to: AlertRuleNotificationSettings type: has_one via: notificationSettings - from: Annotation to: Alert type: belongs_to via: alertId - from: Annotation to: Json type: has_one via: data - from: AnnotationEvent to: AnnotationQuery type: has_one via: source - from: AnnotationPermission to: AnnotationActions type: has_one via: dashboard - from: AnnotationQuery to: DataSourceRef type: has_one via: datasource - from: AnnotationQuery to: AnnotationPanelFilter type: has_one via: filter - from: AnnotationQuery to: AnnotationTarget type: has_one via: target - from: BacktestConfig to: AlertQuery type: has_many via: data - from: CacheConfig to: DataSource type: belongs_to via: dataSourceID - from: CacheConfigResponse to: DataSource type: belongs_to via: dataSourceID - from: CacheConfigSetter to: DataSource type: belongs_to via: dataSourceID - from: CalculateDiffTarget to: Json type: has_one via: unsavedDashboard - from: Certificate to: IPNet type: has_many via: ExcludedIPRanges - from: Certificate to: Extension type: has_many via: Extensions - from: Certificate to: Extension type: has_many via: ExtraExtensions - from: Certificate to: Name type: has_one via: Issuer - from: Certificate to: IPNet type: has_many via: PermittedIPRanges - from: Certificate to: PolicyMapping type: has_many via: PolicyMappings - from: Certificate to: Name type: has_one via: Subject - from: CloudMigrationRunListDTO to: MigrateDataResponseListDTO type: has_many via: runs - from: CloudMigrationSessionListResponseDTO to: CloudMigrationSessionResponseDTO type: has_many via: sessions - from: Config to: GlobalConfig type: has_one via: global - from: Config to: InhibitRule type: has_many via: inhibit_rules - from: Config to: MuteTimeInterval type: has_many via: mute_time_intervals - from: Config to: Route type: has_one via: route - from: Config to: TimeInterval type: has_many via: time_intervals - from: ContactPointExport to: ReceiverExport type: has_many via: receivers - from: ConvertAlertmanagerResponse to: RenameResources type: has_one via: rename_resources - from: ConvertAlertmanagerResponse to: MergeStats type: has_one via: stats - from: Correlation to: CorrelationConfig type: has_one via: config - from: CorrelationConfigUpdateDTO to: Transformation type: has_many via: transformations - from: CreateCorrelationCommand to: CorrelationConfig type: has_one via: config - from: CreateCorrelationResponseBody to: Correlation type: has_one via: result - from: CreateDashboardSnapshotCommand to: Unstructured type: has_one via: dashboard - from: CreateLibraryElementCommand to: Folder type: belongs_to via: folderId - from: CreateOrUpdateReport to: ReportDashboard type: has_many via: dashboards - from: CreateOrUpdateReport to: ReportOptions type: has_one via: options - from: CreateOrUpdateReport to: ReportSchedule type: has_one via: schedule - from: CreateOrUpdateReport to: ReportURLItem type: has_many via: urls - from: CreatePlaylistCommand to: PlaylistItem type: has_many via: items - from: CreateQueryInQueryHistoryCommand to: Json type: has_one via: queries - from: CreateRoleForm to: Permission type: has_many via: permissions - from: DashboardACLInfoDTO to: Folder type: belongs_to via: folderId - from: DashboardCreateCommand to: Unstructured type: has_one via: dashboard - from: DashboardFullWithMeta to: Json type: has_one via: dashboard - from: DashboardFullWithMeta to: DashboardMeta type: has_one via: meta - from: DashboardMeta to: AnnotationPermission type: has_one via: annotationsPermissions - from: DashboardMeta to: Folder type: belongs_to via: folderId - from: DashboardVersionMeta to: Json type: has_one via: data - from: DashboardVersionResponseMeta to: DashboardVersionMeta type: has_many via: versions - from: DataLink to: InternalDataLink type: has_one via: internal - from: DataSource to: Metadata type: has_one via: accessControl - from: DataSource to: Json type: has_one via: jsonData - from: DataSourceListItemDTO to: Json type: has_one via: jsonData - from: Description to: Assignments type: has_one via: assignments - from: DiscordConfig to: HTTPClientConfig type: has_one via: http_config - from: EmailConfig to: HostPort type: has_one via: smarthost - from: EmailConfig to: TLSConfig type: has_one via: tls_config - from: EmbeddedContactPoint to: Json type: has_one via: settings - from: EvalAlertConditionCommand to: AlertQuery type: has_many via: data - from: EvalQueriesPayload to: AlertQuery type: has_many via: data - from: ExtendedReceiver to: EmailConfig type: has_one via: email_configs - from: ExtendedReceiver to: PostableGrafanaReceiver type: has_one via: grafana_managed_receiver - from: ExtendedReceiver to: OpsGenieConfig type: has_one via: opsgenie_configs - from: ExtendedReceiver to: PagerdutyConfig type: has_one via: pagerduty_configs - from: ExtendedReceiver to: PushoverConfig type: has_one via: pushover_configs - from: ExtendedReceiver to: SlackConfig type: has_one via: slack_configs - from: ExtendedReceiver to: VictorOpsConfig type: has_one via: victorops_configs - from: ExtendedReceiver to: WebhookConfig type: has_one via: webhook_configs - from: ExtendedReceiver to: WechatConfig type: has_one via: wechat_configs - from: ExternalAlertmanagerConfig to: Config type: has_one via: alertmanager_config - from: ExternalAlertmanagerStatus to: clusterStatus type: has_one via: cluster - from: ExternalAlertmanagerStatus to: Config type: has_one via: config - from: ExternalAlertmanagerStatus to: versionInfo type: has_one via: versionInfo - from: Field to: FieldConfig type: has_one via: config - from: Field to: FrameLabels type: has_one via: labels - from: FieldConfig to: DataLink type: has_many via: links - from: FieldConfig to: ThresholdsConfig type: has_one via: thresholds - from: FieldConfig to: FieldTypeConfig type: has_one via: type - from: FieldTypeConfig to: EnumFieldConfig type: has_one via: enum - from: FindTagsResult to: TagsDTO type: has_many via: tags - from: FloatHistogram to: Span type: has_many via: PositiveSpans - from: Folder to: Metadata type: has_one via: accessControl - from: ForbiddenError to: PublicError type: has_one via: body - from: Frame to: Field type: has_many via: Fields - from: Frame to: FrameMeta type: has_one via: Meta - from: FrameMeta to: Notice type: has_many via: notices - from: FrameMeta to: QueryStat type: has_many via: stats - from: GetAnnotationTagsResponse to: FindTagsResult type: has_one via: result - from: GetHomeDashboardResponse to: Json type: has_one via: dashboard - from: GetHomeDashboardResponse to: DashboardMeta type: has_one via: meta - from: GetSnapshotResponseDTO to: MigrateDataResponseItemDTO type: has_many via: results - from: GetSnapshotResponseDTO to: SnapshotResourceStats type: has_one via: stats - from: GettableAlertmanagers to: AlertManagersResult type: has_one via: data - from: GettableApiAlertingConfig to: GlobalConfig type: has_one via: global - from: GettableApiAlertingConfig to: InhibitRule type: has_many via: inhibit_rules - from: GettableApiAlertingConfig to: MuteTimeInterval type: has_many via: mute_time_intervals - from: GettableApiAlertingConfig to: GettableApiReceiver type: has_many via: receivers - from: GettableApiAlertingConfig to: Route type: has_one via: route - from: GettableApiAlertingConfig to: TimeInterval type: has_many via: time_intervals - from: GettableApiReceiver to: DiscordConfig type: has_many via: discord_configs - from: GettableApiReceiver to: EmailConfig type: has_many via: email_configs - from: GettableApiReceiver to: GettableGrafanaReceiver type: has_many via: grafana_managed_receiver_configs - from: GettableApiReceiver to: JiraConfig type: has_many via: jira_configs - from: GettableApiReceiver to: MSTeamsConfig type: has_many via: msteams_configs - from: GettableApiReceiver to: MSTeamsV2Config type: has_many via: msteamsv2_configs - from: GettableApiReceiver to: OpsGenieConfig type: has_many via: opsgenie_configs - from: GettableApiReceiver to: PagerdutyConfig type: has_many via: pagerduty_configs - from: GettableApiReceiver to: PushoverConfig type: has_many via: pushover_configs - from: GettableApiReceiver to: SlackConfig type: has_many via: slack_configs - from: GettableApiReceiver to: SNSConfig type: has_many via: sns_configs - from: GettableApiReceiver to: TelegramConfig type: has_many via: telegram_configs - from: GettableApiReceiver to: VictorOpsConfig type: has_many via: victorops_configs - from: GettableApiReceiver to: WebexConfig type: has_many via: webex_configs - from: GettableApiReceiver to: WebhookConfig type: has_many via: webhook_configs - from: GettableApiReceiver to: WechatConfig type: has_many via: wechat_configs - from: GettableExtendedRuleNode to: GettableGrafanaRule type: has_one via: grafana_alert - from: GettableGrafanaReceiver to: RawMessage type: has_one via: settings - from: GettableGrafanaReceivers to: GettableGrafanaReceiver type: has_many via: grafana_managed_receiver_configs - from: GettableGrafanaRule to: AlertQuery type: has_many via: data - from: GettableGrafanaRule to: AlertRuleMetadata type: has_one via: metadata - from: GettableGrafanaRule to: AlertRuleNotificationSettings type: has_one via: notification_settings - from: GettableGrafanaRule to: Record type: has_one via: record - from: GettableGrafanaRule to: UserInfo type: has_one via: updated_by - from: GettableHistoricUserConfig to: GettableApiAlertingConfig type: has_one via: alertmanager_config - from: GettableRuleGroupConfig to: RemoteWriteConfig type: has_many via: remote_write - from: GettableRuleGroupConfig to: GettableExtendedRuleNode type: has_many via: rules - from: GettableStatus to: clusterStatus type: has_one via: cluster - from: GettableStatus to: PostableApiAlertingConfig type: has_one via: config - from: GettableStatus to: versionInfo type: has_one via: versionInfo - from: GettableUserConfig to: GettableApiAlertingConfig type: has_one via: alertmanager_config - from: GettableUserConfig to: ExtraConfiguration type: has_many via: extra_config - from: GlobalConfig to: HTTPClientConfig type: has_one via: http_config - from: GlobalConfig to: HostPort type: has_one via: smtp_smarthost - from: GlobalConfig to: TLSConfig type: has_one via: smtp_tls_config - from: HTTPClientConfig to: Authorization type: has_one via: authorization - from: HTTPClientConfig to: BasicAuth type: has_one via: basic_auth - from: HTTPClientConfig to: Headers type: has_one via: http_headers - from: HTTPClientConfig to: OAuth2 type: has_one via: oauth2 - from: HTTPClientConfig to: ProxyHeader type: has_one via: proxy_connect_header - from: HTTPClientConfig to: TLSConfig type: has_one via: tls_config - from: Hit to: Folder type: belongs_to via: folderId - from: ImportDashboardRequest to: Json type: has_one via: dashboard - from: ImportDashboardRequest to: Folder type: belongs_to via: folderId - from: ImportDashboardRequest to: ImportDashboardInput type: has_many via: inputs - from: ImportDashboardResponse to: Folder type: belongs_to via: folderId - from: InhibitRule to: MatchRegexps type: has_one via: source_match_re - from: InhibitRule to: MatchRegexps type: has_one via: target_match_re - from: InhibitionRule to: MatchRegexps type: has_one via: source_match_re - from: InhibitionRule to: MatchRegexps type: has_one via: target_match_re - from: InternalDataLink to: TimeRange type: has_one via: timeRange - from: InternalDataLink to: LinkTransformationConfig type: has_many via: transformations - from: JSONWebKey to: Certificate type: has_many via: Certificates - from: JiraConfig to: HTTPClientConfig type: has_one via: http_config - from: LibraryElementArrayResponse to: LibraryElementDTO type: has_many via: result - from: LibraryElementConnectionDTO to: LibraryElementDTOMetaUser type: has_one via: createdBy - from: LibraryElementConnectionsResponse to: LibraryElementConnectionDTO type: has_many via: result - from: LibraryElementDTO to: Folder type: belongs_to via: folderId - from: LibraryElementDTO to: LibraryElementDTOMeta type: has_one via: meta - from: LibraryElementDTOMeta to: LibraryElementDTOMetaUser type: has_one via: createdBy - from: LibraryElementDTOMeta to: LibraryElementDTOMetaUser type: has_one via: updatedBy - from: LibraryElementResponse to: LibraryElementDTO type: has_one via: result - from: LibraryElementSearchResponse to: LibraryElementSearchResult type: has_one via: result - from: LibraryElementSearchResult to: LibraryElementDTO type: has_many via: elements - from: MSTeamsConfig to: HTTPClientConfig type: has_one via: http_config - from: MSTeamsV2Config to: HTTPClientConfig type: has_one via: http_config - from: MassDeleteAnnotationsCmd to: Annotation type: belongs_to via: annotationId - from: MetricRequest to: Json type: has_many via: queries - from: MigrateDataResponseDTO to: MigrateDataResponseItemDTO type: has_many via: items - from: MuteTimeInterval to: TimeInterval type: has_many via: time_intervals - from: MuteTimeIntervalExport to: TimeInterval type: has_many via: time_intervals - from: Name to: AttributeTypeAndValue type: has_many via: ExtraNames - from: Name to: AttributeTypeAndValue type: has_many via: Names - from: NotificationPolicyExport to: MatchRegexps type: has_one via: match_re - from: NotificationPolicyExport to: RouteExport type: has_many via: routes - from: OAuth2 to: TLSConfig type: has_one via: TLSConfig - from: OAuth2 to: ProxyHeader type: has_one via: proxy_connect_header - from: OpsGenieConfig to: HTTPClientConfig type: has_one via: http_config - from: OpsGenieConfig to: OpsGenieConfigResponder type: has_many via: responders - from: OrgDetailsDTO to: Address type: has_one via: address - from: PagerdutyConfig to: HTTPClientConfig type: has_one via: http_config - from: PagerdutyConfig to: PagerdutyImage type: has_many via: images - from: PagerdutyConfig to: PagerdutyLink type: has_many via: links - from: PatchAnnotationsCmd to: Json type: has_one via: data - from: PatchLibraryElementCommand to: Folder type: belongs_to via: folderId - from: PatchPrefsCmd to: NavbarPreference type: has_one via: navbar - from: PatchPrefsCmd to: QueryHistoryPreference type: has_one via: queryHistory - from: PlaylistDTO to: PlaylistItemDTO type: has_many via: items - from: PlaylistItem to: Playlist type: belongs_to via: PlaylistId - from: PostAnnotationsCmd to: Json type: has_one via: data - from: PostableApiAlertingConfig to: GlobalConfig type: has_one via: global - from: PostableApiAlertingConfig to: InhibitRule type: has_many via: inhibit_rules - from: PostableApiAlertingConfig to: MuteTimeInterval type: has_many via: mute_time_intervals - from: PostableApiAlertingConfig to: PostableApiReceiver type: has_many via: receivers - from: PostableApiAlertingConfig to: Route type: has_one via: route - from: PostableApiAlertingConfig to: TimeInterval type: has_many via: time_intervals - from: PostableApiReceiver to: PostableGrafanaReceiver type: has_many via: grafana_managed_receiver_configs - from: PostableExtendedRuleNode to: PostableGrafanaRule type: has_one via: grafana_alert - from: PostableExtendedRuleNodeExtended to: PostableExtendedRuleNode type: has_one via: rule - from: PostableGrafanaReceiver to: RawMessage type: has_one via: settings - from: PostableGrafanaReceivers to: PostableGrafanaReceiver type: has_many via: grafana_managed_receiver_configs - from: PostableGrafanaRule to: AlertQuery type: has_many via: data - from: PostableGrafanaRule to: AlertRuleMetadata type: has_one via: metadata - from: PostableGrafanaRule to: AlertRuleNotificationSettings type: has_one via: notification_settings - from: PostableGrafanaRule to: Record type: has_one via: record - from: PostableRuleGroupConfig to: RemoteWriteConfig type: has_many via: remote_write - from: PostableRuleGroupConfig to: PostableExtendedRuleNode type: has_many via: rules - from: PostableUserConfig to: PostableApiAlertingConfig type: has_one via: alertmanager_config - from: PostableUserConfig to: ExtraConfiguration type: has_many via: extra_config - from: PostableUserConfig to: ManagedInhibitionRules type: has_one via: managed_inhibition_rules - from: PostableUserConfig to: ManagedRoutes type: has_one via: managed_routes - from: PreferencesSpec to: PreferencesNavbarPreference type: has_one via: navbar - from: PreferencesSpec to: PreferencesQueryHistoryPreference type: has_one via: queryHistory - from: PrometheusRuleGroup to: PrometheusRule type: has_many via: rules - from: ProvisionedAlertRule to: AlertQuery type: has_many via: data - from: ProvisionedAlertRule to: AlertRuleNotificationSettings type: has_one via: notification_settings - from: ProvisionedAlertRule to: Record type: has_one via: record - from: ProxyConfig to: ProxyHeader type: has_one via: proxy_connect_header - from: PublicDashboard to: EmailDTO type: has_many via: recipients - from: PublicDashboardListResponseWithPagination to: PublicDashboardListResponse type: has_many via: publicDashboards - from: PushoverConfig to: HTTPClientConfig type: has_one via: http_config - from: QueryDataResponse to: Responses type: has_one via: results - from: QueryHistoryDTO to: Json type: has_one via: queries - from: QueryHistoryResponse to: QueryHistoryDTO type: has_one via: result - from: QueryHistorySearchResponse to: QueryHistorySearchResult type: has_one via: result - from: QueryHistorySearchResult to: QueryHistoryDTO type: has_many via: queryHistory - from: QueryStat to: DataLink type: has_many via: links - from: QueryStat to: ThresholdsConfig type: has_one via: thresholds - from: QueryStat to: FieldTypeConfig type: has_one via: type - from: Receiver to: DiscordConfig type: has_many via: discord_configs - from: Receiver to: EmailConfig type: has_many via: email_configs - from: Receiver to: JiraConfig type: has_many via: jira_configs - from: Receiver to: MSTeamsConfig type: has_many via: msteams_configs - from: Receiver to: MSTeamsV2Config type: has_many via: msteamsv2_configs - from: Receiver to: OpsGenieConfig type: has_many via: opsgenie_configs - from: Receiver to: PagerdutyConfig type: has_many via: pagerduty_configs - from: Receiver to: PushoverConfig type: has_many via: pushover_configs - from: Receiver to: SlackConfig type: has_many via: slack_configs - from: Receiver to: SNSConfig type: has_many via: sns_configs - from: Receiver to: TelegramConfig type: has_many via: telegram_configs - from: Receiver to: VictorOpsConfig type: has_many via: victorops_configs - from: Receiver to: WebexConfig type: has_many via: webex_configs - from: Receiver to: WebhookConfig type: has_many via: webhook_configs - from: Receiver to: WechatConfig type: has_many via: wechat_configs - from: ReceiverExport to: RawMessage type: has_one via: settings - from: ReceiverStatus to: IntegrationStatus type: has_many via: integrations - from: Report to: ReportDashboard type: has_many via: dashboards - from: Report to: ReportOptions type: has_one via: options - from: Report to: ReportSchedule type: has_one via: schedule - from: Report to: ReportURLItem type: has_many via: urls - from: ReportDashboard to: ReportDashboardID type: has_one via: dashboard - from: ReportDashboard to: ReportTimeRange type: has_one via: timeRange - from: ReportOptions to: ReportTimeRange type: has_one via: timeRange - from: ReportSettings to: ReportBrandingOptions type: has_one via: branding - from: ReportSettings to: FooterItem type: has_many via: footerItems - from: ResourceDependenciesResponseDTO to: ResourceDependencyDTO type: has_many via: resourceDependencies - from: RoleDTO to: Permission type: has_many via: permissions - from: Route to: MatchRegexps type: has_one via: match_re - from: RouteExport to: MatchRegexps type: has_one via: match_re - from: Rule to: Labels type: has_one via: labels - from: Rule to: AlertRuleNotificationSettings type: has_one via: notificationSettings - from: RuleDiscovery to: RuleGroup type: has_many via: groups - from: RuleGroup to: AlertingRule type: has_many via: rules - from: RuleGroupConfigResponse to: RemoteWriteConfig type: has_many via: remote_write - from: RuleGroupConfigResponse to: GettableExtendedRuleNode type: has_many via: rules - from: RuleResponse to: RuleDiscovery type: has_one via: data - from: SNSConfig to: HTTPClientConfig type: has_one via: http_config - from: SNSConfig to: SigV4Config type: has_one via: sigv4 - from: Sample to: FloatHistogram type: has_one via: H - from: Sample to: Labels type: has_one via: Metric - from: SaveDashboardCommand to: Json type: has_one via: dashboard - from: SaveDashboardCommand to: Folder type: belongs_to via: folderId - from: SearchDeviceQueryResult to: DeviceSearchHitDTO type: has_many via: devices - from: SearchOrgServiceAccountsResult to: ServiceAccountDTO type: has_many via: serviceAccounts - from: SearchOrgUsersQueryResult to: OrgUserDTO type: has_many via: orgUsers - from: SearchTeamGroupsQueryResult to: TeamGroupDTO type: has_many via: teamGroups - from: SearchTeamQueryResult to: TeamDTO type: has_many via: teams - from: SearchUserQueryResult to: UserSearchHitDTO type: has_many via: users - from: SlackAction to: SlackConfirmationField type: has_one via: confirm - from: SlackConfig to: SlackAction type: has_many via: actions - from: SlackConfig to: SlackField type: has_many via: fields - from: SlackConfig to: HTTPClientConfig type: has_one via: http_config - from: SnapshotListResponseDTO to: SnapshotDTO type: has_many via: snapshots - from: SyncResult to: FailedUser type: has_many via: FailedUsers - from: TeamLBACRules to: TeamLBACRule type: has_many via: rules - from: TelegramConfig to: HTTPClientConfig type: has_one via: http_config - from: TestRulePayload to: EvalAlertConditionCommand type: has_one via: grafana_condition - from: TestRuleResponse to: AlertInstancesResponse type: has_one via: grafana_alert_instances - from: TestTemplatesConfigBodyParams to: postableAlert type: has_many via: alerts - from: TestTemplatesResults to: TestTemplatesErrorResult type: has_many via: errors - from: TestTemplatesResults to: TestTemplatesResult type: has_many via: results - from: ThresholdsConfig to: Threshold type: has_many via: steps - from: TimeIntervalItem to: TimeIntervalTimeRange type: has_many via: times - from: UpdateAnnotationsCmd to: Json type: has_one via: data - from: UpdateCorrelationCommand to: CorrelationConfigUpdateDTO type: has_one via: config - from: UpdateCorrelationResponseBody to: Correlation type: has_one via: result - from: UpdateDashboardACLCommand to: DashboardACLUpdateItem type: has_many via: items - from: UpdateDataSourceCommand to: Json type: has_one via: jsonData - from: UpdatePlaylistCommand to: PlaylistItem type: has_many via: items - from: UpdatePrefsCmd to: NavbarPreference type: has_one via: navbar - from: UpdatePrefsCmd to: QueryHistoryPreference type: has_one via: queryHistory - from: UpdateRoleCommand to: Permission type: has_many via: permissions - from: UpdateTeamLBACCommand to: TeamLBACRule type: has_many via: rules - from: VictorOpsConfig to: HTTPClientConfig type: has_one via: http_config - from: WebexConfig to: HTTPClientConfig type: has_one via: http_config - from: WebhookConfig to: HTTPClientConfig type: has_one via: http_config - from: WechatConfig to: HTTPClientConfig type: has_one via: http_config - from: alert to: labelSet type: has_one via: labels - from: alertGroup to: gettableAlert type: has_many via: alerts - from: alertGroup to: labelSet type: has_one via: labels - from: alertGroup to: receiver type: has_one via: receiver - from: alertmanagerStatus to: clusterStatus type: has_one via: cluster - from: alertmanagerStatus to: alertmanagerConfig type: has_one via: config - from: alertmanagerStatus to: versionInfo type: has_one via: versionInfo - from: clusterStatus to: peerStatus type: has_many via: peers - from: gettableAlert to: labelSet type: has_one via: annotations - from: gettableAlert to: labelSet type: has_one via: labels - from: gettableAlert to: receiver type: has_many via: receivers - from: gettableAlert to: alertStatus type: has_one via: status - from: gettableGrafanaSilence to: SilenceMetadata type: has_one via: metadata - from: gettableGrafanaSilence to: silenceStatus type: has_one via: status - from: gettableSilence to: silenceStatus type: has_one via: status - from: postSilencesOKBody to: silence type: belongs_to via: silenceID - from: postableAlert to: labelSet type: has_one via: annotations - from: postableAlert to: labelSet type: has_one via: labels - from: setPermissionsCommand to: SetResourcePermissionCommand type: has_many via: permissions