{"owner":"SigNoz","repo":"signoz","hasSpec":true,"specFile":"docs/api/openapi.yml","branch":"HEAD","format":"yaml","version":"3.x (YAML)","title":"signoz","description":"","endpoints":[],"spec":"components:\n  schemas:\n    AlertmanagertypesChannel:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        data:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        type:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - name\n      - type\n      - data\n      - orgId\n      type: object\n    AlertmanagertypesDeprecatedGettableAlert:\n      properties:\n        annotations:\n          $ref: '#/components/schemas/ModelLabelSet'\n        endsAt:\n          format: date-time\n          type: string\n        fingerprint:\n          type: string\n        generatorURL:\n          type: string\n        labels:\n          $ref: '#/components/schemas/ModelLabelSet'\n        receivers:\n          items:\n            type: string\n          nullable: true\n          type: array\n        startsAt:\n          format: date-time\n          type: string\n        status:\n          $ref: '#/components/schemas/TypesAlertStatus'\n      type: object\n    AlertmanagertypesExpressionKind:\n      enum:\n      - rule\n      - policy\n      type: string\n    AlertmanagertypesGettableRoutePolicy:\n      properties:\n        channels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          nullable: true\n          type: string\n        description:\n          type: string\n        expression:\n          type: string\n        id:\n          type: string\n        kind:\n          $ref: '#/components/schemas/AlertmanagertypesExpressionKind'\n        name:\n          type: string\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          nullable: true\n          type: string\n      required:\n      - expression\n      - channels\n      - name\n      - id\n      - createdAt\n      - updatedAt\n      type: object\n    AlertmanagertypesGoogleChatReceiverConfig:\n      properties:\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        send_resolved:\n          type: boolean\n        text:\n          type: string\n        title:\n          type: string\n        webhook_url:\n          $ref: '#/components/schemas/ConfigSecretURL'\n      type: object\n    AlertmanagertypesMaintenanceKind:\n      enum:\n      - fixed\n      - recurring\n      type: string\n    AlertmanagertypesMaintenanceStatus:\n      enum:\n      - active\n      - upcoming\n      - expired\n      type: string\n    AlertmanagertypesPlannedMaintenance:\n      properties:\n        alertIds:\n          items:\n            type: string\n          nullable: true\n          type: array\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        description:\n          type: string\n        id:\n          type: string\n        kind:\n          $ref: '#/components/schemas/AlertmanagertypesMaintenanceKind'\n        name:\n          type: string\n        schedule:\n          $ref: '#/components/schemas/AlertmanagertypesSchedule'\n        scope:\n          type: string\n        status:\n          $ref: '#/components/schemas/AlertmanagertypesMaintenanceStatus'\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - name\n      - schedule\n      - status\n      - kind\n      type: object\n    AlertmanagertypesPostableChannel:\n      oneOf:\n      - required:\n        - googlechat_configs\n      - required:\n        - discord_configs\n      - required:\n        - email_configs\n      - required:\n        - incidentio_configs\n      - required:\n        - pagerduty_configs\n      - required:\n        - slack_configs\n      - required:\n        - webhook_configs\n      - required:\n        - opsgenie_configs\n      - required:\n        - wechat_configs\n      - required:\n        - pushover_configs\n      - required:\n        - victorops_configs\n      - required:\n        - sns_configs\n      - required:\n        - telegram_configs\n      - required:\n        - webex_configs\n      - required:\n        - msteams_configs\n      - required:\n        - msteamsv2_configs\n      - required:\n        - jira_configs\n      - required:\n        - rocketchat_configs\n      - required:\n        - mattermost_configs\n      properties:\n        discord_configs:\n          items:\n            $ref: '#/components/schemas/ConfigDiscordConfig'\n          type: array\n        email_configs:\n          items:\n            $ref: '#/components/schemas/ConfigEmailConfig'\n          type: array\n        googlechat_configs:\n          items:\n            $ref: '#/components/schemas/AlertmanagertypesGoogleChatReceiverConfig'\n          type: array\n        incidentio_configs:\n          items:\n            $ref: '#/components/schemas/ConfigIncidentioConfig'\n          type: array\n        jira_configs:\n          items:\n            $ref: '#/components/schemas/ConfigJiraConfig'\n          type: array\n        mattermost_configs:\n          items:\n            $ref: '#/components/schemas/ConfigMattermostConfig'\n          type: array\n        msteams_configs:\n          items:\n            $ref: '#/components/schemas/ConfigMSTeamsConfig'\n          type: array\n        msteamsv2_configs:\n          items:\n            $ref: '#/components/schemas/ConfigMSTeamsV2Config'\n          type: array\n        name:\n          type: string\n        opsgenie_configs:\n          items:\n            $ref: '#/components/schemas/ConfigOpsGenieConfig'\n          type: array\n        pagerduty_configs:\n          items:\n            $ref: '#/components/schemas/ConfigPagerdutyConfig'\n          type: array\n        pushover_configs:\n          items:\n            $ref: '#/components/schemas/ConfigPushoverConfig'\n          type: array\n        rocketchat_configs:\n          items:\n            $ref: '#/components/schemas/ConfigRocketchatConfig'\n          type: array\n        slack_configs:\n          items:\n            $ref: '#/components/schemas/ConfigSlackConfig'\n          type: array\n        sns_configs:\n          items:\n            $ref: '#/components/schemas/ConfigSNSConfig'\n          type: array\n        telegram_configs:\n          items:\n            $ref: '#/components/schemas/ConfigTelegramConfig'\n          type: array\n        victorops_configs:\n          items:\n            $ref: '#/components/schemas/ConfigVictorOpsConfig'\n          type: array\n        webex_configs:\n          items:\n            $ref: '#/components/schemas/ConfigWebexConfig'\n          type: array\n        webhook_configs:\n          items:\n            $ref: '#/components/schemas/ConfigWebhookConfig'\n          type: array\n        wechat_configs:\n          items:\n            $ref: '#/components/schemas/ConfigWechatConfig'\n          type: array\n      required:\n      - name\n      type: object\n    AlertmanagertypesPostablePlannedMaintenance:\n      properties:\n        alertIds:\n          items:\n            type: string\n          nullable: true\n          type: array\n        description:\n          type: string\n        name:\n          type: string\n        schedule:\n          $ref: '#/components/schemas/AlertmanagertypesSchedule'\n        scope:\n          type: string\n      required:\n      - name\n      - schedule\n      type: object\n    AlertmanagertypesPostableRoutePolicy:\n      properties:\n        channels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        description:\n          type: string\n        expression:\n          type: string\n        kind:\n          $ref: '#/components/schemas/AlertmanagertypesExpressionKind'\n        name:\n          type: string\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - expression\n      - channels\n      - name\n      type: object\n    AlertmanagertypesReceiver:\n      properties:\n        discord_configs:\n          items:\n            $ref: '#/components/schemas/ConfigDiscordConfig'\n          type: array\n        email_configs:\n          items:\n            $ref: '#/components/schemas/ConfigEmailConfig'\n          type: array\n        googlechat_configs:\n          items:\n            $ref: '#/components/schemas/AlertmanagertypesGoogleChatReceiverConfig'\n          type: array\n        incidentio_configs:\n          items:\n            $ref: '#/components/schemas/ConfigIncidentioConfig'\n          type: array\n        jira_configs:\n          items:\n            $ref: '#/components/schemas/ConfigJiraConfig'\n          type: array\n        mattermost_configs:\n          items:\n            $ref: '#/components/schemas/ConfigMattermostConfig'\n          type: array\n        msteams_configs:\n          items:\n            $ref: '#/components/schemas/ConfigMSTeamsConfig'\n          type: array\n        msteamsv2_configs:\n          items:\n            $ref: '#/components/schemas/ConfigMSTeamsV2Config'\n          type: array\n        name:\n          type: string\n        opsgenie_configs:\n          items:\n            $ref: '#/components/schemas/ConfigOpsGenieConfig'\n          type: array\n        pagerduty_configs:\n          items:\n            $ref: '#/components/schemas/ConfigPagerdutyConfig'\n          type: array\n        pushover_configs:\n          items:\n            $ref: '#/components/schemas/ConfigPushoverConfig'\n          type: array\n        rocketchat_configs:\n          items:\n            $ref: '#/components/schemas/ConfigRocketchatConfig'\n          type: array\n        slack_configs:\n          items:\n            $ref: '#/components/schemas/ConfigSlackConfig'\n          type: array\n        sns_configs:\n          items:\n            $ref: '#/components/schemas/ConfigSNSConfig'\n          type: array\n        telegram_configs:\n          items:\n            $ref: '#/components/schemas/ConfigTelegramConfig'\n          type: array\n        victorops_configs:\n          items:\n            $ref: '#/components/schemas/ConfigVictorOpsConfig'\n          type: array\n        webex_configs:\n          items:\n            $ref: '#/components/schemas/ConfigWebexConfig'\n          type: array\n        webhook_configs:\n          items:\n            $ref: '#/components/schemas/ConfigWebhookConfig'\n          type: array\n        wechat_configs:\n          items:\n            $ref: '#/components/schemas/ConfigWechatConfig'\n          type: array\n      type: object\n    AlertmanagertypesRecurrence:\n      properties:\n        duration:\n          type: string\n        repeatOn:\n          items:\n            $ref: '#/components/schemas/AlertmanagertypesRepeatOn'\n          nullable: true\n          type: array\n        repeatType:\n          $ref: '#/components/schemas/AlertmanagertypesRepeatType'\n      required:\n      - duration\n      - repeatType\n      type: object\n    AlertmanagertypesRepeatOn:\n      enum:\n      - sunday\n      - monday\n      - tuesday\n      - wednesday\n      - thursday\n      - friday\n      - saturday\n      type: string\n    AlertmanagertypesRepeatType:\n      enum:\n      - daily\n      - weekly\n      - monthly\n      type: string\n    AlertmanagertypesSchedule:\n      properties:\n        endTime:\n          format: date-time\n          type: string\n        recurrence:\n          $ref: '#/components/schemas/AlertmanagertypesRecurrence'\n        startTime:\n          format: date-time\n          type: string\n        timezone:\n          type: string\n      required:\n      - timezone\n      - startTime\n      type: object\n    AuthtypesAttributeMapping:\n      properties:\n        email:\n          type: string\n        groups:\n          type: string\n        name:\n          type: string\n        role:\n          type: string\n      type: object\n    AuthtypesAuthDomainConfig:\n      discriminator:\n        mapping:\n          google: '#/components/schemas/AuthtypesAuthDomainConfigGoogle'\n          oidc: '#/components/schemas/AuthtypesAuthDomainConfigOIDC'\n          saml: '#/components/schemas/AuthtypesAuthDomainConfigSAML'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/AuthtypesAuthDomainConfigSAML'\n      - $ref: '#/components/schemas/AuthtypesAuthDomainConfigGoogle'\n      - $ref: '#/components/schemas/AuthtypesAuthDomainConfigOIDC'\n      type: object\n    AuthtypesAuthDomainConfigGoogle:\n      properties:\n        kind:\n          $ref: '#/components/schemas/AuthtypesAuthNProvider'\n        spec:\n          $ref: '#/components/schemas/AuthtypesGoogleConfig'\n      required:\n      - kind\n      - spec\n      type: object\n    AuthtypesAuthDomainConfigOIDC:\n      properties:\n        kind:\n          $ref: '#/components/schemas/AuthtypesAuthNProvider'\n        spec:\n          $ref: '#/components/schemas/AuthtypesOIDCConfig'\n      required:\n      - kind\n      - spec\n      type: object\n    AuthtypesAuthDomainConfigSAML:\n      properties:\n        kind:\n          $ref: '#/components/schemas/AuthtypesAuthNProvider'\n        spec:\n          $ref: '#/components/schemas/AuthtypesSamlConfig'\n      required:\n      - kind\n      - spec\n      type: object\n    AuthtypesAuthNProvider:\n      enum:\n      - google\n      - saml\n      - email_password\n      - oidc\n      type: string\n    AuthtypesAuthNProviderInfo:\n      properties:\n        relayStatePath:\n          nullable: true\n          type: string\n      type: object\n    AuthtypesAuthNSupport:\n      properties:\n        callback:\n          items:\n            $ref: '#/components/schemas/AuthtypesCallbackAuthNSupport'\n          nullable: true\n          type: array\n        password:\n          items:\n            $ref: '#/components/schemas/AuthtypesPasswordAuthNSupport'\n          nullable: true\n          type: array\n      type: object\n    AuthtypesCallbackAuthNSupport:\n      properties:\n        provider:\n          $ref: '#/components/schemas/AuthtypesAuthNProvider'\n        url:\n          type: string\n      type: object\n    AuthtypesDeprecatedPostableUserRole:\n      properties:\n        id:\n          type: string\n      required:\n      - id\n      type: object\n    AuthtypesGettableAuthDomain:\n      properties:\n        authNProviderInfo:\n          $ref: '#/components/schemas/AuthtypesAuthNProviderInfo'\n        config:\n          $ref: '#/components/schemas/AuthtypesAuthDomainConfig'\n        createdAt:\n          format: date-time\n          type: string\n        enabled:\n          type: boolean\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        roleMapping:\n          $ref: '#/components/schemas/AuthtypesRoleMapping'\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      type: object\n    AuthtypesGettableRole:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        description:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        type:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - name\n      - description\n      - type\n      - orgId\n      type: object\n    AuthtypesGettableToken:\n      properties:\n        accessToken:\n          type: string\n        expiresIn:\n          type: integer\n        refreshToken:\n          type: string\n        tokenType:\n          type: string\n      type: object\n    AuthtypesGettableTransaction:\n      properties:\n        authorized:\n          type: boolean\n        object:\n          $ref: '#/components/schemas/CoretypesObject'\n        relation:\n          $ref: '#/components/schemas/AuthtypesRelation'\n      required:\n      - relation\n      - object\n      - authorized\n      type: object\n    AuthtypesGoogleConfig:\n      properties:\n        allowedGroups:\n          items:\n            type: string\n          type: array\n        clientId:\n          type: string\n        clientSecret:\n          format: password\n          type: string\n        domainToAdminEmail:\n          additionalProperties:\n            type: string\n          type: object\n        fetchGroups:\n          type: boolean\n        fetchTransitiveGroupMembership:\n          type: boolean\n        insecureSkipEmailVerified:\n          type: boolean\n        serviceAccountJson:\n          format: password\n          type: string\n      required:\n      - clientId\n      - clientSecret\n      type: object\n    AuthtypesOIDCConfig:\n      properties:\n        claimMapping:\n          $ref: '#/components/schemas/AuthtypesAttributeMapping'\n        clientId:\n          type: string\n        clientSecret:\n          format: password\n          type: string\n        getUserInfo:\n          type: boolean\n        insecureSkipEmailVerified:\n          type: boolean\n        issuer:\n          type: string\n        issuerAlias:\n          type: string\n      required:\n      - issuer\n      - clientId\n      - clientSecret\n      type: object\n    AuthtypesOrgSessionContext:\n      properties:\n        authNSupport:\n          $ref: '#/components/schemas/AuthtypesAuthNSupport'\n        id:\n          type: string\n        name:\n          type: string\n        warning:\n          $ref: '#/components/schemas/ErrorsJSON'\n      type: object\n    AuthtypesPasswordAuthNSupport:\n      properties:\n        provider:\n          $ref: '#/components/schemas/AuthtypesAuthNProvider'\n      type: object\n    AuthtypesPostableAuthDomain:\n      properties:\n        config:\n          $ref: '#/components/schemas/AuthtypesAuthDomainConfig'\n        enabled:\n          type: boolean\n        name:\n          type: string\n        roleMapping:\n          $ref: '#/components/schemas/AuthtypesRoleMapping'\n      required:\n      - name\n      - config\n      type: object\n    AuthtypesPostableEmailPasswordSession:\n      properties:\n        email:\n          type: string\n        orgId:\n          type: string\n        password:\n          type: string\n      type: object\n    AuthtypesPostableRole:\n      properties:\n        description:\n          type: string\n        name:\n          type: string\n        transactionGroups:\n          $ref: '#/components/schemas/AuthtypesTransactionGroups'\n      required:\n      - name\n      type: object\n    AuthtypesPostableRotateToken:\n      properties:\n        refreshToken:\n          type: string\n      type: object\n    AuthtypesPostableUser:\n      properties:\n        displayName:\n          type: string\n        email:\n          type: string\n        frontendBaseUrl:\n          type: string\n        userRoles:\n          items:\n            $ref: '#/components/schemas/AuthtypesDeprecatedPostableUserRole'\n          type: array\n      required:\n      - email\n      type: object\n    AuthtypesPostableUserRole:\n      properties:\n        roleId:\n          type: string\n        userId:\n          type: string\n      required:\n      - userId\n      - roleId\n      type: object\n    AuthtypesRelation:\n      enum:\n      - create\n      - read\n      - update\n      - delete\n      - list\n      - assignee\n      - attach\n      - detach\n      type: string\n    AuthtypesRole:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        description:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        transactionGroups:\n          $ref: '#/components/schemas/AuthtypesTransactionGroups'\n        type:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - name\n      - description\n      - type\n      - orgId\n      - transactionGroups\n      type: object\n    AuthtypesRoleMapping:\n      properties:\n        defaultRole:\n          type: string\n        groupMappings:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        useRoleAttribute:\n          type: boolean\n      type: object\n    AuthtypesSamlConfig:\n      properties:\n        attributeMapping:\n          $ref: '#/components/schemas/AuthtypesAttributeMapping'\n        certificate:\n          type: string\n        entityId:\n          type: string\n        insecureSkipAuthNRequestsSigned:\n          type: boolean\n        location:\n          type: string\n      required:\n      - entityId\n      - location\n      - certificate\n      type: object\n    AuthtypesSessionContext:\n      properties:\n        exists:\n          type: boolean\n        orgs:\n          items:\n            $ref: '#/components/schemas/AuthtypesOrgSessionContext'\n          nullable: true\n          type: array\n      type: object\n    AuthtypesTransaction:\n      properties:\n        object:\n          $ref: '#/components/schemas/CoretypesObject'\n        relation:\n          $ref: '#/components/schemas/AuthtypesRelation'\n      required:\n      - relation\n      - object\n      type: object\n    AuthtypesTransactionGroup:\n      properties:\n        objectGroup:\n          $ref: '#/components/schemas/CoretypesObjectGroup'\n        relation:\n          $ref: '#/components/schemas/AuthtypesRelation'\n      required:\n      - relation\n      - objectGroup\n      type: object\n    AuthtypesTransactionGroups:\n      items:\n        $ref: '#/components/schemas/AuthtypesTransactionGroup'\n      type: array\n    AuthtypesUpdatableAuthDomain:\n      properties:\n        config:\n          $ref: '#/components/schemas/AuthtypesAuthDomainConfig'\n        enabled:\n          type: boolean\n        roleMapping:\n          $ref: '#/components/schemas/AuthtypesRoleMapping'\n      required:\n      - config\n      type: object\n    AuthtypesUpdatableRole:\n      properties:\n        description:\n          type: string\n        transactionGroups:\n          $ref: '#/components/schemas/AuthtypesTransactionGroups'\n      required:\n      - description\n      - transactionGroups\n      type: object\n    AuthtypesUserRole:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        id:\n          type: string\n        role:\n          $ref: '#/components/schemas/AuthtypesRole'\n        roleId:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n        userId:\n          type: string\n      required:\n      - id\n      - userId\n      - roleId\n      - createdAt\n      - updatedAt\n      - role\n      type: object\n    AuthtypesUserWithRoles:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        displayName:\n          type: string\n        email:\n          type: string\n        id:\n          type: string\n        isRoot:\n          type: boolean\n        orgId:\n          type: string\n        status:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n        userRoles:\n          items:\n            $ref: '#/components/schemas/AuthtypesUserRole'\n          nullable: true\n          type: array\n      required:\n      - id\n      type: object\n    CloudintegrationtypesAWSAccountConfig:\n      properties:\n        regions:\n          items:\n            type: string\n          type: array\n      required:\n      - regions\n      type: object\n    CloudintegrationtypesAWSCloudWatchLogsSubscription:\n      properties:\n        filterPattern:\n          type: string\n        logGroupNamePrefix:\n          type: string\n      required:\n      - logGroupNamePrefix\n      - filterPattern\n      type: object\n    CloudintegrationtypesAWSCloudWatchMetricStreamFilter:\n      properties:\n        metricNames:\n          items:\n            type: string\n          type: array\n        namespace:\n          type: string\n      required:\n      - namespace\n      type: object\n    CloudintegrationtypesAWSConnectionArtifact:\n      properties:\n        connectionUrl:\n          type: string\n      required:\n      - connectionUrl\n      type: object\n    CloudintegrationtypesAWSIntegrationConfig:\n      properties:\n        enabledRegions:\n          items:\n            type: string\n          type: array\n        telemetryCollectionStrategy:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSTelemetryCollectionStrategy'\n      required:\n      - enabledRegions\n      - telemetryCollectionStrategy\n      type: object\n    CloudintegrationtypesAWSLogsCollectionStrategy:\n      properties:\n        subscriptions:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesAWSCloudWatchLogsSubscription'\n          type: array\n      required:\n      - subscriptions\n      type: object\n    CloudintegrationtypesAWSMetricsCollectionStrategy:\n      properties:\n        streamFilters:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesAWSCloudWatchMetricStreamFilter'\n          type: array\n      required:\n      - streamFilters\n      type: object\n    CloudintegrationtypesAWSPostableAccountConfig:\n      properties:\n        deploymentRegion:\n          type: string\n        regions:\n          items:\n            type: string\n          type: array\n      required:\n      - deploymentRegion\n      - regions\n      type: object\n    CloudintegrationtypesAWSServiceConfig:\n      properties:\n        logs:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSServiceLogsConfig'\n        metrics:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSServiceMetricsConfig'\n      type: object\n    CloudintegrationtypesAWSServiceLogsConfig:\n      properties:\n        enabled:\n          type: boolean\n        s3Buckets:\n          additionalProperties:\n            items:\n              type: string\n            type: array\n          type: object\n      type: object\n    CloudintegrationtypesAWSServiceMetricsConfig:\n      properties:\n        enabled:\n          type: boolean\n      type: object\n    CloudintegrationtypesAWSTelemetryCollectionStrategy:\n      properties:\n        logs:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSLogsCollectionStrategy'\n        metrics:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSMetricsCollectionStrategy'\n        s3Buckets:\n          additionalProperties:\n            items:\n              type: string\n            type: array\n          type: object\n      type: object\n    CloudintegrationtypesAccount:\n      properties:\n        agentReport:\n          $ref: '#/components/schemas/CloudintegrationtypesAgentReport'\n        config:\n          $ref: '#/components/schemas/CloudintegrationtypesAccountConfig'\n        createdAt:\n          format: date-time\n          type: string\n        id:\n          type: string\n        orgId:\n          type: string\n        provider:\n          type: string\n        providerAccountId:\n          nullable: true\n          type: string\n        removedAt:\n          format: date-time\n          nullable: true\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - providerAccountId\n      - provider\n      - removedAt\n      - agentReport\n      - orgId\n      - config\n      type: object\n    CloudintegrationtypesAccountConfig:\n      properties:\n        aws:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSAccountConfig'\n        azure:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureAccountConfig'\n        gcp:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPAccountConfig'\n      type: object\n    CloudintegrationtypesAgentReport:\n      nullable: true\n      properties:\n        data:\n          additionalProperties: {}\n          nullable: true\n          type: object\n        timestampMillis:\n          format: int64\n          type: integer\n      required:\n      - timestampMillis\n      - data\n      type: object\n    CloudintegrationtypesAzureAccountConfig:\n      properties:\n        deploymentRegion:\n          type: string\n        resourceGroups:\n          items:\n            type: string\n          type: array\n      required:\n      - deploymentRegion\n      - resourceGroups\n      type: object\n    CloudintegrationtypesAzureConnectionArtifact:\n      properties:\n        cliCommand:\n          type: string\n        cloudPowerShellCommand:\n          type: string\n      required:\n      - cliCommand\n      - cloudPowerShellCommand\n      type: object\n    CloudintegrationtypesAzureIntegrationConfig:\n      properties:\n        deploymentRegion:\n          type: string\n        resourceGroups:\n          items:\n            type: string\n          type: array\n        telemetryCollectionStrategy:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesAzureTelemetryCollectionStrategy'\n          type: array\n      required:\n      - deploymentRegion\n      - resourceGroups\n      - telemetryCollectionStrategy\n      type: object\n    CloudintegrationtypesAzureLogsCollectionStrategy:\n      properties:\n        categoryGroups:\n          items:\n            type: string\n          type: array\n      required:\n      - categoryGroups\n      type: object\n    CloudintegrationtypesAzureMetricsCollectionStrategy:\n      type: object\n    CloudintegrationtypesAzureServiceConfig:\n      properties:\n        logs:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureServiceLogsConfig'\n        metrics:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureServiceMetricsConfig'\n      required:\n      - logs\n      - metrics\n      type: object\n    CloudintegrationtypesAzureServiceLogsConfig:\n      properties:\n        enabled:\n          type: boolean\n      type: object\n    CloudintegrationtypesAzureServiceMetricsConfig:\n      properties:\n        enabled:\n          type: boolean\n      type: object\n    CloudintegrationtypesAzureTelemetryCollectionStrategy:\n      properties:\n        logs:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureLogsCollectionStrategy'\n        metrics:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureMetricsCollectionStrategy'\n        resourceProvider:\n          type: string\n        resourceType:\n          type: string\n      required:\n      - resourceProvider\n      - resourceType\n      type: object\n    CloudintegrationtypesCloudIntegrationService:\n      nullable: true\n      properties:\n        cloudIntegrationId:\n          type: string\n        config:\n          $ref: '#/components/schemas/CloudintegrationtypesServiceConfig'\n        createdAt:\n          format: date-time\n          type: string\n        id:\n          type: string\n        type:\n          $ref: '#/components/schemas/CloudintegrationtypesServiceID'\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      type: object\n    CloudintegrationtypesCollectedLogAttribute:\n      properties:\n        name:\n          type: string\n        path:\n          type: string\n        type:\n          type: string\n      type: object\n    CloudintegrationtypesCollectedMetric:\n      properties:\n        description:\n          type: string\n        name:\n          type: string\n        type:\n          type: string\n        unit:\n          type: string\n      type: object\n    CloudintegrationtypesConnectionArtifact:\n      properties:\n        aws:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSConnectionArtifact'\n        azure:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureConnectionArtifact'\n        gcp:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPConnectionArtifact'\n      type: object\n    CloudintegrationtypesCredentials:\n      properties:\n        ingestionKey:\n          type: string\n        ingestionUrl:\n          type: string\n        sigNozApiKey:\n          type: string\n        sigNozApiUrl:\n          type: string\n      required:\n      - sigNozApiUrl\n      - sigNozApiKey\n      - ingestionUrl\n      - ingestionKey\n      type: object\n    CloudintegrationtypesDataCollected:\n      properties:\n        logs:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesCollectedLogAttribute'\n          nullable: true\n          type: array\n        metrics:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesCollectedMetric'\n          nullable: true\n          type: array\n      type: object\n    CloudintegrationtypesGCPAccountConfig:\n      properties:\n        deploymentProjectId:\n          type: string\n        deploymentRegion:\n          type: string\n        projectIds:\n          items:\n            type: string\n          type: array\n      required:\n      - deploymentProjectId\n      - deploymentRegion\n      - projectIds\n      type: object\n    CloudintegrationtypesGCPConnectionArtifact:\n      type: object\n    CloudintegrationtypesGCPIntegrationConfig:\n      type: object\n    CloudintegrationtypesGCPServiceConfig:\n      properties:\n        logs:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPServiceLogsConfig'\n        metrics:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPServiceMetricsConfig'\n      type: object\n    CloudintegrationtypesGCPServiceLogsConfig:\n      properties:\n        enabled:\n          type: boolean\n      required:\n      - enabled\n      type: object\n    CloudintegrationtypesGCPServiceMetricsConfig:\n      properties:\n        enabled:\n          type: boolean\n      required:\n      - enabled\n      type: object\n    CloudintegrationtypesGettableAccountWithConnectionArtifact:\n      properties:\n        connectionArtifact:\n          $ref: '#/components/schemas/CloudintegrationtypesConnectionArtifact'\n        id:\n          type: string\n      required:\n      - id\n      - connectionArtifact\n      type: object\n    CloudintegrationtypesGettableAccounts:\n      properties:\n        accounts:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesAccount'\n          type: array\n      required:\n      - accounts\n      type: object\n    CloudintegrationtypesGettableAgentCheckIn:\n      properties:\n        account_id:\n          type: string\n        cloud_account_id:\n          type: string\n        cloudIntegrationId:\n          type: string\n        integration_config:\n          $ref: '#/components/schemas/CloudintegrationtypesIntegrationConfig'\n        integrationConfig:\n          $ref: '#/components/schemas/CloudintegrationtypesProviderIntegrationConfig'\n        providerAccountId:\n          type: string\n        removed_at:\n          format: date-time\n          nullable: true\n          type: string\n        removedAt:\n          format: date-time\n          nullable: true\n          type: string\n      required:\n      - account_id\n      - cloud_account_id\n      - integration_config\n      - removed_at\n      - cloudIntegrationId\n      - providerAccountId\n      - integrationConfig\n      - removedAt\n      type: object\n    CloudintegrationtypesGettableServicesMetadata:\n      properties:\n        services:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesServiceMetadata'\n          type: array\n      required:\n      - services\n      type: object\n    CloudintegrationtypesIntegrationConfig:\n      nullable: true\n      properties:\n        enabled_regions:\n          items:\n            type: string\n          type: array\n        telemetry:\n          $ref: '#/components/schemas/CloudintegrationtypesOldAWSCollectionStrategy'\n      required:\n      - enabled_regions\n      - telemetry\n      type: object\n    CloudintegrationtypesOldAWSCollectionStrategy:\n      properties:\n        aws_logs:\n          $ref: '#/components/schemas/CloudintegrationtypesOldAWSLogsStrategy'\n        aws_metrics:\n          $ref: '#/components/schemas/CloudintegrationtypesOldAWSMetricsStrategy'\n        provider:\n          type: string\n        s3_buckets:\n          additionalProperties:\n            items:\n              type: string\n            type: array\n          type: object\n      type: object\n    CloudintegrationtypesOldAWSLogsStrategy:\n      properties:\n        cloudwatch_logs_subscriptions:\n          items:\n            properties:\n              filter_pattern:\n                type: string\n              log_group_name_prefix:\n                type: string\n            type: object\n          nullable: true\n          type: array\n      type: object\n    CloudintegrationtypesOldAWSMetricsStrategy:\n      properties:\n        cloudwatch_metric_stream_filters:\n          items:\n            properties:\n              MetricNames:\n                items:\n                  type: string\n                type: array\n              Namespace:\n                type: string\n            type: object\n          nullable: true\n          type: array\n      type: object\n    CloudintegrationtypesPostableAccount:\n      properties:\n        config:\n          $ref: '#/components/schemas/CloudintegrationtypesPostableAccountConfig'\n        credentials:\n          $ref: '#/components/schemas/CloudintegrationtypesCredentials'\n      required:\n      - config\n      - credentials\n      type: object\n    CloudintegrationtypesPostableAccountConfig:\n      properties:\n        aws:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSPostableAccountConfig'\n        azure:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureAccountConfig'\n        gcp:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPAccountConfig'\n      type: object\n    CloudintegrationtypesPostableAgentCheckIn:\n      properties:\n        account_id:\n          type: string\n        cloud_account_id:\n          type: string\n        cloudIntegrationId:\n          type: string\n        data:\n          additionalProperties: {}\n          nullable: true\n          type: object\n        providerAccountId:\n          type: string\n      required:\n      - data\n      type: object\n    CloudintegrationtypesProviderIntegrationConfig:\n      properties:\n        aws:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSIntegrationConfig'\n        azure:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureIntegrationConfig'\n        gcp:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPIntegrationConfig'\n      type: object\n    CloudintegrationtypesService:\n      properties:\n        assets:\n          $ref: '#/components/schemas/CloudintegrationtypesServiceAssets'\n        cloudIntegrationService:\n          $ref: '#/components/schemas/CloudintegrationtypesCloudIntegrationService'\n        dataCollected:\n          $ref: '#/components/schemas/CloudintegrationtypesDataCollected'\n        icon:\n          type: string\n        id:\n          type: string\n        overview:\n          type: string\n        supportedSignals:\n          $ref: '#/components/schemas/CloudintegrationtypesSupportedSignals'\n        title:\n          type: string\n      required:\n      - id\n      - title\n      - icon\n      - overview\n      - assets\n      - supportedSignals\n      - dataCollected\n      - cloudIntegrationService\n      type: object\n    CloudintegrationtypesServiceAssets:\n      properties:\n        dashboards:\n          items:\n            $ref: '#/components/schemas/CloudintegrationtypesServiceDashboard'\n          type: array\n      required:\n      - dashboards\n      type: object\n    CloudintegrationtypesServiceConfig:\n      properties:\n        aws:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSServiceConfig'\n        azure:\n          $ref: '#/components/schemas/CloudintegrationtypesAzureServiceConfig'\n        gcp:\n          $ref: '#/components/schemas/CloudintegrationtypesGCPServiceConfig'\n      type: object\n    CloudintegrationtypesServiceDashboard:\n      properties:\n        description:\n          type: string\n        integrationDashboard:\n          $ref: '#/components/schemas/CloudintegrationtypesStorableIntegrationDashboard'\n        title:\n          type: string\n      required:\n      - title\n      - description\n      type: object\n    CloudintegrationtypesServiceID:\n      enum:\n      - alb\n      - api-gateway\n      - dynamodb\n      - ec2\n      - ecs\n      - eks\n      - elasticache\n      - lambda\n      - msk\n      - rds\n      - s3sync\n      - sns\n      - sqs\n      - storageaccountsblob\n      - cdnprofile\n      - virtualmachine\n      - appservice\n      - containerapp\n      - aks\n      - sqldatabase\n      - sqldatabasemi\n      - mysqlflexibleserver\n      - postgresqlflexibleserver\n      - mongodb\n      - cosmosdb\n      - cassandradb\n      - redis\n      - cloudsql_postgres\n      - memorystore_redis\n      - computeengine\n      - gke\n      - cloudstorage\n      - cloudsql_mysql\n      type: string\n    CloudintegrationtypesServiceMetadata:\n      properties:\n        enabled:\n          type: boolean\n        icon:\n          type: string\n        id:\n          type: string\n        title:\n          type: string\n      required:\n      - id\n      - title\n      - icon\n      - enabled\n      type: object\n    CloudintegrationtypesStorableIntegrationDashboard:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        dashboardId:\n          type: string\n        id:\n          type: string\n        provider:\n          type: string\n        slug:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - dashboardId\n      - provider\n      - slug\n      - createdAt\n      - updatedAt\n      type: object\n    CloudintegrationtypesSupportedSignals:\n      properties:\n        logs:\n          type: boolean\n        metrics:\n          type: boolean\n      type: object\n    CloudintegrationtypesUpdatableAccount:\n      properties:\n        config:\n          $ref: '#/components/schemas/CloudintegrationtypesUpdatableAccountConfig'\n      required:\n      - config\n      type: object\n    CloudintegrationtypesUpdatableAccountConfig:\n      properties:\n        aws:\n          $ref: '#/components/schemas/CloudintegrationtypesAWSAccountConfig'\n        azure:\n          $ref: '#/components/schemas/CloudintegrationtypesUpdatableAzureAccountConfig'\n        gcp:\n          $ref: '#/components/schemas/CloudintegrationtypesUpdatableGCPAccountConfig'\n      type: object\n    CloudintegrationtypesUpdatableAzureAccountConfig:\n      properties:\n        resourceGroups:\n          items:\n            type: string\n          type: array\n      required:\n      - resourceGroups\n      type: object\n    CloudintegrationtypesUpdatableGCPAccountConfig:\n      properties:\n        deploymentProjectId:\n          type: string\n        deploymentRegion:\n          type: string\n        projectIds:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - deploymentProjectId\n      - deploymentRegion\n      - projectIds\n      type: object\n    CloudintegrationtypesUpdatableService:\n      properties:\n        config:\n          $ref: '#/components/schemas/CloudintegrationtypesServiceConfig'\n      required:\n      - config\n      type: object\n    CommonJSONRef:\n      properties:\n        $ref:\n          type: string\n      type: object\n    ConfigAuthorization:\n      properties:\n        credentials:\n          type: string\n        credentials_file:\n          type: string\n        credentials_ref:\n          type: string\n        type:\n          type: string\n      type: object\n    ConfigBasicAuth:\n      properties:\n        password:\n          type: string\n        password_file:\n          type: string\n        password_ref:\n          type: string\n        username:\n          type: string\n        username_file:\n          type: string\n        username_ref:\n          type: string\n      type: object\n    ConfigDiscordConfig:\n      properties:\n        avatar_url:\n          type: string\n        content:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        send_resolved:\n          type: boolean\n        title:\n          type: string\n        username:\n          type: string\n        webhook_url:\n          $ref: '#/components/schemas/ConfigSecretURL'\n        webhook_url_file:\n          type: string\n      type: object\n    ConfigDuration:\n      format: int64\n      type: string\n    ConfigEmailConfig:\n      properties:\n        auth_identity:\n          type: string\n        auth_password:\n          type: string\n        auth_password_file:\n          type: string\n        auth_secret:\n          type: string\n        auth_secret_file:\n          type: string\n        auth_username:\n          type: string\n        force_implicit_tls:\n          nullable: true\n          type: boolean\n        from:\n          type: string\n        headers:\n          additionalProperties:\n            type: string\n          type: object\n        hello:\n          type: string\n        html:\n          type: string\n        require_tls:\n          nullable: true\n          type: boolean\n        send_resolved:\n          type: boolean\n        smarthost:\n          $ref: '#/components/schemas/ConfigHostPort'\n        text:\n          type: string\n        threading:\n          $ref: '#/components/schemas/ConfigThreadingConfig'\n        tls_config:\n          $ref: '#/components/schemas/ConfigTLSConfig'\n        to:\n          type: string\n      type: object\n    ConfigHTTPClientConfig:\n      properties:\n        authorization:\n          $ref: '#/components/schemas/ConfigAuthorization'\n        basic_auth:\n          $ref: '#/components/schemas/ConfigBasicAuth'\n        bearer_token:\n          type: string\n        bearer_token_file:\n          type: string\n        enable_http2:\n          type: boolean\n        follow_redirects:\n          type: boolean\n        http_headers:\n          $ref: '#/components/schemas/ConfigHeaders'\n        no_proxy:\n          type: string\n        oauth2:\n          $ref: '#/components/schemas/ConfigOAuth2'\n        proxy_connect_header:\n          $ref: '#/components/schemas/ConfigProxyHeader'\n        proxy_from_environment:\n          type: boolean\n        proxy_url:\n          $ref: '#/components/schemas/ConfigURL'\n        tls_config:\n          $ref: '#/components/schemas/ConfigTLSConfig'\n      type: object\n    ConfigHeaders:\n      type: object\n    ConfigHostPort:\n      type: object\n    ConfigIncidentioConfig:\n      properties:\n        alert_source_token:\n          type: string\n        alert_source_token_file:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        max_alerts:\n          minimum: 0\n          type: integer\n        send_resolved:\n          type: boolean\n        timeout:\n          $ref: '#/components/schemas/TimeDuration'\n        url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        url_file:\n          type: string\n      type: object\n    ConfigJiraConfig:\n      properties:\n        api_type:\n          type: string\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        custom_fields:\n          additionalProperties: {}\n          type: object\n        description:\n          $ref: '#/components/schemas/ConfigJiraFieldConfig'\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        issue_type:\n          type: string\n        labels:\n          items:\n            type: string\n          type: array\n        priority:\n          type: string\n        project:\n          type: string\n        reopen_duration:\n          $ref: '#/components/schemas/ModelDuration'\n        reopen_transition:\n          type: string\n        resolve_transition:\n          type: string\n        send_resolved:\n          type: boolean\n        summary:\n          $ref: '#/components/schemas/ConfigJiraFieldConfig'\n        wont_fix_resolution:\n          type: string\n      type: object\n    ConfigJiraFieldConfig:\n      properties:\n        enable_update:\n          nullable: true\n          type: boolean\n        template:\n          type: string\n      type: object\n    ConfigMSTeamsConfig:\n      properties:\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        send_resolved:\n          type: boolean\n        summary:\n          type: string\n        text:\n          type: string\n        title:\n          type: string\n        webhook_url:\n          $ref: '#/components/schemas/ConfigSecretURL'\n        webhook_url_file:\n          type: string\n      type: object\n    ConfigMSTeamsV2Config:\n      properties:\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        send_resolved:\n          type: boolean\n        text:\n          type: string\n        title:\n          type: string\n        webhook_url:\n          $ref: '#/components/schemas/ConfigSecretURL'\n        webhook_url_file:\n          type: string\n      type: object\n    ConfigMattermostAttachment:\n      properties:\n        author_icon:\n          type: string\n        author_link:\n          type: string\n        author_name:\n          type: string\n        color:\n          type: string\n        fallback:\n          type: string\n        fields:\n          items:\n            $ref: '#/components/schemas/ConfigMattermostField'\n          type: array\n        footer:\n          type: string\n        footer_icon:\n          type: string\n        image_url:\n          type: string\n        pretext:\n          type: string\n        text:\n          type: string\n        thumb_url:\n          type: string\n        title:\n          type: string\n        title_link:\n          type: string\n      type: object\n    ConfigMattermostConfig:\n      properties:\n        attachments:\n          items:\n            $ref: '#/components/schemas/ConfigMattermostAttachment'\n          type: array\n        channel:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        icon_emoji:\n          type: string\n        icon_url:\n          type: string\n        priority:\n          $ref: '#/components/schemas/ConfigMattermostPriority'\n        props:\n          $ref: '#/components/schemas/ConfigMattermostProps'\n        send_resolved:\n          type: boolean\n        text:\n          type: string\n        type:\n          type: string\n        username:\n          type: string\n        webhook_url:\n          $ref: '#/components/schemas/ConfigSecretURL'\n        webhook_url_file:\n          type: string\n      type: object\n    ConfigMattermostField:\n      properties:\n        short:\n          nullable: true\n          type: boolean\n        title:\n          type: string\n        value:\n          type: string\n      type: object\n    ConfigMattermostPriority:\n      properties:\n        persistent_notifications:\n          type: boolean\n        priority:\n          type: string\n        requested_ack:\n          type: boolean\n      type: object\n    ConfigMattermostProps:\n      properties:\n        card:\n          type: string\n      type: object\n    ConfigOAuth2:\n      properties:\n        audience:\n          type: string\n        claims:\n          additionalProperties: {}\n          type: object\n        client_certificate_key:\n          type: string\n        client_certificate_key_file:\n          type: string\n        client_certificate_key_id:\n          type: string\n        client_certificate_key_ref:\n          type: string\n        client_id:\n          type: string\n        client_secret:\n          type: string\n        client_secret_file:\n          type: string\n        client_secret_ref:\n          type: string\n        endpoint_params:\n          additionalProperties:\n            type: string\n          type: object\n        grant_type:\n          type: string\n        iss:\n          type: string\n        no_proxy:\n          type: string\n        proxy_connect_header:\n          $ref: '#/components/schemas/ConfigProxyHeader'\n        proxy_from_environment:\n          type: boolean\n        proxy_url:\n          $ref: '#/components/schemas/ConfigURL'\n        scopes:\n          items:\n            type: string\n          type: array\n        signature_algorithm:\n          type: string\n        token_url:\n          type: string\n      type: object\n    ConfigOpsGenieConfig:\n      properties:\n        actions:\n          type: string\n        api_key:\n          type: string\n        api_key_file:\n          type: string\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        description:\n          type: string\n        details:\n          additionalProperties:\n            type: string\n          type: object\n        entity:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        note:\n          type: string\n        priority:\n          type: string\n        responders:\n          items:\n            $ref: '#/components/schemas/ConfigOpsGenieConfigResponder'\n          type: array\n        send_resolved:\n          type: boolean\n        source:\n          type: string\n        tags:\n          type: string\n        update_alerts:\n          type: boolean\n      type: object\n    ConfigOpsGenieConfigResponder:\n      properties:\n        id:\n          type: string\n        name:\n          type: string\n        type:\n          type: string\n        username:\n          type: string\n      type: object\n    ConfigPagerdutyConfig:\n      properties:\n        class:\n          type: string\n        client:\n          type: string\n        client_url:\n          type: string\n        component:\n          type: string\n        description:\n          type: string\n        details:\n          additionalProperties: {}\n          type: object\n        group:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        images:\n          items:\n            $ref: '#/components/schemas/ConfigPagerdutyImage'\n          type: array\n        links:\n          items:\n            $ref: '#/components/schemas/ConfigPagerdutyLink'\n          type: array\n        routing_key:\n          type: string\n        routing_key_file:\n          type: string\n        send_resolved:\n          type: boolean\n        service_key:\n          type: string\n        service_key_file:\n          type: string\n        severity:\n          type: string\n        source:\n          type: string\n        timeout:\n          $ref: '#/components/schemas/TimeDuration'\n        url:\n          $ref: '#/components/schemas/ConfigURLType2'\n      type: object\n    ConfigPagerdutyImage:\n      properties:\n        alt:\n          type: string\n        href:\n          type: string\n        src:\n          type: string\n      type: object\n    ConfigPagerdutyLink:\n      properties:\n        href:\n          type: string\n        text:\n          type: string\n      type: object\n    ConfigProxyHeader:\n      additionalProperties:\n        items:\n          type: string\n        type: array\n      type: object\n    ConfigPushoverConfig:\n      properties:\n        device:\n          type: string\n        expire:\n          $ref: '#/components/schemas/ConfigDuration'\n        html:\n          type: boolean\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        monospace:\n          type: boolean\n        priority:\n          type: string\n        retry:\n          $ref: '#/components/schemas/ConfigDuration'\n        send_resolved:\n          type: boolean\n        sound:\n          type: string\n        title:\n          type: string\n        token:\n          type: string\n        token_file:\n          type: string\n        ttl:\n          $ref: '#/components/schemas/ConfigDuration'\n        url:\n          type: string\n        url_title:\n          type: string\n        user_key:\n          type: string\n        user_key_file:\n          type: string\n      type: object\n    ConfigRocketchatAttachmentAction:\n      properties:\n        image_url:\n          type: string\n        is_webview:\n          type: boolean\n        msg:\n          type: string\n        msg_in_chat_window:\n          type: boolean\n        msg_processing_type:\n          type: string\n        text:\n          type: string\n        type:\n          type: string\n        url:\n          type: string\n        webview_height_ratio:\n          type: string\n      type: object\n    ConfigRocketchatAttachmentField:\n      properties:\n        short:\n          nullable: true\n          type: boolean\n        title:\n          type: string\n        value:\n          type: string\n      type: object\n    ConfigRocketchatConfig:\n      properties:\n        actions:\n          items:\n            $ref: '#/components/schemas/ConfigRocketchatAttachmentAction'\n          type: array\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        channel:\n          type: string\n        color:\n          type: string\n        emoji:\n          type: string\n        fields:\n          items:\n            $ref: '#/components/schemas/ConfigRocketchatAttachmentField'\n          type: array\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        icon_url:\n          type: string\n        image_url:\n          type: string\n        link_names:\n          type: boolean\n        send_resolved:\n          type: boolean\n        short_fields:\n          type: boolean\n        text:\n          type: string\n        thumb_url:\n          type: string\n        title:\n          type: string\n        title_link:\n          type: string\n        token:\n          type: string\n        token_file:\n          type: string\n        token_id:\n          type: string\n        token_id_file:\n          type: string\n      type: object\n    ConfigSNSConfig:\n      properties:\n        api_url:\n          type: string\n        attributes:\n          additionalProperties:\n            type: string\n          type: object\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        phone_number:\n          type: string\n        send_resolved:\n          type: boolean\n        sigv4:\n          $ref: '#/components/schemas/Sigv4SigV4Config'\n        subject:\n          type: string\n        target_arn:\n          type: string\n        topic_arn:\n          type: string\n      type: object\n    ConfigSecretURL:\n      type: object\n    ConfigSlackAction:\n      properties:\n        confirm:\n          $ref: '#/components/schemas/ConfigSlackConfirmationField'\n        name:\n          type: string\n        style:\n          type: string\n        text:\n          type: string\n        type:\n          type: string\n        url:\n          type: string\n        value:\n          type: string\n      type: object\n    ConfigSlackConfig:\n      properties:\n        actions:\n          items:\n            $ref: '#/components/schemas/ConfigSlackAction'\n          type: array\n        api_url:\n          $ref: '#/components/schemas/ConfigSecretURL'\n        api_url_file:\n          type: string\n        app_token:\n          type: string\n        app_token_file:\n          type: string\n        app_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        callback_id:\n          type: string\n        channel:\n          type: string\n        color:\n          type: string\n        fallback:\n          type: string\n        fields:\n          items:\n            $ref: '#/components/schemas/ConfigSlackField'\n          type: array\n        footer:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        icon_emoji:\n          type: string\n        icon_url:\n          type: string\n        image_url:\n          type: string\n        link_names:\n          type: boolean\n        message_text:\n          type: string\n        mrkdwn_in:\n          items:\n            type: string\n          type: array\n        pretext:\n          type: string\n        send_resolved:\n          type: boolean\n        short_fields:\n          type: boolean\n        text:\n          type: string\n        thumb_url:\n          type: string\n        timeout:\n          $ref: '#/components/schemas/TimeDuration'\n        title:\n          type: string\n        title_link:\n          type: string\n        username:\n          type: string\n      type: object\n    ConfigSlackConfirmationField:\n      properties:\n        dismiss_text:\n          type: string\n        ok_text:\n          type: string\n        text:\n          type: string\n        title:\n          type: string\n      type: object\n    ConfigSlackField:\n      properties:\n        short:\n          nullable: true\n          type: boolean\n        title:\n          type: string\n        value:\n          type: string\n      type: object\n    ConfigTLSConfig:\n      properties:\n        ca:\n          type: string\n        ca_file:\n          type: string\n        ca_ref:\n          type: string\n        cert:\n          type: string\n        cert_file:\n          type: string\n        cert_ref:\n          type: string\n        insecure_skip_verify:\n          type: boolean\n        key:\n          type: string\n        key_file:\n          type: string\n        key_ref:\n          type: string\n        max_version:\n          minimum: 0\n          type: integer\n        min_version:\n          minimum: 0\n          type: integer\n        server_name:\n          type: string\n      type: object\n    ConfigTelegramConfig:\n      properties:\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        chat:\n          format: int64\n          type: integer\n        chat_file:\n          type: string\n        disable_notifications:\n          type: boolean\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        message_thread_id:\n          type: integer\n        parse_mode:\n          type: string\n        send_resolved:\n          type: boolean\n        token:\n          type: string\n        token_file:\n          type: string\n      type: object\n    ConfigThreadingConfig:\n      properties:\n        enabled:\n          type: boolean\n        thread_by_date:\n          type: string\n      type: object\n    ConfigURL:\n      type: object\n    ConfigURLType2:\n      type: object\n    ConfigVictorOpsConfig:\n      properties:\n        api_key:\n          type: string\n        api_key_file:\n          type: string\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        custom_fields:\n          additionalProperties:\n            type: string\n          type: object\n        entity_display_name:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message_type:\n          type: string\n        monitoring_tool:\n          type: string\n        routing_key:\n          type: string\n        send_resolved:\n          type: boolean\n        state_message:\n          type: string\n      type: object\n    ConfigWebexConfig:\n      properties:\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        room_id:\n          type: string\n        send_resolved:\n          type: boolean\n      type: object\n    ConfigWebhookConfig:\n      properties:\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        max_alerts:\n          minimum: 0\n          type: integer\n        send_resolved:\n          type: boolean\n        timeout:\n          $ref: '#/components/schemas/TimeDuration'\n        url:\n          type: string\n        url_file:\n          type: string\n      type: object\n    ConfigWechatConfig:\n      properties:\n        agent_id:\n          type: string\n        api_secret:\n          type: string\n        api_secret_file:\n          type: string\n        api_url:\n          $ref: '#/components/schemas/ConfigURLType2'\n        corp_id:\n          type: string\n        http_config:\n          $ref: '#/components/schemas/ConfigHTTPClientConfig'\n        message:\n          type: string\n        message_type:\n          type: string\n        send_resolved:\n          type: boolean\n        to_party:\n          type: string\n        to_tag:\n          type: string\n        to_user:\n          type: string\n      type: object\n    CoretypesKind:\n      enum:\n      - anonymous\n      - organization\n      - role\n      - serviceaccount\n      - user\n      - notification-channel\n      - route-policy\n      - apdex-setting\n      - auth-domain\n      - session\n      - cloud-integration\n      - cloud-integration-service\n      - integration\n      - dashboard\n      - public-dashboard\n      - ingestion-key\n      - ingestion-limit\n      - pipeline\n      - user-preference\n      - org-preference\n      - quick-filter\n      - ttl-setting\n      - rule\n      - planned-maintenance\n      - saved-view\n      - trace-funnel\n      - factor-password\n      - factor-api-key\n      - license\n      - subscription\n      - logs\n      - traces\n      - metrics\n      - audit-logs\n      - meter-metrics\n      - logs-field\n      - traces-field\n      type: string\n    CoretypesObject:\n      properties:\n        resource:\n          $ref: '#/components/schemas/CoretypesResourceRef'\n        selector:\n          type: string\n      required:\n      - resource\n      - selector\n      type: object\n    CoretypesObjectGroup:\n      properties:\n        resource:\n          $ref: '#/components/schemas/CoretypesResourceRef'\n        selectors:\n          items:\n            type: string\n          type: array\n      required:\n      - resource\n      - selectors\n      type: object\n    CoretypesResourceRef:\n      properties:\n        kind:\n          $ref: '#/components/schemas/CoretypesKind'\n        type:\n          $ref: '#/components/schemas/CoretypesType'\n      required:\n      - type\n      - kind\n      type: object\n    CoretypesType:\n      enum:\n      - user\n      - serviceaccount\n      - anonymous\n      - role\n      - organization\n      - metaresource\n      - telemetryresource\n      type: string\n    DashboardGridItem:\n      properties:\n        content:\n          $ref: '#/components/schemas/CommonJSONRef'\n        height:\n          type: integer\n        width:\n          type: integer\n        x:\n          type: integer\n        \"y\":\n          type: integer\n      type: object\n    DashboardGridLayoutCollapse:\n      properties:\n        open:\n          type: boolean\n      type: object\n    DashboardGridLayoutDisplay:\n      properties:\n        collapse:\n          $ref: '#/components/schemas/DashboardGridLayoutCollapse'\n        title:\n          type: string\n      type: object\n    DashboardGridLayoutSpec:\n      properties:\n        display:\n          $ref: '#/components/schemas/DashboardGridLayoutDisplay'\n        items:\n          items:\n            $ref: '#/components/schemas/DashboardGridItem'\n          nullable: true\n          type: array\n        repeatVariable:\n          type: string\n      type: object\n    DashboardtypesAxes:\n      properties:\n        isLogScale:\n          type: boolean\n        softMax:\n          nullable: true\n          type: number\n        softMin:\n          nullable: true\n          type: number\n      type: object\n    DashboardtypesBarChartPanelSpec:\n      properties:\n        axes:\n          $ref: '#/components/schemas/DashboardtypesAxes'\n        formatting:\n          $ref: '#/components/schemas/DashboardtypesPanelFormatting'\n        legend:\n          $ref: '#/components/schemas/DashboardtypesLegend'\n        thresholds:\n          items:\n            $ref: '#/components/schemas/DashboardtypesThresholdWithLabel'\n          nullable: true\n          type: array\n        visualization:\n          $ref: '#/components/schemas/DashboardtypesBarChartVisualization'\n      type: object\n    DashboardtypesBarChartVisualization:\n      properties:\n        fillSpans:\n          type: boolean\n        stackedBarChart:\n          type: boolean\n        timePreference:\n          $ref: '#/components/schemas/DashboardtypesTimePreference'\n      type: object\n    DashboardtypesBasicVisualization:\n      properties:\n        timePreference:\n          $ref: '#/components/schemas/DashboardtypesTimePreference'\n      type: object\n    DashboardtypesBuilderQuerySpec:\n      discriminator:\n        mapping:\n          logs: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5LogAggregation'\n          metrics: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5MetricAggregation'\n          traces: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5TraceAggregation'\n        propertyName: signal\n      oneOf:\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5LogAggregation'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5MetricAggregation'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5TraceAggregation'\n      type: object\n    DashboardtypesComparisonOperator:\n      enum:\n      - above\n      - below\n      - above_or_equal\n      - below_or_equal\n      - equal\n      - not_equal\n      type: string\n    DashboardtypesComparisonThreshold:\n      properties:\n        color:\n          type: string\n        format:\n          $ref: '#/components/schemas/DashboardtypesThresholdFormat'\n        operator:\n          $ref: '#/components/schemas/DashboardtypesComparisonOperator'\n        unit:\n          type: string\n        value:\n          format: double\n          type: number\n      required:\n      - value\n      - color\n      type: object\n    DashboardtypesCustomVariableSpec:\n      properties:\n        customValue:\n          type: string\n      required:\n      - customValue\n      type: object\n    DashboardtypesDashboard:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        data:\n          $ref: '#/components/schemas/DashboardtypesStorableDashboardData'\n        id:\n          type: string\n        locked:\n          type: boolean\n        org_id:\n          type: string\n        source:\n          $ref: '#/components/schemas/DashboardtypesSource'\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      type: object\n    DashboardtypesDashboardPanelRef:\n      properties:\n        dashboardId:\n          type: string\n        dashboardName:\n          type: string\n        filterBy:\n          items:\n            type: string\n          type: array\n        groupBy:\n          items:\n            type: string\n          type: array\n        panelId:\n          type: string\n        panelName:\n          type: string\n      required:\n      - dashboardId\n      - dashboardName\n      - panelId\n      - panelName\n      type: object\n    DashboardtypesDashboardSpec:\n      properties:\n        display:\n          $ref: '#/components/schemas/DashboardtypesDisplay'\n        duration:\n          type: string\n        layouts:\n          items:\n            $ref: '#/components/schemas/DashboardtypesLayout'\n          type: array\n        links:\n          items:\n            $ref: '#/components/schemas/DashboardtypesLink'\n          nullable: true\n          type: array\n        panels:\n          additionalProperties:\n            $ref: '#/components/schemas/DashboardtypesPanel'\n          type: object\n        refreshInterval:\n          type: string\n        variables:\n          items:\n            $ref: '#/components/schemas/DashboardtypesVariable'\n          type: array\n      required:\n      - display\n      - variables\n      - panels\n      - layouts\n      type: object\n    DashboardtypesDashboardView:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        data:\n          $ref: '#/components/schemas/DashboardtypesDashboardViewData'\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - name\n      - data\n      - orgId\n      type: object\n    DashboardtypesDashboardViewData:\n      properties:\n        order:\n          $ref: '#/components/schemas/DashboardtypesListOrder'\n        query:\n          type: string\n        sort:\n          $ref: '#/components/schemas/DashboardtypesListSort'\n        version:\n          type: string\n      required:\n      - version\n      type: object\n    DashboardtypesDisplay:\n      properties:\n        description:\n          type: string\n        name:\n          type: string\n      required:\n      - name\n      type: object\n    DashboardtypesDynamicVariableSignal:\n      enum:\n      - traces\n      - logs\n      - metrics\n      - all\n      type: string\n    DashboardtypesDynamicVariableSpec:\n      properties:\n        name:\n          type: string\n        signal:\n          $ref: '#/components/schemas/DashboardtypesDynamicVariableSignal'\n      required:\n      - name\n      - signal\n      type: object\n    DashboardtypesFillMode:\n      enum:\n      - solid\n      - gradient\n      - none\n      type: string\n    DashboardtypesGettableDashboardV2:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        id:\n          type: string\n        image:\n          type: string\n        locked:\n          type: boolean\n        name:\n          type: string\n        orgId:\n          type: string\n        schemaVersion:\n          type: string\n        source:\n          $ref: '#/components/schemas/DashboardtypesSource'\n        spec:\n          $ref: '#/components/schemas/DashboardtypesDashboardSpec'\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesGettableTag'\n          nullable: true\n          type: array\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - orgId\n      - locked\n      - source\n      - schemaVersion\n      - name\n      - tags\n      - spec\n      type: object\n    DashboardtypesGettablePublicDasbhboard:\n      properties:\n        defaultTimeRange:\n          type: string\n        publicPath:\n          type: string\n        timeRangeEnabled:\n          type: boolean\n      type: object\n    DashboardtypesGettablePublicDashboardData:\n      properties:\n        dashboard:\n          $ref: '#/components/schemas/DashboardtypesDashboard'\n        publicDashboard:\n          $ref: '#/components/schemas/DashboardtypesGettablePublicDasbhboard'\n      type: object\n    DashboardtypesGettablePublicDashboardDataV2:\n      properties:\n        dashboard:\n          $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n        publicDashboard:\n          $ref: '#/components/schemas/DashboardtypesGettablePublicDasbhboard'\n      type: object\n    DashboardtypesHistogramBuckets:\n      properties:\n        bucketCount:\n          nullable: true\n          type: number\n        bucketWidth:\n          nullable: true\n          type: number\n        mergeAllActiveQueries:\n          type: boolean\n      type: object\n    DashboardtypesHistogramPanelSpec:\n      properties:\n        histogramBuckets:\n          $ref: '#/components/schemas/DashboardtypesHistogramBuckets'\n        legend:\n          $ref: '#/components/schemas/DashboardtypesLegend'\n      type: object\n    DashboardtypesJSONPatchOperation:\n      properties:\n        from:\n          description: Source JSON Pointer for move/copy ops; ignored for other ops.\n          type: string\n        op:\n          $ref: '#/components/schemas/DashboardtypesPatchOp'\n        path:\n          description: JSON Pointer (RFC 6901) into the dashboard's postable shape\n            — e.g. /spec/display/name, /spec/panels/<id>, /spec/panels/<id>/spec/queries/0,\n            /tags/-.\n          type: string\n        value:\n          description: 'Value to add/replace/test against. The expected type depends\n            on the path. Common shapes (see referenced schemas for the exact field\n            set): /spec/panels/<id> takes a DashboardtypesPanel; /spec/panels/<id>/spec/queries/N\n            (or /-) takes a DashboardtypesQuery; /spec/variables/N takes a DashboardtypesVariable;\n            /spec/layouts/N takes a DashboardtypesLayout; /tags/N (or /-) takes a\n            TagtypesPostableTag; /spec/display/name and other leaf string fields take\n            a string. Required for add/replace/test; ignored for remove/move/copy.'\n      required:\n      - op\n      - path\n      type: object\n    DashboardtypesLayout:\n      discriminator:\n        mapping:\n          Grid: '#/components/schemas/DashboardtypesLayoutEnvelopeGithubComPersesSpecGoDashboardGridLayoutSpec'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/DashboardtypesLayoutEnvelopeGithubComPersesSpecGoDashboardGridLayoutSpec'\n      type: object\n    DashboardtypesLayoutEnvelopeGithubComPersesSpecGoDashboardGridLayoutSpec:\n      properties:\n        kind:\n          enum:\n          - Grid\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardGridLayoutSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesLegend:\n      properties:\n        customColors:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        mode:\n          $ref: '#/components/schemas/DashboardtypesLegendMode'\n        position:\n          $ref: '#/components/schemas/DashboardtypesLegendPosition'\n      type: object\n    DashboardtypesLegendMode:\n      enum:\n      - list\n      type: string\n    DashboardtypesLegendPosition:\n      enum:\n      - bottom\n      - right\n      type: string\n    DashboardtypesLineInterpolation:\n      enum:\n      - linear\n      - spline\n      - step_after\n      - step_before\n      type: string\n    DashboardtypesLineStyle:\n      enum:\n      - solid\n      - dashed\n      type: string\n    DashboardtypesLink:\n      properties:\n        name:\n          type: string\n        renderVariables:\n          type: boolean\n        targetBlank:\n          type: boolean\n        tooltip:\n          type: string\n        url:\n          type: string\n      type: object\n    DashboardtypesListOrder:\n      enum:\n      - asc\n      - desc\n      type: string\n    DashboardtypesListPanelSpec:\n      properties:\n        selectFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          nullable: true\n          type: array\n      type: object\n    DashboardtypesListSort:\n      enum:\n      - updated_at\n      - created_at\n      - name\n      type: string\n    DashboardtypesListVariableSpec:\n      properties:\n        allowAllValue:\n          type: boolean\n        allowMultiple:\n          type: boolean\n        capturingRegexp:\n          type: string\n        customAllValue:\n          type: string\n        defaultValue:\n          $ref: '#/components/schemas/DashboardtypesVariableDefaultValue'\n        display:\n          $ref: '#/components/schemas/DashboardtypesDisplay'\n        name:\n          minLength: 1\n          type: string\n        plugin:\n          $ref: '#/components/schemas/DashboardtypesVariablePlugin'\n        sort:\n          $ref: '#/components/schemas/DashboardtypesListVariableSpecSort'\n      required:\n      - display\n      - name\n      type: object\n    DashboardtypesListVariableSpecSort:\n      enum:\n      - none\n      - alphabetical-asc\n      - alphabetical-desc\n      - numerical-asc\n      - numerical-desc\n      - alphabetical-ci-asc\n      - alphabetical-ci-desc\n      type: string\n    DashboardtypesListableDashboardForUserV2:\n      properties:\n        dashboards:\n          items:\n            $ref: '#/components/schemas/DashboardtypesListedDashboardForUserV2'\n          type: array\n        reservedKeywords:\n          items:\n            type: string\n          type: array\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesGettableTag'\n          type: array\n        total:\n          format: int64\n          type: integer\n      required:\n      - dashboards\n      - total\n      - tags\n      - reservedKeywords\n      type: object\n    DashboardtypesListableDashboardV2:\n      properties:\n        dashboards:\n          items:\n            $ref: '#/components/schemas/DashboardtypesListedDashboardV2'\n          type: array\n        reservedKeywords:\n          items:\n            type: string\n          type: array\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesGettableTag'\n          type: array\n        total:\n          format: int64\n          type: integer\n      required:\n      - dashboards\n      - total\n      - tags\n      - reservedKeywords\n      type: object\n    DashboardtypesListableDashboardView:\n      properties:\n        views:\n          items:\n            $ref: '#/components/schemas/DashboardtypesDashboardView'\n          type: array\n      required:\n      - views\n      type: object\n    DashboardtypesListedDashboardForUserV2:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        id:\n          type: string\n        image:\n          type: string\n        legacy:\n          type: boolean\n        locked:\n          type: boolean\n        name:\n          type: string\n        orgId:\n          type: string\n        pinned:\n          type: boolean\n        schemaVersion:\n          type: string\n        source:\n          $ref: '#/components/schemas/DashboardtypesSource'\n        spec:\n          $ref: '#/components/schemas/DashboardtypesListedDashboardV2Spec'\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesGettableTag'\n          type: array\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - orgId\n      - locked\n      - source\n      - schemaVersion\n      - name\n      - tags\n      - spec\n      - legacy\n      - pinned\n      type: object\n    DashboardtypesListedDashboardV2:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        id:\n          type: string\n        image:\n          type: string\n        legacy:\n          type: boolean\n        locked:\n          type: boolean\n        name:\n          type: string\n        orgId:\n          type: string\n        schemaVersion:\n          type: string\n        source:\n          $ref: '#/components/schemas/DashboardtypesSource'\n        spec:\n          $ref: '#/components/schemas/DashboardtypesListedDashboardV2Spec'\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesGettableTag'\n          type: array\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - orgId\n      - locked\n      - source\n      - schemaVersion\n      - name\n      - tags\n      - spec\n      - legacy\n      type: object\n    DashboardtypesListedDashboardV2Spec:\n      properties:\n        display:\n          $ref: '#/components/schemas/DashboardtypesDisplay'\n      type: object\n    DashboardtypesNumberPanelSpec:\n      properties:\n        formatting:\n          $ref: '#/components/schemas/DashboardtypesPanelFormatting'\n        thresholds:\n          items:\n            $ref: '#/components/schemas/DashboardtypesComparisonThreshold'\n          nullable: true\n          type: array\n        visualization:\n          $ref: '#/components/schemas/DashboardtypesBasicVisualization'\n      type: object\n    DashboardtypesPanel:\n      properties:\n        kind:\n          $ref: '#/components/schemas/DashboardtypesPanelKind'\n        spec:\n          $ref: '#/components/schemas/DashboardtypesPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelFormatting:\n      properties:\n        decimalPrecision:\n          $ref: '#/components/schemas/DashboardtypesPrecisionOption'\n        unit:\n          type: string\n      type: object\n    DashboardtypesPanelKind:\n      enum:\n      - Panel\n      type: string\n    DashboardtypesPanelPlugin:\n      discriminator:\n        mapping:\n          signoz/BarChartPanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesBarChartPanelSpec'\n          signoz/HistogramPanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesHistogramPanelSpec'\n          signoz/ListPanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesListPanelSpec'\n          signoz/NumberPanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesNumberPanelSpec'\n          signoz/PieChartPanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesPieChartPanelSpec'\n          signoz/TablePanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesTablePanelSpec'\n          signoz/TimeSeriesPanel: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesTimeSeriesPanelSpec'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesTimeSeriesPanelSpec'\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesBarChartPanelSpec'\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesNumberPanelSpec'\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesPieChartPanelSpec'\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesTablePanelSpec'\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesHistogramPanelSpec'\n      - $ref: '#/components/schemas/DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesListPanelSpec'\n      type: object\n    DashboardtypesPanelPluginKind:\n      enum:\n      - signoz/TimeSeriesPanel\n      - signoz/BarChartPanel\n      - signoz/NumberPanel\n      - signoz/PieChartPanel\n      - signoz/TablePanel\n      - signoz/HistogramPanel\n      - signoz/ListPanel\n      type: string\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesBarChartPanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/BarChartPanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesBarChartPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesHistogramPanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/HistogramPanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesHistogramPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesListPanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/ListPanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesListPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesNumberPanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/NumberPanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesNumberPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesPieChartPanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/PieChartPanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesPieChartPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesTablePanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/TablePanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesTablePanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesTimeSeriesPanelSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/TimeSeriesPanel\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesTimeSeriesPanelSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesPanelSpec:\n      properties:\n        display:\n          $ref: '#/components/schemas/DashboardtypesDisplay'\n        links:\n          items:\n            $ref: '#/components/schemas/DashboardtypesLink'\n          nullable: true\n          type: array\n        plugin:\n          $ref: '#/components/schemas/DashboardtypesPanelPlugin'\n        queries:\n          items:\n            $ref: '#/components/schemas/DashboardtypesQuery'\n          type: array\n      required:\n      - display\n      - plugin\n      - queries\n      type: object\n    DashboardtypesPatchOp:\n      enum:\n      - add\n      - remove\n      - replace\n      - move\n      - copy\n      - test\n      type: string\n    DashboardtypesPatchableDashboardV2:\n      items:\n        $ref: '#/components/schemas/DashboardtypesJSONPatchOperation'\n      nullable: true\n      type: array\n    DashboardtypesPieChartPanelSpec:\n      properties:\n        formatting:\n          $ref: '#/components/schemas/DashboardtypesPanelFormatting'\n        legend:\n          $ref: '#/components/schemas/DashboardtypesLegend'\n        visualization:\n          $ref: '#/components/schemas/DashboardtypesBasicVisualization'\n      type: object\n    DashboardtypesPostableDashboardV2:\n      properties:\n        generateName:\n          type: boolean\n        image:\n          type: string\n        name:\n          type: string\n        schemaVersion:\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesDashboardSpec'\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesPostableTag'\n          nullable: true\n          type: array\n      required:\n      - schemaVersion\n      - tags\n      - spec\n      type: object\n    DashboardtypesPostableDashboardView:\n      properties:\n        data:\n          $ref: '#/components/schemas/DashboardtypesDashboardViewData'\n        name:\n          type: string\n      required:\n      - name\n      - data\n      type: object\n    DashboardtypesPostablePublicDashboard:\n      properties:\n        defaultTimeRange:\n          type: string\n        timeRangeEnabled:\n          type: boolean\n      type: object\n    DashboardtypesPrecisionOption:\n      enum:\n      - \"0\"\n      - \"1\"\n      - \"2\"\n      - \"3\"\n      - \"4\"\n      - full\n      type: string\n    DashboardtypesQuery:\n      properties:\n        kind:\n          $ref: '#/components/schemas/Querybuildertypesv5RequestType'\n        spec:\n          $ref: '#/components/schemas/DashboardtypesQuerySpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQueryPlugin:\n      discriminator:\n        mapping:\n          signoz/BuilderQuery: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesBuilderQuerySpec'\n          signoz/ClickHouseSQL: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5ClickHouseQuery'\n          signoz/CompositeQuery: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5CompositeQuery'\n          signoz/Formula: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5QueryBuilderFormula'\n          signoz/PromQLQuery: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5PromQuery'\n          signoz/TraceOperator: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5QueryBuilderTraceOperator'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesBuilderQuerySpec'\n      - $ref: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5CompositeQuery'\n      - $ref: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5QueryBuilderFormula'\n      - $ref: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5PromQuery'\n      - $ref: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5ClickHouseQuery'\n      - $ref: '#/components/schemas/DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5QueryBuilderTraceOperator'\n      type: object\n    DashboardtypesQueryPluginKind:\n      enum:\n      - signoz/BuilderQuery\n      - signoz/CompositeQuery\n      - signoz/Formula\n      - signoz/PromQLQuery\n      - signoz/ClickHouseSQL\n      - signoz/TraceOperator\n      type: string\n    DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesDashboardtypesBuilderQuerySpec:\n      properties:\n        kind:\n          enum:\n          - signoz/BuilderQuery\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesBuilderQuerySpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5ClickHouseQuery:\n      properties:\n        kind:\n          enum:\n          - signoz/ClickHouseSQL\n          type: string\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5ClickHouseQuery'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5CompositeQuery:\n      properties:\n        kind:\n          enum:\n          - signoz/CompositeQuery\n          type: string\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5CompositeQuery'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5PromQuery:\n      properties:\n        kind:\n          enum:\n          - signoz/PromQLQuery\n          type: string\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5PromQuery'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5QueryBuilderFormula:\n      properties:\n        kind:\n          enum:\n          - signoz/Formula\n          type: string\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderFormula'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQueryPluginVariantGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5QueryBuilderTraceOperator:\n      properties:\n        kind:\n          enum:\n          - signoz/TraceOperator\n          type: string\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderTraceOperator'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesQuerySpec:\n      properties:\n        name:\n          type: string\n        plugin:\n          $ref: '#/components/schemas/DashboardtypesQueryPlugin'\n      required:\n      - plugin\n      type: object\n    DashboardtypesQueryVariableSpec:\n      properties:\n        queryValue:\n          type: string\n      required:\n      - queryValue\n      type: object\n    DashboardtypesSource:\n      enum:\n      - user\n      - system\n      - integration\n      type: string\n    DashboardtypesSpanGaps:\n      properties:\n        fillLessThan:\n          description: The maximum gap size to connect when fillOnlyBelow is true.\n            Gaps larger than this duration are left disconnected.\n          type: string\n        fillOnlyBelow:\n          description: Controls whether lines connect across null values. When false\n            (default), all gaps are connected. When true, only gaps smaller than fillLessThan\n            are connected.\n          type: boolean\n      type: object\n    DashboardtypesStorableDashboardData:\n      additionalProperties: {}\n      type: object\n    DashboardtypesTableFormatting:\n      properties:\n        columnUnits:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        decimalPrecision:\n          $ref: '#/components/schemas/DashboardtypesPrecisionOption'\n      type: object\n    DashboardtypesTablePanelSpec:\n      properties:\n        formatting:\n          $ref: '#/components/schemas/DashboardtypesTableFormatting'\n        thresholds:\n          items:\n            $ref: '#/components/schemas/DashboardtypesTableThreshold'\n          nullable: true\n          type: array\n        visualization:\n          $ref: '#/components/schemas/DashboardtypesBasicVisualization'\n      type: object\n    DashboardtypesTableThreshold:\n      properties:\n        color:\n          type: string\n        columnName:\n          type: string\n        format:\n          $ref: '#/components/schemas/DashboardtypesThresholdFormat'\n        operator:\n          $ref: '#/components/schemas/DashboardtypesComparisonOperator'\n        unit:\n          type: string\n        value:\n          format: double\n          type: number\n      required:\n      - value\n      - color\n      - columnName\n      type: object\n    DashboardtypesTextVariableSpec:\n      properties:\n        constant:\n          type: boolean\n        display:\n          $ref: '#/components/schemas/DashboardtypesDisplay'\n        name:\n          minLength: 1\n          type: string\n        value:\n          type: string\n      required:\n      - display\n      - value\n      - name\n      type: object\n    DashboardtypesThresholdFormat:\n      enum:\n      - text\n      - background\n      type: string\n    DashboardtypesThresholdWithLabel:\n      properties:\n        color:\n          type: string\n        label:\n          type: string\n        unit:\n          type: string\n        value:\n          format: double\n          type: number\n      required:\n      - value\n      - color\n      type: object\n    DashboardtypesTimePreference:\n      enum:\n      - global_time\n      - last_5_min\n      - last_15_min\n      - last_30_min\n      - last_1_hr\n      - last_6_hr\n      - last_1_day\n      - last_3_days\n      - last_1_week\n      - last_1_month\n      type: string\n    DashboardtypesTimeSeriesChartAppearance:\n      properties:\n        fillMode:\n          $ref: '#/components/schemas/DashboardtypesFillMode'\n        lineInterpolation:\n          $ref: '#/components/schemas/DashboardtypesLineInterpolation'\n        lineStyle:\n          $ref: '#/components/schemas/DashboardtypesLineStyle'\n        showPoints:\n          type: boolean\n        spanGaps:\n          $ref: '#/components/schemas/DashboardtypesSpanGaps'\n      type: object\n    DashboardtypesTimeSeriesPanelSpec:\n      properties:\n        axes:\n          $ref: '#/components/schemas/DashboardtypesAxes'\n        chartAppearance:\n          $ref: '#/components/schemas/DashboardtypesTimeSeriesChartAppearance'\n        formatting:\n          $ref: '#/components/schemas/DashboardtypesPanelFormatting'\n        legend:\n          $ref: '#/components/schemas/DashboardtypesLegend'\n        thresholds:\n          items:\n            $ref: '#/components/schemas/DashboardtypesThresholdWithLabel'\n          nullable: true\n          type: array\n        visualization:\n          $ref: '#/components/schemas/DashboardtypesTimeSeriesVisualization'\n      type: object\n    DashboardtypesTimeSeriesVisualization:\n      properties:\n        fillSpans:\n          type: boolean\n        timePreference:\n          $ref: '#/components/schemas/DashboardtypesTimePreference'\n      type: object\n    DashboardtypesUpdatableDashboardV2:\n      properties:\n        image:\n          type: string\n        name:\n          type: string\n        schemaVersion:\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesDashboardSpec'\n        tags:\n          items:\n            $ref: '#/components/schemas/TagtypesPostableTag'\n          nullable: true\n          type: array\n      required:\n      - schemaVersion\n      - name\n      - tags\n      - spec\n      type: object\n    DashboardtypesUpdatablePublicDashboard:\n      properties:\n        defaultTimeRange:\n          type: string\n        timeRangeEnabled:\n          type: boolean\n      type: object\n    DashboardtypesVariable:\n      discriminator:\n        mapping:\n          ListVariable: '#/components/schemas/DashboardtypesVariableEnvelopeGithubComSigNozSignozPkgTypesDashboardtypesListVariableSpec'\n          TextVariable: '#/components/schemas/DashboardtypesVariableEnvelopeGithubComSigNozSignozPkgTypesDashboardtypesTextVariableSpec'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/DashboardtypesVariableEnvelopeGithubComSigNozSignozPkgTypesDashboardtypesListVariableSpec'\n      - $ref: '#/components/schemas/DashboardtypesVariableEnvelopeGithubComSigNozSignozPkgTypesDashboardtypesTextVariableSpec'\n      type: object\n    DashboardtypesVariableDefaultValue:\n      oneOf:\n      - type: string\n      - items:\n          type: string\n        type: array\n    DashboardtypesVariableEnvelopeGithubComSigNozSignozPkgTypesDashboardtypesListVariableSpec:\n      properties:\n        kind:\n          enum:\n          - ListVariable\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesListVariableSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesVariableEnvelopeGithubComSigNozSignozPkgTypesDashboardtypesTextVariableSpec:\n      properties:\n        kind:\n          enum:\n          - TextVariable\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesTextVariableSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesVariablePlugin:\n      discriminator:\n        mapping:\n          signoz/CustomVariable: '#/components/schemas/DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesCustomVariableSpec'\n          signoz/DynamicVariable: '#/components/schemas/DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesDynamicVariableSpec'\n          signoz/QueryVariable: '#/components/schemas/DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesQueryVariableSpec'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesDynamicVariableSpec'\n      - $ref: '#/components/schemas/DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesQueryVariableSpec'\n      - $ref: '#/components/schemas/DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesCustomVariableSpec'\n      type: object\n    DashboardtypesVariablePluginKind:\n      enum:\n      - signoz/DynamicVariable\n      - signoz/QueryVariable\n      - signoz/CustomVariable\n      type: string\n    DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesCustomVariableSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/CustomVariable\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesCustomVariableSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesDynamicVariableSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/DynamicVariable\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesDynamicVariableSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    DashboardtypesVariablePluginVariantGithubComSigNozSignozPkgTypesDashboardtypesQueryVariableSpec:\n      properties:\n        kind:\n          enum:\n          - signoz/QueryVariable\n          type: string\n        spec:\n          $ref: '#/components/schemas/DashboardtypesQueryVariableSpec'\n      required:\n      - kind\n      - spec\n      type: object\n    ErrorsJSON:\n      properties:\n        code:\n          type: string\n        errors:\n          items:\n            $ref: '#/components/schemas/ErrorsResponseerroradditional'\n          type: array\n        message:\n          type: string\n        retry:\n          $ref: '#/components/schemas/ErrorsResponseretryjson'\n        suggestions:\n          items:\n            type: string\n          type: array\n        type:\n          type: string\n        url:\n          type: string\n      required:\n      - type\n      - code\n      - message\n      - errors\n      - suggestions\n      type: object\n    ErrorsResponseerroradditional:\n      properties:\n        message:\n          type: string\n        suggestions:\n          items:\n            type: string\n          type: array\n      required:\n      - message\n      - suggestions\n      type: object\n    ErrorsResponseretryjson:\n      properties:\n        delay:\n          $ref: '#/components/schemas/TimeDuration'\n      required:\n      - delay\n      type: object\n    FactoryResponse:\n      properties:\n        healthy:\n          type: boolean\n        services:\n          additionalProperties:\n            items:\n              type: string\n            type: array\n          nullable: true\n          type: object\n      type: object\n    FeaturetypesGettableFeature:\n      properties:\n        defaultVariant:\n          type: string\n        description:\n          type: string\n        kind:\n          type: string\n        name:\n          type: string\n        resolvedValue: {}\n        stage:\n          type: string\n        variants:\n          additionalProperties: {}\n          nullable: true\n          type: object\n      type: object\n    GatewaytypesGettableCreatedIngestionKey:\n      properties:\n        id:\n          type: string\n        value:\n          type: string\n      required:\n      - id\n      - value\n      type: object\n    GatewaytypesGettableCreatedIngestionKeyLimit:\n      properties:\n        id:\n          type: string\n      required:\n      - id\n      type: object\n    GatewaytypesGettableIngestionKeys:\n      properties:\n        _pagination:\n          $ref: '#/components/schemas/GatewaytypesPagination'\n        keys:\n          items:\n            $ref: '#/components/schemas/GatewaytypesIngestionKey'\n          nullable: true\n          type: array\n      type: object\n    GatewaytypesIngestionKey:\n      properties:\n        created_at:\n          format: date-time\n          type: string\n        expires_at:\n          format: date-time\n          type: string\n        id:\n          type: string\n        limits:\n          items:\n            $ref: '#/components/schemas/GatewaytypesLimit'\n          nullable: true\n          type: array\n        name:\n          type: string\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n        updated_at:\n          format: date-time\n          type: string\n        value:\n          type: string\n        workspace_id:\n          type: string\n      type: object\n    GatewaytypesLimit:\n      properties:\n        config:\n          $ref: '#/components/schemas/GatewaytypesLimitConfig'\n        created_at:\n          format: date-time\n          type: string\n        id:\n          type: string\n        key_id:\n          type: string\n        metric:\n          $ref: '#/components/schemas/GatewaytypesLimitMetric'\n        signal:\n          type: string\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n        updated_at:\n          format: date-time\n          type: string\n      type: object\n    GatewaytypesLimitConfig:\n      properties:\n        day:\n          $ref: '#/components/schemas/GatewaytypesLimitValue'\n        second:\n          $ref: '#/components/schemas/GatewaytypesLimitValue'\n      type: object\n    GatewaytypesLimitMetric:\n      properties:\n        day:\n          $ref: '#/components/schemas/GatewaytypesLimitMetricValue'\n        second:\n          $ref: '#/components/schemas/GatewaytypesLimitMetricValue'\n      type: object\n    GatewaytypesLimitMetricValue:\n      properties:\n        count:\n          format: int64\n          type: integer\n        size:\n          format: int64\n          type: integer\n      type: object\n    GatewaytypesLimitValue:\n      properties:\n        count:\n          nullable: true\n          type: integer\n        size:\n          nullable: true\n          type: integer\n      type: object\n    GatewaytypesPagination:\n      properties:\n        page:\n          type: integer\n        pages:\n          type: integer\n        per_page:\n          type: integer\n        total:\n          type: integer\n      type: object\n    GatewaytypesPostableIngestionKey:\n      properties:\n        expires_at:\n          format: date-time\n          type: string\n        name:\n          type: string\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - name\n      type: object\n    GatewaytypesPostableIngestionKeyLimit:\n      properties:\n        config:\n          $ref: '#/components/schemas/GatewaytypesLimitConfig'\n        signal:\n          type: string\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n      type: object\n    GatewaytypesUpdatableIngestionKeyLimit:\n      properties:\n        config:\n          $ref: '#/components/schemas/GatewaytypesLimitConfig'\n        tags:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - config\n      type: object\n    GlobaltypesAPIKeyConfig:\n      properties:\n        enabled:\n          type: boolean\n      type: object\n    GlobaltypesConfig:\n      properties:\n        ai_assistant_url:\n          nullable: true\n          type: string\n        external_url:\n          type: string\n        identN:\n          $ref: '#/components/schemas/GlobaltypesIdentNConfig'\n        ingestion_url:\n          type: string\n        mcp_url:\n          nullable: true\n          type: string\n      required:\n      - external_url\n      - ingestion_url\n      - mcp_url\n      - ai_assistant_url\n      type: object\n    GlobaltypesIdentNConfig:\n      properties:\n        apikey:\n          $ref: '#/components/schemas/GlobaltypesAPIKeyConfig'\n        impersonation:\n          $ref: '#/components/schemas/GlobaltypesImpersonationConfig'\n        tokenizer:\n          $ref: '#/components/schemas/GlobaltypesTokenizerConfig'\n      type: object\n    GlobaltypesImpersonationConfig:\n      properties:\n        enabled:\n          type: boolean\n      type: object\n    GlobaltypesTokenizerConfig:\n      properties:\n        enabled:\n          type: boolean\n      type: object\n    InframonitoringtypesAssociatedComponent:\n      properties:\n        name:\n          type: string\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesCheckComponentType'\n      required:\n      - type\n      - name\n      type: object\n    InframonitoringtypesAttributesComponentEntry:\n      properties:\n        associatedComponent:\n          $ref: '#/components/schemas/InframonitoringtypesAssociatedComponent'\n        attributes:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - attributes\n      - associatedComponent\n      type: object\n    InframonitoringtypesCheckComponentType:\n      enum:\n      - receiver\n      - processor\n      type: string\n    InframonitoringtypesCheckType:\n      enum:\n      - hosts\n      - processes\n      - pods\n      - nodes\n      - deployments\n      - daemonsets\n      - statefulsets\n      - jobs\n      - namespaces\n      - clusters\n      - volumes\n      - kube_containers\n      type: string\n    InframonitoringtypesChecks:\n      properties:\n        missingDefaultEnabledMetrics:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesMissingMetricsComponentEntry'\n          nullable: true\n          type: array\n        missingOptionalMetrics:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesMissingMetricsComponentEntry'\n          nullable: true\n          type: array\n        missingRequiredAttributes:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesMissingAttributesComponentEntry'\n          nullable: true\n          type: array\n        presentDefaultEnabledMetrics:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesMetricsComponentEntry'\n          nullable: true\n          type: array\n        presentOptionalMetrics:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesMetricsComponentEntry'\n          nullable: true\n          type: array\n        presentRequiredAttributes:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesAttributesComponentEntry'\n          nullable: true\n          type: array\n        ready:\n          type: boolean\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesCheckType'\n      required:\n      - type\n      - ready\n      - presentDefaultEnabledMetrics\n      - presentOptionalMetrics\n      - presentRequiredAttributes\n      - missingDefaultEnabledMetrics\n      - missingOptionalMetrics\n      - missingRequiredAttributes\n      type: object\n    InframonitoringtypesClusterFilter:\n      properties:\n        expression:\n          type: string\n        filterByNodeReadiness:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesNodeCondition'\n          nullable: true\n          type: array\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesClusterRecord:\n      properties:\n        clusterCPU:\n          format: double\n          type: number\n        clusterCPUAllocatable:\n          format: double\n          type: number\n        clusterMemory:\n          format: double\n          type: number\n        clusterMemoryAllocatable:\n          format: double\n          type: number\n        clusterName:\n          type: string\n        counts:\n          properties:\n            daemonSets:\n              format: int64\n              type: integer\n            deployments:\n              format: int64\n              type: integer\n            jobs:\n              format: int64\n              type: integer\n            namespaces:\n              format: int64\n              type: integer\n            nodes:\n              format: int64\n              type: integer\n            statefulSets:\n              format: int64\n              type: integer\n          required:\n          - nodes\n          - namespaces\n          - deployments\n          - daemonSets\n          - jobs\n          - statefulSets\n          type: object\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        nodeCountsByReadiness:\n          $ref: '#/components/schemas/InframonitoringtypesNodeCountsByReadiness'\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n      required:\n      - clusterName\n      - clusterCPU\n      - clusterCPUAllocatable\n      - clusterMemory\n      - clusterMemoryAllocatable\n      - nodeCountsByReadiness\n      - podCountsByStatus\n      - counts\n      - meta\n      type: object\n    InframonitoringtypesClusters:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesClusterRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesContainerCountsByReady:\n      properties:\n        notReady:\n          type: integer\n        ready:\n          type: integer\n      required:\n      - ready\n      - notReady\n      type: object\n    InframonitoringtypesContainerCountsByStatus:\n      properties:\n        completed:\n          type: integer\n        containerCannotRun:\n          type: integer\n        containerCreating:\n          type: integer\n        crashLoopBackOff:\n          type: integer\n        createContainerConfigError:\n          type: integer\n        errImagePull:\n          type: integer\n        error:\n          type: integer\n        imagePullBackOff:\n          type: integer\n        oomKilled:\n          type: integer\n        running:\n          type: integer\n        terminated:\n          type: integer\n        unknown:\n          type: integer\n        waiting:\n          type: integer\n      required:\n      - running\n      - waiting\n      - terminated\n      - crashLoopBackOff\n      - imagePullBackOff\n      - errImagePull\n      - createContainerConfigError\n      - containerCreating\n      - oomKilled\n      - completed\n      - error\n      - containerCannotRun\n      - unknown\n      type: object\n    InframonitoringtypesContainerFilter:\n      properties:\n        expression:\n          type: string\n        filterByContainerStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesContainerStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesContainerReady:\n      enum:\n      - ready\n      - not_ready\n      - no_data\n      type: string\n    InframonitoringtypesContainerRecord:\n      properties:\n        containerCountsByReady:\n          $ref: '#/components/schemas/InframonitoringtypesContainerCountsByReady'\n        containerCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesContainerCountsByStatus'\n        containerName:\n          type: string\n        cpu:\n          format: double\n          type: number\n        cpuLimitUtilization:\n          format: double\n          type: number\n        cpuRequestUtilization:\n          format: double\n          type: number\n        memory:\n          format: double\n          type: number\n        memoryLimitUtilization:\n          format: double\n          type: number\n        memoryRequestUtilization:\n          format: double\n          type: number\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        podUID:\n          type: string\n        ready:\n          $ref: '#/components/schemas/InframonitoringtypesContainerReady'\n        restarts:\n          format: int64\n          type: integer\n        status:\n          $ref: '#/components/schemas/InframonitoringtypesContainerStatus'\n      required:\n      - podUID\n      - containerName\n      - status\n      - containerCountsByStatus\n      - ready\n      - containerCountsByReady\n      - restarts\n      - cpu\n      - cpuRequestUtilization\n      - cpuLimitUtilization\n      - memory\n      - memoryRequestUtilization\n      - memoryLimitUtilization\n      - meta\n      type: object\n    InframonitoringtypesContainerStatus:\n      enum:\n      - running\n      - waiting\n      - terminated\n      - crashloopbackoff\n      - imagepullbackoff\n      - errimagepull\n      - createcontainerconfigerror\n      - containercreating\n      - oomkilled\n      - completed\n      - error\n      - containercannotrun\n      - unknown\n      - no_data\n      type: string\n    InframonitoringtypesContainers:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesContainerRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesDaemonSetFilter:\n      properties:\n        expression:\n          type: string\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesDaemonSetRecord:\n      properties:\n        currentNodes:\n          type: integer\n        daemonSetCPU:\n          format: double\n          type: number\n        daemonSetCPULimit:\n          format: double\n          type: number\n        daemonSetCPURequest:\n          format: double\n          type: number\n        daemonSetMemory:\n          format: double\n          type: number\n        daemonSetMemoryLimit:\n          format: double\n          type: number\n        daemonSetMemoryRequest:\n          format: double\n          type: number\n        daemonSetName:\n          type: string\n        desiredNodes:\n          type: integer\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        misscheduledNodes:\n          type: integer\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n        readyNodes:\n          type: integer\n      required:\n      - daemonSetName\n      - daemonSetCPU\n      - daemonSetCPURequest\n      - daemonSetCPULimit\n      - daemonSetMemory\n      - daemonSetMemoryRequest\n      - daemonSetMemoryLimit\n      - desiredNodes\n      - currentNodes\n      - readyNodes\n      - misscheduledNodes\n      - podCountsByStatus\n      - meta\n      type: object\n    InframonitoringtypesDaemonSets:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesDaemonSetRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesDeploymentFilter:\n      properties:\n        expression:\n          type: string\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesDeploymentRecord:\n      properties:\n        availablePods:\n          type: integer\n        deploymentCPU:\n          format: double\n          type: number\n        deploymentCPULimit:\n          format: double\n          type: number\n        deploymentCPURequest:\n          format: double\n          type: number\n        deploymentMemory:\n          format: double\n          type: number\n        deploymentMemoryLimit:\n          format: double\n          type: number\n        deploymentMemoryRequest:\n          format: double\n          type: number\n        deploymentName:\n          type: string\n        desiredPods:\n          type: integer\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n      required:\n      - deploymentName\n      - deploymentCPU\n      - deploymentCPURequest\n      - deploymentCPULimit\n      - deploymentMemory\n      - deploymentMemoryRequest\n      - deploymentMemoryLimit\n      - desiredPods\n      - availablePods\n      - podCountsByStatus\n      - meta\n      type: object\n    InframonitoringtypesDeployments:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesDeploymentRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesHostFilter:\n      properties:\n        expression:\n          type: string\n        filterByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesHostStatus'\n      type: object\n    InframonitoringtypesHostRecord:\n      properties:\n        activeHostCount:\n          type: integer\n        cpu:\n          format: double\n          type: number\n        diskUsage:\n          format: double\n          type: number\n        hostName:\n          type: string\n        inactiveHostCount:\n          type: integer\n        load15:\n          format: double\n          type: number\n        memory:\n          format: double\n          type: number\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        status:\n          $ref: '#/components/schemas/InframonitoringtypesHostStatus'\n        wait:\n          format: double\n          type: number\n      required:\n      - hostName\n      - status\n      - activeHostCount\n      - inactiveHostCount\n      - cpu\n      - memory\n      - wait\n      - load15\n      - diskUsage\n      - meta\n      type: object\n    InframonitoringtypesHostStatus:\n      enum:\n      - active\n      - inactive\n      - \"\"\n      type: string\n    InframonitoringtypesHosts:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesHostRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesJobFilter:\n      properties:\n        expression:\n          type: string\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesJobRecord:\n      properties:\n        activePods:\n          type: integer\n        desiredSuccessfulPods:\n          type: integer\n        failedPods:\n          type: integer\n        jobCPU:\n          format: double\n          type: number\n        jobCPULimit:\n          format: double\n          type: number\n        jobCPURequest:\n          format: double\n          type: number\n        jobMemory:\n          format: double\n          type: number\n        jobMemoryLimit:\n          format: double\n          type: number\n        jobMemoryRequest:\n          format: double\n          type: number\n        jobName:\n          type: string\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n        successfulPods:\n          type: integer\n      required:\n      - jobName\n      - jobCPU\n      - jobCPURequest\n      - jobCPULimit\n      - jobMemory\n      - jobMemoryRequest\n      - jobMemoryLimit\n      - desiredSuccessfulPods\n      - activePods\n      - failedPods\n      - successfulPods\n      - podCountsByStatus\n      - meta\n      type: object\n    InframonitoringtypesJobs:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesJobRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesMetricsComponentEntry:\n      properties:\n        associatedComponent:\n          $ref: '#/components/schemas/InframonitoringtypesAssociatedComponent'\n        metrics:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - metrics\n      - associatedComponent\n      type: object\n    InframonitoringtypesMissingAttributesComponentEntry:\n      properties:\n        associatedComponent:\n          $ref: '#/components/schemas/InframonitoringtypesAssociatedComponent'\n        attributes:\n          items:\n            type: string\n          nullable: true\n          type: array\n        documentationLink:\n          type: string\n        message:\n          type: string\n      required:\n      - attributes\n      - associatedComponent\n      - message\n      - documentationLink\n      type: object\n    InframonitoringtypesMissingMetricsComponentEntry:\n      properties:\n        associatedComponent:\n          $ref: '#/components/schemas/InframonitoringtypesAssociatedComponent'\n        documentationLink:\n          type: string\n        message:\n          type: string\n        metrics:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - metrics\n      - associatedComponent\n      - message\n      - documentationLink\n      type: object\n    InframonitoringtypesNamespaceFilter:\n      properties:\n        expression:\n          type: string\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesNamespaceRecord:\n      properties:\n        counts:\n          properties:\n            daemonSets:\n              format: int64\n              type: integer\n            deployments:\n              format: int64\n              type: integer\n            jobs:\n              format: int64\n              type: integer\n            statefulSets:\n              format: int64\n              type: integer\n          required:\n          - deployments\n          - daemonSets\n          - jobs\n          - statefulSets\n          type: object\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        namespaceCPU:\n          format: double\n          type: number\n        namespaceMemory:\n          format: double\n          type: number\n        namespaceName:\n          type: string\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n      required:\n      - namespaceName\n      - namespaceCPU\n      - namespaceMemory\n      - podCountsByStatus\n      - counts\n      - meta\n      type: object\n    InframonitoringtypesNamespaces:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesNamespaceRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesNodeCondition:\n      enum:\n      - ready\n      - not_ready\n      - no_data\n      type: string\n    InframonitoringtypesNodeCountsByReadiness:\n      properties:\n        notReady:\n          type: integer\n        ready:\n          type: integer\n      required:\n      - ready\n      - notReady\n      type: object\n    InframonitoringtypesNodeFilter:\n      properties:\n        expression:\n          type: string\n        filterByNodeReadiness:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesNodeCondition'\n          nullable: true\n          type: array\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesNodeRecord:\n      properties:\n        condition:\n          $ref: '#/components/schemas/InframonitoringtypesNodeCondition'\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        nodeCPU:\n          format: double\n          type: number\n        nodeCPUAllocatable:\n          format: double\n          type: number\n        nodeCountsByReadiness:\n          $ref: '#/components/schemas/InframonitoringtypesNodeCountsByReadiness'\n        nodeMemory:\n          format: double\n          type: number\n        nodeMemoryAllocatable:\n          format: double\n          type: number\n        nodeName:\n          type: string\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n      required:\n      - nodeName\n      - condition\n      - nodeCountsByReadiness\n      - podCountsByStatus\n      - nodeCPU\n      - nodeCPUAllocatable\n      - nodeMemory\n      - nodeMemoryAllocatable\n      - meta\n      type: object\n    InframonitoringtypesNodes:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesNodeRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesPodCountsByStatus:\n      properties:\n        completed:\n          type: integer\n        containerCannotRun:\n          type: integer\n        containerCreating:\n          type: integer\n        crashLoopBackOff:\n          type: integer\n        createContainerConfigError:\n          type: integer\n        errImagePull:\n          type: integer\n        error:\n          type: integer\n        evicted:\n          type: integer\n        failed:\n          type: integer\n        imagePullBackOff:\n          type: integer\n        nodeAffinity:\n          type: integer\n        nodeLost:\n          type: integer\n        oomKilled:\n          type: integer\n        pending:\n          type: integer\n        running:\n          type: integer\n        shutdown:\n          type: integer\n        unexpectedAdmissionError:\n          type: integer\n        unknown:\n          type: integer\n      required:\n      - pending\n      - running\n      - failed\n      - unknown\n      - crashLoopBackOff\n      - imagePullBackOff\n      - errImagePull\n      - createContainerConfigError\n      - containerCreating\n      - oomKilled\n      - completed\n      - error\n      - containerCannotRun\n      - evicted\n      - nodeAffinity\n      - nodeLost\n      - shutdown\n      - unexpectedAdmissionError\n      type: object\n    InframonitoringtypesPodFilter:\n      properties:\n        expression:\n          type: string\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesPodRecord:\n      properties:\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        podAge:\n          format: int64\n          type: integer\n        podCPU:\n          format: double\n          type: number\n        podCPULimit:\n          format: double\n          type: number\n        podCPURequest:\n          format: double\n          type: number\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n        podMemory:\n          format: double\n          type: number\n        podMemoryLimit:\n          format: double\n          type: number\n        podMemoryRequest:\n          format: double\n          type: number\n        podRestarts:\n          format: int64\n          type: integer\n        podStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n        podUID:\n          type: string\n      required:\n      - podUID\n      - podCPU\n      - podCPURequest\n      - podCPULimit\n      - podMemory\n      - podMemoryRequest\n      - podMemoryLimit\n      - podStatus\n      - podCountsByStatus\n      - podRestarts\n      - podAge\n      - meta\n      type: object\n    InframonitoringtypesPodStatus:\n      enum:\n      - pending\n      - running\n      - failed\n      - unknown\n      - crashloopbackoff\n      - imagepullbackoff\n      - errimagepull\n      - createcontainerconfigerror\n      - containercreating\n      - oomkilled\n      - completed\n      - error\n      - containercannotrun\n      - evicted\n      - nodeaffinity\n      - nodelost\n      - shutdown\n      - unexpectedadmissionerror\n      - no_data\n      type: string\n    InframonitoringtypesPods:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesPostableClusters:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesClusterFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableContainers:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesContainerFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableDaemonSets:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesDaemonSetFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableDeployments:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesDeploymentFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableHosts:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesHostFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableJobs:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesJobFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableNamespaces:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesNamespaceFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableNodes:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesNodeFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostablePods:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesPodFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableStatefulSets:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/InframonitoringtypesStatefulSetFilter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesPostableVolumes:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    InframonitoringtypesResponseType:\n      enum:\n      - list\n      - grouped_list\n      type: string\n    InframonitoringtypesStatefulSetFilter:\n      properties:\n        expression:\n          type: string\n        filterByPodStatus:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesPodStatus'\n          nullable: true\n          type: array\n      type: object\n    InframonitoringtypesStatefulSetRecord:\n      properties:\n        currentPods:\n          type: integer\n        desiredPods:\n          type: integer\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        podCountsByStatus:\n          $ref: '#/components/schemas/InframonitoringtypesPodCountsByStatus'\n        statefulSetCPU:\n          format: double\n          type: number\n        statefulSetCPULimit:\n          format: double\n          type: number\n        statefulSetCPURequest:\n          format: double\n          type: number\n        statefulSetMemory:\n          format: double\n          type: number\n        statefulSetMemoryLimit:\n          format: double\n          type: number\n        statefulSetMemoryRequest:\n          format: double\n          type: number\n        statefulSetName:\n          type: string\n      required:\n      - statefulSetName\n      - statefulSetCPU\n      - statefulSetCPURequest\n      - statefulSetCPULimit\n      - statefulSetMemory\n      - statefulSetMemoryRequest\n      - statefulSetMemoryLimit\n      - desiredPods\n      - currentPods\n      - podCountsByStatus\n      - meta\n      type: object\n    InframonitoringtypesStatefulSets:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesStatefulSetRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    InframonitoringtypesVolumeRecord:\n      properties:\n        meta:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        persistentVolumeClaimName:\n          type: string\n        volumeAvailable:\n          format: double\n          type: number\n        volumeCapacity:\n          format: double\n          type: number\n        volumeInodes:\n          format: double\n          type: number\n        volumeInodesFree:\n          format: double\n          type: number\n        volumeInodesUsed:\n          format: double\n          type: number\n        volumeUsage:\n          format: double\n          type: number\n      required:\n      - persistentVolumeClaimName\n      - volumeAvailable\n      - volumeCapacity\n      - volumeUsage\n      - volumeInodes\n      - volumeInodesFree\n      - volumeInodesUsed\n      - meta\n      type: object\n    InframonitoringtypesVolumes:\n      properties:\n        endTimeBeforeRetention:\n          type: boolean\n        records:\n          items:\n            $ref: '#/components/schemas/InframonitoringtypesVolumeRecord'\n          type: array\n        total:\n          type: integer\n        type:\n          $ref: '#/components/schemas/InframonitoringtypesResponseType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      required:\n      - type\n      - records\n      - total\n      - endTimeBeforeRetention\n      type: object\n    LlmpricingruletypesGettablePricingRules:\n      properties:\n        items:\n          items:\n            $ref: '#/components/schemas/LlmpricingruletypesLLMPricingRule'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        offset:\n          type: integer\n        total:\n          type: integer\n      required:\n      - items\n      - total\n      - offset\n      - limit\n      type: object\n    LlmpricingruletypesGettableUnmappedModels:\n      properties:\n        items:\n          items:\n            $ref: '#/components/schemas/LlmpricingruletypesUnmappedModel'\n          nullable: true\n          type: array\n      required:\n      - items\n      type: object\n    LlmpricingruletypesLLMPricingCacheCosts:\n      properties:\n        mode:\n          $ref: '#/components/schemas/LlmpricingruletypesLLMPricingRuleCacheMode'\n        read:\n          format: double\n          type: number\n        write:\n          format: double\n          type: number\n      required:\n      - mode\n      type: object\n    LlmpricingruletypesLLMPricingRule:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        enabled:\n          type: boolean\n        id:\n          type: string\n        isOverride:\n          type: boolean\n        modelName:\n          type: string\n        modelPattern:\n          $ref: '#/components/schemas/LlmpricingruletypesStringSlice'\n        orgId:\n          type: string\n        pricing:\n          $ref: '#/components/schemas/LlmpricingruletypesLLMRulePricing'\n        provider:\n          type: string\n        sourceId:\n          type: string\n        syncedAt:\n          format: date-time\n          nullable: true\n          type: string\n        unit:\n          $ref: '#/components/schemas/LlmpricingruletypesLLMPricingRuleUnit'\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - orgId\n      - modelName\n      - provider\n      - modelPattern\n      - unit\n      - pricing\n      - isOverride\n      - enabled\n      type: object\n    LlmpricingruletypesLLMPricingRuleCacheMode:\n      enum:\n      - subtract\n      - additive\n      - unknown\n      type: string\n    LlmpricingruletypesLLMPricingRuleUnit:\n      enum:\n      - per_million_tokens\n      type: string\n    LlmpricingruletypesLLMRulePricing:\n      properties:\n        cache:\n          $ref: '#/components/schemas/LlmpricingruletypesLLMPricingCacheCosts'\n        input:\n          format: double\n          type: number\n        output:\n          format: double\n          type: number\n      required:\n      - input\n      - output\n      type: object\n    LlmpricingruletypesStringSlice:\n      items:\n        type: string\n      nullable: true\n      type: array\n    LlmpricingruletypesUnmappedModel:\n      properties:\n        modelName:\n          type: string\n        provider:\n          type: string\n        spanCount:\n          minimum: 0\n          type: integer\n      required:\n      - modelName\n      - spanCount\n      type: object\n    LlmpricingruletypesUpdatableLLMPricingRule:\n      properties:\n        enabled:\n          type: boolean\n        id:\n          nullable: true\n          type: string\n        isOverride:\n          nullable: true\n          type: boolean\n        modelName:\n          type: string\n        modelPattern:\n          items:\n            type: string\n          nullable: true\n          type: array\n        pricing:\n          $ref: '#/components/schemas/LlmpricingruletypesLLMRulePricing'\n        provider:\n          type: string\n        sourceId:\n          nullable: true\n          type: string\n        unit:\n          $ref: '#/components/schemas/LlmpricingruletypesLLMPricingRuleUnit'\n      required:\n      - modelName\n      - provider\n      - modelPattern\n      - unit\n      - pricing\n      - enabled\n      type: object\n    LlmpricingruletypesUpdatableLLMPricingRules:\n      properties:\n        rules:\n          items:\n            $ref: '#/components/schemas/LlmpricingruletypesUpdatableLLMPricingRule'\n          nullable: true\n          type: array\n      required:\n      - rules\n      type: object\n    MetricreductionruletypesAffectedAsset:\n      properties:\n        id:\n          type: string\n        impactedLabels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        name:\n          type: string\n        type:\n          $ref: '#/components/schemas/MetricreductionruletypesAssetType'\n        widget:\n          $ref: '#/components/schemas/MetricreductionruletypesAffectedWidget'\n      required:\n      - type\n      - id\n      - name\n      - impactedLabels\n      type: object\n    MetricreductionruletypesAffectedWidget:\n      properties:\n        id:\n          type: string\n        name:\n          type: string\n      required:\n      - id\n      - name\n      type: object\n    MetricreductionruletypesAssetType:\n      enum:\n      - dashboard\n      - alert_rule\n      type: string\n    MetricreductionruletypesGettableReductionRule:\n      properties:\n        active:\n          type: boolean\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        effectiveFrom:\n          format: date-time\n          type: string\n        id:\n          type: string\n        ingestedSamples:\n          minimum: 0\n          type: integer\n        ingestedSeries:\n          minimum: 0\n          type: integer\n        labels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        matchType:\n          $ref: '#/components/schemas/MetricreductionruletypesMatchType'\n        metricName:\n          type: string\n        retainedSamples:\n          minimum: 0\n          type: integer\n        retainedSeries:\n          minimum: 0\n          type: integer\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - metricName\n      - matchType\n      - labels\n      - effectiveFrom\n      - active\n      - ingestedSeries\n      - retainedSeries\n      - ingestedSamples\n      - retainedSamples\n      type: object\n    MetricreductionruletypesGettableReductionRulePreview:\n      properties:\n        affectedAssets:\n          items:\n            $ref: '#/components/schemas/MetricreductionruletypesAffectedAsset'\n          nullable: true\n          type: array\n        currentRetainedSeries:\n          minimum: 0\n          type: integer\n        droppedLabels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        effectiveFrom:\n          format: date-time\n          type: string\n        ingestedSeries:\n          minimum: 0\n          type: integer\n        reductionPercent:\n          format: double\n          type: number\n        retainedSeries:\n          minimum: 0\n          type: integer\n      required:\n      - ingestedSeries\n      - currentRetainedSeries\n      - retainedSeries\n      - reductionPercent\n      - droppedLabels\n      - affectedAssets\n      - effectiveFrom\n      type: object\n    MetricreductionruletypesGettableReductionRuleStats:\n      properties:\n        estimatedMonthlySavingsUsd:\n          format: double\n          type: number\n        ingestedSamples:\n          minimum: 0\n          type: integer\n        ingestedSeries:\n          minimum: 0\n          type: integer\n        retainedSamples:\n          minimum: 0\n          type: integer\n        retainedSeries:\n          minimum: 0\n          type: integer\n      required:\n      - ingestedSeries\n      - retainedSeries\n      - ingestedSamples\n      - retainedSamples\n      - estimatedMonthlySavingsUsd\n      type: object\n    MetricreductionruletypesGettableReductionRules:\n      properties:\n        rules:\n          items:\n            $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRule'\n          nullable: true\n          type: array\n        total:\n          type: integer\n      required:\n      - rules\n      - total\n      type: object\n    MetricreductionruletypesMatchType:\n      enum:\n      - drop\n      - keep\n      type: string\n    MetricreductionruletypesOrder:\n      enum:\n      - asc\n      - desc\n      type: string\n    MetricreductionruletypesPostableReductionRule:\n      properties:\n        labels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        matchType:\n          $ref: '#/components/schemas/MetricreductionruletypesMatchType'\n        metricName:\n          type: string\n      required:\n      - metricName\n      - matchType\n      - labels\n      type: object\n    MetricreductionruletypesPostableReductionRulePreview:\n      properties:\n        labels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        lookbackMs:\n          format: int64\n          type: integer\n        matchType:\n          $ref: '#/components/schemas/MetricreductionruletypesMatchType'\n        metricName:\n          type: string\n      required:\n      - metricName\n      - matchType\n      - labels\n      type: object\n    MetricreductionruletypesReductionRuleOrderBy:\n      enum:\n      - metric\n      - ingested_volume\n      - reduced_volume\n      - last_updated\n      type: string\n    MetricreductionruletypesUpdatableReductionRule:\n      properties:\n        labels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        matchType:\n          $ref: '#/components/schemas/MetricreductionruletypesMatchType'\n      required:\n      - matchType\n      - labels\n      type: object\n    MetricsexplorertypesInspectMetricsRequest:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        metricName:\n          type: string\n        start:\n          format: int64\n          type: integer\n      required:\n      - metricName\n      - start\n      - end\n      type: object\n    MetricsexplorertypesInspectMetricsResponse:\n      properties:\n        series:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n          nullable: true\n          type: array\n      required:\n      - series\n      type: object\n    MetricsexplorertypesListMetric:\n      properties:\n        description:\n          type: string\n        isMonotonic:\n          type: boolean\n        metricName:\n          type: string\n        temporality:\n          $ref: '#/components/schemas/MetrictypesTemporality'\n        type:\n          $ref: '#/components/schemas/MetrictypesType'\n        unit:\n          type: string\n      required:\n      - metricName\n      - description\n      - type\n      - unit\n      - temporality\n      - isMonotonic\n      type: object\n    MetricsexplorertypesListMetricsResponse:\n      properties:\n        metrics:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesListMetric'\n          nullable: true\n          type: array\n      required:\n      - metrics\n      type: object\n    MetricsexplorertypesMetricAlert:\n      properties:\n        alertId:\n          type: string\n        alertName:\n          type: string\n      required:\n      - alertName\n      - alertId\n      type: object\n    MetricsexplorertypesMetricAlertsResponse:\n      properties:\n        alerts:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesMetricAlert'\n          nullable: true\n          type: array\n      required:\n      - alerts\n      type: object\n    MetricsexplorertypesMetricAttribute:\n      properties:\n        key:\n          type: string\n        valueCount:\n          minimum: 0\n          type: integer\n        values:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - key\n      - values\n      - valueCount\n      type: object\n    MetricsexplorertypesMetricAttributesResponse:\n      properties:\n        attributes:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesMetricAttribute'\n          nullable: true\n          type: array\n        totalKeys:\n          format: int64\n          type: integer\n      required:\n      - attributes\n      - totalKeys\n      type: object\n    MetricsexplorertypesMetricDashboard:\n      properties:\n        dashboardId:\n          type: string\n        dashboardName:\n          type: string\n        widgetId:\n          type: string\n        widgetName:\n          type: string\n      required:\n      - dashboardName\n      - dashboardId\n      - widgetId\n      - widgetName\n      type: object\n    MetricsexplorertypesMetricDashboardPanelsResponse:\n      properties:\n        dashboards:\n          items:\n            $ref: '#/components/schemas/DashboardtypesDashboardPanelRef'\n          nullable: true\n          type: array\n      required:\n      - dashboards\n      type: object\n    MetricsexplorertypesMetricDashboardsResponse:\n      properties:\n        dashboards:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesMetricDashboard'\n          nullable: true\n          type: array\n      required:\n      - dashboards\n      type: object\n    MetricsexplorertypesMetricHighlightsResponse:\n      properties:\n        activeTimeSeries:\n          minimum: 0\n          type: integer\n        dataPoints:\n          minimum: 0\n          type: integer\n        lastReceived:\n          minimum: 0\n          type: integer\n        totalTimeSeries:\n          minimum: 0\n          type: integer\n      required:\n      - dataPoints\n      - lastReceived\n      - totalTimeSeries\n      - activeTimeSeries\n      type: object\n    MetricsexplorertypesMetricMetadata:\n      properties:\n        description:\n          type: string\n        isMonotonic:\n          type: boolean\n        temporality:\n          $ref: '#/components/schemas/MetrictypesTemporality'\n        type:\n          $ref: '#/components/schemas/MetrictypesType'\n        unit:\n          type: string\n      required:\n      - description\n      - type\n      - unit\n      - temporality\n      - isMonotonic\n      type: object\n    MetricsexplorertypesMetricsOnboardingResponse:\n      properties:\n        hasMetrics:\n          type: boolean\n      required:\n      - hasMetrics\n      type: object\n    MetricsexplorertypesStat:\n      properties:\n        description:\n          type: string\n        metricName:\n          type: string\n        samples:\n          minimum: 0\n          type: integer\n        timeseries:\n          minimum: 0\n          type: integer\n        type:\n          $ref: '#/components/schemas/MetrictypesType'\n        unit:\n          type: string\n      required:\n      - metricName\n      - description\n      - type\n      - unit\n      - timeseries\n      - samples\n      type: object\n    MetricsexplorertypesStatsRequest:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        limit:\n          type: integer\n        offset:\n          type: integer\n        orderBy:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      type: object\n    MetricsexplorertypesStatsResponse:\n      properties:\n        metrics:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesStat'\n          nullable: true\n          type: array\n        total:\n          minimum: 0\n          type: integer\n      required:\n      - metrics\n      - total\n      type: object\n    MetricsexplorertypesTreemapEntry:\n      properties:\n        metricName:\n          type: string\n        percentage:\n          format: double\n          type: number\n        totalValue:\n          minimum: 0\n          type: integer\n      required:\n      - metricName\n      - percentage\n      - totalValue\n      type: object\n    MetricsexplorertypesTreemapMode:\n      enum:\n      - timeseries\n      - samples\n      type: string\n    MetricsexplorertypesTreemapRequest:\n      properties:\n        end:\n          format: int64\n          type: integer\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        limit:\n          type: integer\n        mode:\n          $ref: '#/components/schemas/MetricsexplorertypesTreemapMode'\n        start:\n          format: int64\n          type: integer\n      required:\n      - start\n      - end\n      - limit\n      - mode\n      type: object\n    MetricsexplorertypesTreemapResponse:\n      properties:\n        samples:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesTreemapEntry'\n          nullable: true\n          type: array\n        timeseries:\n          items:\n            $ref: '#/components/schemas/MetricsexplorertypesTreemapEntry'\n          nullable: true\n          type: array\n      required:\n      - timeseries\n      - samples\n      type: object\n    MetricsexplorertypesUpdateMetricMetadataRequest:\n      properties:\n        description:\n          type: string\n        isMonotonic:\n          type: boolean\n        metricName:\n          type: string\n        temporality:\n          $ref: '#/components/schemas/MetrictypesTemporality'\n        type:\n          $ref: '#/components/schemas/MetrictypesType'\n        unit:\n          type: string\n      required:\n      - metricName\n      - type\n      - description\n      - unit\n      - temporality\n      - isMonotonic\n      type: object\n    MetrictypesComparisonSpaceAggregationParam:\n      properties:\n        operator:\n          type: string\n        threshold:\n          format: double\n          type: number\n      required:\n      - operator\n      - threshold\n      type: object\n    MetrictypesSpaceAggregation:\n      enum:\n      - sum\n      - avg\n      - min\n      - max\n      - count\n      - p50\n      - p75\n      - p90\n      - p95\n      - p99\n      type: string\n    MetrictypesTemporality:\n      enum:\n      - delta\n      - cumulative\n      - unspecified\n      - \"\"\n      type: string\n    MetrictypesTimeAggregation:\n      enum:\n      - latest\n      - sum\n      - avg\n      - min\n      - max\n      - count\n      - count_distinct\n      - rate\n      - increase\n      - \"\"\n      type: string\n    MetrictypesType:\n      enum:\n      - gauge\n      - sum\n      - histogram\n      - summary\n      - exponentialhistogram\n      type: string\n    ModelDuration:\n      format: int64\n      type: integer\n    ModelLabelSet:\n      additionalProperties:\n        type: string\n      type: object\n    PreferencetypesPreference:\n      properties:\n        allowedScopes:\n          items:\n            type: string\n          nullable: true\n          type: array\n        allowedValues:\n          items:\n            type: string\n          nullable: true\n          type: array\n        defaultValue:\n          $ref: '#/components/schemas/PreferencetypesValue'\n        description:\n          type: string\n        name:\n          type: string\n        value:\n          $ref: '#/components/schemas/PreferencetypesValue'\n        valueType:\n          type: string\n      type: object\n    PreferencetypesUpdatablePreference:\n      properties:\n        value: {}\n      type: object\n    PreferencetypesValue:\n      type: object\n    PromotetypesPromotePath:\n      properties:\n        indexes:\n          items:\n            $ref: '#/components/schemas/PromotetypesWrappedIndex'\n          type: array\n        path:\n          type: string\n        promote:\n          type: boolean\n      type: object\n    PromotetypesWrappedIndex:\n      properties:\n        fieldDataType:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n        granularity:\n          type: integer\n        type:\n          type: string\n      type: object\n    Querybuildertypesv5AggregationBucket:\n      properties:\n        alias:\n          type: string\n        anomalyScores:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n          type: array\n        index:\n          type: integer\n        lowerBoundSeries:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n          type: array\n        meta:\n          properties:\n            unit:\n              type: string\n          type: object\n        predictedSeries:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n          type: array\n        series:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n          nullable: true\n          type: array\n        upperBoundSeries:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n          type: array\n      type: object\n    Querybuildertypesv5Bucket:\n      properties:\n        step:\n          format: double\n          type: number\n      type: object\n    Querybuildertypesv5BuilderQuerySpec:\n      discriminator:\n        mapping:\n          logs: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5LogAggregation'\n          metrics: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5MetricAggregation'\n          traces: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5TraceAggregation'\n        propertyName: signal\n      oneOf:\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5TraceAggregation'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5LogAggregation'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5MetricAggregation'\n      type: object\n    Querybuildertypesv5ClickHouseQuery:\n      properties:\n        disabled:\n          type: boolean\n        legend:\n          type: string\n        name:\n          type: string\n        query:\n          type: string\n      type: object\n    Querybuildertypesv5ColumnDescriptor:\n      properties:\n        aggregationIndex:\n          format: int64\n          type: integer\n        columnType:\n          $ref: '#/components/schemas/Querybuildertypesv5ColumnType'\n        description:\n          type: string\n        fieldContext:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n        fieldDataType:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n        meta:\n          properties:\n            unit:\n              type: string\n          type: object\n        name:\n          type: string\n        queryName:\n          type: string\n        signal:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n        unit:\n          type: string\n      required:\n      - name\n      type: object\n    Querybuildertypesv5ColumnType:\n      enum:\n      - group\n      - aggregation\n      type: string\n    Querybuildertypesv5CompositeQuery:\n      description: Composite query containing one or more query envelopes. Each query\n        envelope specifies its type and corresponding spec.\n      properties:\n        queries:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelope'\n          nullable: true\n          type: array\n      type: object\n    Querybuildertypesv5ExecStats:\n      description: Execution statistics for the query, including rows scanned, bytes\n        scanned, and duration.\n      properties:\n        bytesScanned:\n          minimum: 0\n          type: integer\n        durationMs:\n          minimum: 0\n          type: integer\n        rowsScanned:\n          minimum: 0\n          type: integer\n        stepIntervals:\n          additionalProperties:\n            minimum: 0\n            type: integer\n          type: object\n      type: object\n    Querybuildertypesv5Filter:\n      properties:\n        expression:\n          type: string\n      type: object\n    Querybuildertypesv5FormatOptions:\n      properties:\n        fillGaps:\n          type: boolean\n        formatTableResultForUI:\n          type: boolean\n      type: object\n    Querybuildertypesv5Function:\n      properties:\n        args:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5FunctionArg'\n          nullable: true\n          type: array\n        name:\n          $ref: '#/components/schemas/Querybuildertypesv5FunctionName'\n      type: object\n    Querybuildertypesv5FunctionArg:\n      properties:\n        name:\n          type: string\n        value:\n          oneOf:\n          - type: number\n          - type: string\n      type: object\n    Querybuildertypesv5FunctionName:\n      enum:\n      - cutoffmin\n      - cutoffmax\n      - clampmin\n      - clampmax\n      - absolute\n      - runningdiff\n      - log2\n      - log10\n      - cumulativesum\n      - ewma3\n      - ewma5\n      - ewma7\n      - median3\n      - median5\n      - median7\n      - timeshift\n      - anomaly\n      - fillzero\n      type: string\n    Querybuildertypesv5GroupByKey:\n      properties:\n        description:\n          type: string\n        fieldContext:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n        fieldDataType:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n        name:\n          type: string\n        signal:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n        unit:\n          type: string\n      required:\n      - name\n      type: object\n    Querybuildertypesv5Having:\n      properties:\n        expression:\n          type: string\n      type: object\n    Querybuildertypesv5Label:\n      properties:\n        key:\n          $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n        value:\n          oneOf:\n          - type: string\n          - type: number\n          - type: boolean\n      type: object\n    Querybuildertypesv5LimitBy:\n      properties:\n        keys:\n          items:\n            type: string\n          nullable: true\n          type: array\n        value:\n          type: string\n      type: object\n    Querybuildertypesv5LogAggregation:\n      properties:\n        alias:\n          type: string\n        expression:\n          type: string\n      type: object\n    Querybuildertypesv5MetricAggregation:\n      properties:\n        comparisonSpaceAggregationParam:\n          $ref: '#/components/schemas/MetrictypesComparisonSpaceAggregationParam'\n        metricName:\n          type: string\n        reduceTo:\n          $ref: '#/components/schemas/Querybuildertypesv5ReduceTo'\n        spaceAggregation:\n          $ref: '#/components/schemas/MetrictypesSpaceAggregation'\n        temporality:\n          $ref: '#/components/schemas/MetrictypesTemporality'\n        timeAggregation:\n          $ref: '#/components/schemas/MetrictypesTimeAggregation'\n      type: object\n    Querybuildertypesv5OrderBy:\n      properties:\n        direction:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderDirection'\n        key:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderByKey'\n      type: object\n    Querybuildertypesv5OrderByKey:\n      properties:\n        description:\n          type: string\n        fieldContext:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n        fieldDataType:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n        name:\n          type: string\n        signal:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n        unit:\n          type: string\n      required:\n      - name\n      type: object\n    Querybuildertypesv5OrderDirection:\n      enum:\n      - asc\n      - desc\n      type: string\n    Querybuildertypesv5PreviewStatement:\n      properties:\n        db.statement.args:\n          items: {}\n          type: array\n        db.statement.query:\n          type: string\n        estimate:\n          items:\n            $ref: '#/components/schemas/TelemetrystoretypesEstimateEntry'\n          type: array\n        granules:\n          $ref: '#/components/schemas/TelemetrystoretypesGranules'\n      required:\n      - db.statement.query\n      - db.statement.args\n      - estimate\n      - granules\n      type: object\n    Querybuildertypesv5PromQuery:\n      properties:\n        disabled:\n          type: boolean\n        legend:\n          type: string\n        name:\n          type: string\n        query:\n          type: string\n        stats:\n          type: boolean\n        step:\n          $ref: '#/components/schemas/Querybuildertypesv5Step'\n      type: object\n    Querybuildertypesv5QueryBuilderFormula:\n      properties:\n        disabled:\n          type: boolean\n        expression:\n          type: string\n        functions:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Function'\n          nullable: true\n          type: array\n        having:\n          $ref: '#/components/schemas/Querybuildertypesv5Having'\n        legend:\n          type: string\n        limit:\n          type: integer\n        name:\n          type: string\n        order:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n          nullable: true\n          type: array\n      type: object\n    Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5LogAggregation:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5LogAggregation'\n          nullable: true\n          type: array\n        cursor:\n          type: string\n        disabled:\n          type: boolean\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        functions:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Function'\n          nullable: true\n          type: array\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        having:\n          $ref: '#/components/schemas/Querybuildertypesv5Having'\n        legend:\n          type: string\n        limit:\n          type: integer\n        limitBy:\n          $ref: '#/components/schemas/Querybuildertypesv5LimitBy'\n        name:\n          type: string\n        offset:\n          type: integer\n        order:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n          nullable: true\n          type: array\n        secondaryAggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5SecondaryAggregation'\n          nullable: true\n          type: array\n        selectFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          nullable: true\n          type: array\n        signal:\n          enum:\n          - logs\n          type: string\n        source:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n        stepInterval:\n          $ref: '#/components/schemas/Querybuildertypesv5Step'\n      required:\n      - signal\n      type: object\n    Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5MetricAggregation:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5MetricAggregation'\n          nullable: true\n          type: array\n        cursor:\n          type: string\n        disabled:\n          type: boolean\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        functions:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Function'\n          nullable: true\n          type: array\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        having:\n          $ref: '#/components/schemas/Querybuildertypesv5Having'\n        legend:\n          type: string\n        limit:\n          type: integer\n        limitBy:\n          $ref: '#/components/schemas/Querybuildertypesv5LimitBy'\n        name:\n          type: string\n        offset:\n          type: integer\n        order:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n          nullable: true\n          type: array\n        secondaryAggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5SecondaryAggregation'\n          nullable: true\n          type: array\n        selectFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          nullable: true\n          type: array\n        signal:\n          enum:\n          - metrics\n          type: string\n        source:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n        stepInterval:\n          $ref: '#/components/schemas/Querybuildertypesv5Step'\n      required:\n      - signal\n      type: object\n    Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5TraceAggregation:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TraceAggregation'\n          nullable: true\n          type: array\n        cursor:\n          type: string\n        disabled:\n          type: boolean\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        functions:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Function'\n          nullable: true\n          type: array\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        having:\n          $ref: '#/components/schemas/Querybuildertypesv5Having'\n        legend:\n          type: string\n        limit:\n          type: integer\n        limitBy:\n          $ref: '#/components/schemas/Querybuildertypesv5LimitBy'\n        name:\n          type: string\n        offset:\n          type: integer\n        order:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n          nullable: true\n          type: array\n        secondaryAggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5SecondaryAggregation'\n          nullable: true\n          type: array\n        selectFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          nullable: true\n          type: array\n        signal:\n          enum:\n          - traces\n          type: string\n        source:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n        stepInterval:\n          $ref: '#/components/schemas/Querybuildertypesv5Step'\n      required:\n      - signal\n      type: object\n    Querybuildertypesv5QueryBuilderTraceOperator:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TraceAggregation'\n          nullable: true\n          type: array\n        cursor:\n          type: string\n        disabled:\n          type: boolean\n        expression:\n          type: string\n        filter:\n          $ref: '#/components/schemas/Querybuildertypesv5Filter'\n        functions:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Function'\n          nullable: true\n          type: array\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        having:\n          $ref: '#/components/schemas/Querybuildertypesv5Having'\n        legend:\n          type: string\n        limit:\n          type: integer\n        name:\n          type: string\n        offset:\n          type: integer\n        order:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n          nullable: true\n          type: array\n        returnSpansFrom:\n          type: string\n        selectFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          nullable: true\n          type: array\n        stepInterval:\n          $ref: '#/components/schemas/Querybuildertypesv5Step'\n      type: object\n    Querybuildertypesv5QueryData:\n      oneOf:\n      - $ref: '#/components/schemas/Querybuildertypesv5TimeSeriesData'\n      - $ref: '#/components/schemas/Querybuildertypesv5ScalarData'\n      - $ref: '#/components/schemas/Querybuildertypesv5RawData'\n      properties:\n        results:\n          items: {}\n          nullable: true\n          type: array\n      type: object\n    Querybuildertypesv5QueryEnvelope:\n      discriminator:\n        mapping:\n          builder_ai_query: '#/components/schemas/Querybuildertypesv5QueryEnvelopeBuilderAI'\n          builder_formula: '#/components/schemas/Querybuildertypesv5QueryEnvelopeFormula'\n          builder_query: '#/components/schemas/Querybuildertypesv5QueryEnvelopeBuilder'\n          builder_trace_operator: '#/components/schemas/Querybuildertypesv5QueryEnvelopeTraceOperator'\n          clickhouse_sql: '#/components/schemas/Querybuildertypesv5QueryEnvelopeClickHouseSQL'\n          promql: '#/components/schemas/Querybuildertypesv5QueryEnvelopePromQL'\n        propertyName: type\n      oneOf:\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelopeBuilder'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelopeBuilderAI'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelopeFormula'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelopeTraceOperator'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelopePromQL'\n      - $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelopeClickHouseSQL'\n      type: object\n    Querybuildertypesv5QueryEnvelopeBuilder:\n      properties:\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5BuilderQuerySpec'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryType'\n      required:\n      - type\n      type: object\n    Querybuildertypesv5QueryEnvelopeBuilderAI:\n      properties:\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderQueryGithubComSigNozSignozPkgTypesQuerybuildertypesQuerybuildertypesv5TraceAggregation'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryType'\n      required:\n      - type\n      type: object\n    Querybuildertypesv5QueryEnvelopeClickHouseSQL:\n      properties:\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5ClickHouseQuery'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryType'\n      required:\n      - type\n      type: object\n    Querybuildertypesv5QueryEnvelopeFormula:\n      properties:\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderFormula'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryType'\n      required:\n      - type\n      type: object\n    Querybuildertypesv5QueryEnvelopePromQL:\n      properties:\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5PromQuery'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryType'\n      required:\n      - type\n      type: object\n    Querybuildertypesv5QueryEnvelopeTraceOperator:\n      properties:\n        spec:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryBuilderTraceOperator'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryType'\n      required:\n      - type\n      type: object\n    Querybuildertypesv5QueryPreview:\n      properties:\n        error: {}\n        statements:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5PreviewStatement'\n          type: array\n        valid:\n          type: boolean\n        warnings:\n          items:\n            type: string\n          type: array\n      required:\n      - valid\n      - error\n      - warnings\n      - statements\n      type: object\n    Querybuildertypesv5QueryRangePreviewResponse:\n      description: Response from the v5 query range preview (dry-run) endpoint. For\n        each query in the composite query, returns the underlying ClickHouse statement(s)\n        it renders to without executing them (one per PromQL metric selector; exactly\n        one for builder/ClickHouse/trace-operator queries), with the optional EXPLAIN\n        ESTIMATE and granule analysis attached per statement when requested.\n      properties:\n        compositeQuery:\n          additionalProperties:\n            $ref: '#/components/schemas/Querybuildertypesv5QueryPreview'\n          nullable: true\n          type: object\n      required:\n      - compositeQuery\n      type: object\n    Querybuildertypesv5QueryRangeRequest:\n      description: Request body for the v5 query range endpoint. Supports builder\n        queries (traces, logs, metrics), formulas, joins, trace operators, PromQL,\n        and ClickHouse SQL queries.\n      properties:\n        compositeQuery:\n          $ref: '#/components/schemas/Querybuildertypesv5CompositeQuery'\n        end:\n          minimum: 0\n          type: integer\n        formatOptions:\n          $ref: '#/components/schemas/Querybuildertypesv5FormatOptions'\n        noCache:\n          type: boolean\n        requestType:\n          $ref: '#/components/schemas/Querybuildertypesv5RequestType'\n        schemaVersion:\n          type: string\n        start:\n          minimum: 0\n          type: integer\n        variables:\n          additionalProperties:\n            $ref: '#/components/schemas/Querybuildertypesv5VariableItem'\n          type: object\n      type: object\n    Querybuildertypesv5QueryRangeResponse:\n      description: 'Response from the v5 query range endpoint. The data.results array\n        contains typed results depending on the requestType: TimeSeriesData for time_series,\n        ScalarData for scalar, or RawData for raw requests.'\n      properties:\n        data:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryData'\n        meta:\n          $ref: '#/components/schemas/Querybuildertypesv5ExecStats'\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5RequestType'\n        warning:\n          $ref: '#/components/schemas/Querybuildertypesv5QueryWarnData'\n      type: object\n    Querybuildertypesv5QueryType:\n      enum:\n      - builder_query\n      - builder_ai_query\n      - builder_formula\n      - builder_trace_operator\n      - clickhouse_sql\n      - promql\n      type: string\n    Querybuildertypesv5QueryWarnData:\n      properties:\n        message:\n          type: string\n        url:\n          type: string\n        warnings:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5QueryWarnDataAdditional'\n          type: array\n      type: object\n    Querybuildertypesv5QueryWarnDataAdditional:\n      properties:\n        message:\n          type: string\n      type: object\n    Querybuildertypesv5RawData:\n      properties:\n        nextCursor:\n          type: string\n        queryName:\n          type: string\n        rows:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5RawRow'\n          nullable: true\n          type: array\n      type: object\n    Querybuildertypesv5RawRow:\n      properties:\n        data:\n          additionalProperties: {}\n          nullable: true\n          type: object\n        timestamp:\n          format: date-time\n          type: string\n      type: object\n    Querybuildertypesv5ReduceTo:\n      enum:\n      - sum\n      - count\n      - avg\n      - min\n      - max\n      - last\n      - median\n      type: string\n    Querybuildertypesv5RequestType:\n      enum:\n      - scalar\n      - time_series\n      - raw\n      - raw_stream\n      - trace\n      type: string\n    Querybuildertypesv5ScalarData:\n      properties:\n        columns:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5ColumnDescriptor'\n          nullable: true\n          type: array\n        data:\n          items:\n            items: {}\n            type: array\n          nullable: true\n          type: array\n        queryName:\n          type: string\n      type: object\n    Querybuildertypesv5SecondaryAggregation:\n      properties:\n        alias:\n          type: string\n        expression:\n          type: string\n        groupBy:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5GroupByKey'\n          nullable: true\n          type: array\n        limit:\n          type: integer\n        limitBy:\n          $ref: '#/components/schemas/Querybuildertypesv5LimitBy'\n        order:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5OrderBy'\n          nullable: true\n          type: array\n        stepInterval:\n          $ref: '#/components/schemas/Querybuildertypesv5Step'\n      type: object\n    Querybuildertypesv5Step:\n      description: Step interval. Accepts a Go duration string (e.g., \"60s\", \"1m\",\n        \"1h\") or a number representing seconds (e.g., 60).\n      oneOf:\n      - description: Duration string (e.g., \"60s\", \"5m\", \"1h\").\n        example: 60s\n        type: string\n      - description: Duration in seconds.\n        example: 60\n        type: number\n    Querybuildertypesv5TimeSeries:\n      properties:\n        labels:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Label'\n          type: array\n        values:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5TimeSeriesValue'\n          nullable: true\n          type: array\n      type: object\n    Querybuildertypesv5TimeSeriesData:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5AggregationBucket'\n          nullable: true\n          type: array\n        queryName:\n          type: string\n      type: object\n    Querybuildertypesv5TimeSeriesValue:\n      properties:\n        bucket:\n          $ref: '#/components/schemas/Querybuildertypesv5Bucket'\n        partial:\n          type: boolean\n        timestamp:\n          format: int64\n          type: integer\n        value:\n          format: double\n          type: number\n        values:\n          items:\n            format: double\n            type: number\n          type: array\n      type: object\n    Querybuildertypesv5TraceAggregation:\n      properties:\n        alias:\n          type: string\n        expression:\n          type: string\n      type: object\n    Querybuildertypesv5VariableItem:\n      properties:\n        type:\n          $ref: '#/components/schemas/Querybuildertypesv5VariableType'\n        value:\n          oneOf:\n          - type: string\n          - type: number\n          - type: boolean\n          - items:\n              oneOf:\n              - type: string\n              - type: number\n              - type: boolean\n            type: array\n      type: object\n    Querybuildertypesv5VariableType:\n      enum:\n      - query\n      - dynamic\n      - custom\n      - text\n      type: string\n    RenderErrorResponse:\n      properties:\n        error:\n          $ref: '#/components/schemas/ErrorsJSON'\n        status:\n          type: string\n      required:\n      - status\n      - error\n      type: object\n    RulestatehistorytypesGettableRuleStateHistory:\n      properties:\n        fingerprint:\n          minimum: 0\n          type: integer\n        labels:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Label'\n          nullable: true\n          type: array\n        overallState:\n          $ref: '#/components/schemas/RuletypesAlertState'\n        overallStateChanged:\n          type: boolean\n        relatedLogsLink:\n          type: string\n        relatedTracesLink:\n          type: string\n        ruleId:\n          type: string\n        ruleName:\n          type: string\n        state:\n          $ref: '#/components/schemas/RuletypesAlertState'\n        stateChanged:\n          type: boolean\n        unixMilli:\n          format: int64\n          type: integer\n        value:\n          format: double\n          type: number\n      required:\n      - ruleId\n      - ruleName\n      - overallState\n      - overallStateChanged\n      - state\n      - stateChanged\n      - unixMilli\n      - labels\n      - fingerprint\n      - value\n      type: object\n    RulestatehistorytypesGettableRuleStateHistoryContributor:\n      properties:\n        count:\n          minimum: 0\n          type: integer\n        fingerprint:\n          minimum: 0\n          type: integer\n        labels:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5Label'\n          nullable: true\n          type: array\n        relatedLogsLink:\n          type: string\n        relatedTracesLink:\n          type: string\n      required:\n      - fingerprint\n      - labels\n      - count\n      type: object\n    RulestatehistorytypesGettableRuleStateHistoryStats:\n      properties:\n        currentAvgResolutionTime:\n          format: double\n          type: number\n        currentAvgResolutionTimeSeries:\n          $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n        currentTriggersSeries:\n          $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n        pastAvgResolutionTime:\n          format: double\n          type: number\n        pastAvgResolutionTimeSeries:\n          $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n        pastTriggersSeries:\n          $ref: '#/components/schemas/Querybuildertypesv5TimeSeries'\n        totalCurrentTriggers:\n          minimum: 0\n          type: integer\n        totalPastTriggers:\n          minimum: 0\n          type: integer\n      required:\n      - totalCurrentTriggers\n      - totalPastTriggers\n      - currentTriggersSeries\n      - pastTriggersSeries\n      - currentAvgResolutionTime\n      - pastAvgResolutionTime\n      - currentAvgResolutionTimeSeries\n      - pastAvgResolutionTimeSeries\n      type: object\n    RulestatehistorytypesGettableRuleStateTimeline:\n      properties:\n        items:\n          items:\n            $ref: '#/components/schemas/RulestatehistorytypesGettableRuleStateHistory'\n          nullable: true\n          type: array\n        nextCursor:\n          type: string\n        total:\n          minimum: 0\n          type: integer\n      required:\n      - items\n      - total\n      type: object\n    RulestatehistorytypesGettableRuleStateWindow:\n      properties:\n        end:\n          format: int64\n          type: integer\n        start:\n          format: int64\n          type: integer\n        state:\n          $ref: '#/components/schemas/RuletypesAlertState'\n      required:\n      - state\n      - start\n      - end\n      type: object\n    RuletypesAlertCompositeQuery:\n      properties:\n        panelType:\n          $ref: '#/components/schemas/RuletypesPanelType'\n        queries:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelope'\n          nullable: true\n          type: array\n        queryType:\n          $ref: '#/components/schemas/RuletypesQueryType'\n        unit:\n          type: string\n      required:\n      - queries\n      - panelType\n      - queryType\n      type: object\n    RuletypesAlertState:\n      enum:\n      - inactive\n      - pending\n      - recovering\n      - firing\n      - nodata\n      - disabled\n      type: string\n    RuletypesAlertType:\n      enum:\n      - METRIC_BASED_ALERT\n      - TRACES_BASED_ALERT\n      - LOGS_BASED_ALERT\n      - EXCEPTIONS_BASED_ALERT\n      type: string\n    RuletypesBasicRuleThreshold:\n      properties:\n        channels:\n          items:\n            type: string\n          nullable: true\n          type: array\n        matchType:\n          $ref: '#/components/schemas/RuletypesMatchType'\n        name:\n          type: string\n        op:\n          $ref: '#/components/schemas/RuletypesCompareOperator'\n        recoveryTarget:\n          format: double\n          nullable: true\n          type: number\n        target:\n          format: double\n          nullable: true\n          type: number\n        targetUnit:\n          type: string\n      required:\n      - name\n      - target\n      - matchType\n      - op\n      type: object\n    RuletypesBasicRuleThresholds:\n      items:\n        $ref: '#/components/schemas/RuletypesBasicRuleThreshold'\n      nullable: true\n      type: array\n    RuletypesCompareOperator:\n      enum:\n      - above\n      - below\n      - equal\n      - not_equal\n      - above_or_equal\n      - below_or_equal\n      - outside_bounds\n      type: string\n    RuletypesCumulativeSchedule:\n      properties:\n        day:\n          nullable: true\n          type: integer\n        hour:\n          nullable: true\n          type: integer\n        minute:\n          nullable: true\n          type: integer\n        type:\n          $ref: '#/components/schemas/RuletypesScheduleType'\n        weekday:\n          nullable: true\n          type: integer\n      required:\n      - type\n      type: object\n    RuletypesCumulativeWindow:\n      properties:\n        frequency:\n          type: string\n        schedule:\n          $ref: '#/components/schemas/RuletypesCumulativeSchedule'\n        timezone:\n          type: string\n      required:\n      - schedule\n      - frequency\n      - timezone\n      type: object\n    RuletypesEvaluationCumulative:\n      properties:\n        kind:\n          $ref: '#/components/schemas/RuletypesEvaluationKind'\n        spec:\n          $ref: '#/components/schemas/RuletypesCumulativeWindow'\n      required:\n      - kind\n      - spec\n      type: object\n    RuletypesEvaluationEnvelope:\n      discriminator:\n        mapping:\n          cumulative: '#/components/schemas/RuletypesEvaluationCumulative'\n          rolling: '#/components/schemas/RuletypesEvaluationRolling'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/RuletypesEvaluationRolling'\n      - $ref: '#/components/schemas/RuletypesEvaluationCumulative'\n      type: object\n    RuletypesEvaluationKind:\n      enum:\n      - rolling\n      - cumulative\n      type: string\n    RuletypesEvaluationRolling:\n      properties:\n        kind:\n          $ref: '#/components/schemas/RuletypesEvaluationKind'\n        spec:\n          $ref: '#/components/schemas/RuletypesRollingWindow'\n      required:\n      - kind\n      - spec\n      type: object\n    RuletypesGettableTestRule:\n      properties:\n        alertCount:\n          type: integer\n        message:\n          type: string\n      type: object\n    RuletypesMatchType:\n      enum:\n      - at_least_once\n      - all_the_times\n      - on_average\n      - in_total\n      - last\n      type: string\n    RuletypesNotificationSettings:\n      properties:\n        groupBy:\n          items:\n            type: string\n          nullable: true\n          type: array\n        newGroupEvalDelay:\n          type: string\n        renotify:\n          $ref: '#/components/schemas/RuletypesRenotify'\n        usePolicy:\n          type: boolean\n      type: object\n    RuletypesPanelType:\n      enum:\n      - value\n      - table\n      - graph\n      type: string\n    RuletypesPostableRule:\n      properties:\n        alert:\n          type: string\n        alertType:\n          $ref: '#/components/schemas/RuletypesAlertType'\n        annotations:\n          additionalProperties:\n            type: string\n          type: object\n        condition:\n          $ref: '#/components/schemas/RuletypesRuleCondition'\n        description:\n          type: string\n        disabled:\n          type: boolean\n        evalWindow:\n          type: string\n        evaluation:\n          $ref: '#/components/schemas/RuletypesEvaluationEnvelope'\n        frequency:\n          type: string\n        labels:\n          additionalProperties:\n            type: string\n          type: object\n        notificationSettings:\n          $ref: '#/components/schemas/RuletypesNotificationSettings'\n        preferredChannels:\n          items:\n            type: string\n          type: array\n        ruleType:\n          $ref: '#/components/schemas/RuletypesRuleType'\n        schemaVersion:\n          type: string\n        source:\n          type: string\n        version:\n          type: string\n      required:\n      - alert\n      - alertType\n      - ruleType\n      - condition\n      type: object\n    RuletypesQueryType:\n      enum:\n      - builder\n      - clickhouse_sql\n      - promql\n      type: string\n    RuletypesRenotify:\n      properties:\n        alertStates:\n          items:\n            $ref: '#/components/schemas/RuletypesAlertState'\n          nullable: true\n          type: array\n        enabled:\n          type: boolean\n        interval:\n          type: string\n      type: object\n    RuletypesRollingWindow:\n      properties:\n        evalWindow:\n          type: string\n        frequency:\n          type: string\n      required:\n      - evalWindow\n      - frequency\n      type: object\n    RuletypesRule:\n      properties:\n        alert:\n          type: string\n        alertType:\n          $ref: '#/components/schemas/RuletypesAlertType'\n        annotations:\n          additionalProperties:\n            type: string\n          type: object\n        condition:\n          $ref: '#/components/schemas/RuletypesRuleCondition'\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        description:\n          type: string\n        disabled:\n          type: boolean\n        evalWindow:\n          type: string\n        evaluation:\n          $ref: '#/components/schemas/RuletypesEvaluationEnvelope'\n        frequency:\n          type: string\n        id:\n          type: string\n        labels:\n          additionalProperties:\n            type: string\n          type: object\n        notificationSettings:\n          $ref: '#/components/schemas/RuletypesNotificationSettings'\n        preferredChannels:\n          items:\n            type: string\n          type: array\n        ruleType:\n          $ref: '#/components/schemas/RuletypesRuleType'\n        schemaVersion:\n          type: string\n        source:\n          type: string\n        state:\n          $ref: '#/components/schemas/RuletypesAlertState'\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n        version:\n          type: string\n      required:\n      - id\n      - state\n      - alert\n      - alertType\n      - ruleType\n      - condition\n      type: object\n    RuletypesRuleCondition:\n      properties:\n        absentFor:\n          minimum: 0\n          type: integer\n        alertOnAbsent:\n          type: boolean\n        algorithm:\n          type: string\n        compositeQuery:\n          $ref: '#/components/schemas/RuletypesAlertCompositeQuery'\n        matchType:\n          $ref: '#/components/schemas/RuletypesMatchType'\n        op:\n          $ref: '#/components/schemas/RuletypesCompareOperator'\n        requireMinPoints:\n          type: boolean\n        requiredNumPoints:\n          type: integer\n        seasonality:\n          $ref: '#/components/schemas/RuletypesSeasonality'\n        selectedQueryName:\n          type: string\n        target:\n          format: double\n          nullable: true\n          type: number\n        targetUnit:\n          type: string\n        thresholds:\n          $ref: '#/components/schemas/RuletypesRuleThresholdData'\n      required:\n      - compositeQuery\n      type: object\n    RuletypesRuleThresholdData:\n      discriminator:\n        mapping:\n          basic: '#/components/schemas/RuletypesThresholdBasic'\n        propertyName: kind\n      oneOf:\n      - $ref: '#/components/schemas/RuletypesThresholdBasic'\n      type: object\n    RuletypesRuleType:\n      enum:\n      - threshold_rule\n      - promql_rule\n      - anomaly_rule\n      type: string\n    RuletypesScheduleType:\n      enum:\n      - hourly\n      - daily\n      - weekly\n      - monthly\n      type: string\n    RuletypesSeasonality:\n      enum:\n      - hourly\n      - daily\n      - weekly\n      type: string\n    RuletypesThresholdBasic:\n      properties:\n        kind:\n          $ref: '#/components/schemas/RuletypesThresholdKind'\n        spec:\n          $ref: '#/components/schemas/RuletypesBasicRuleThresholds'\n      required:\n      - kind\n      - spec\n      type: object\n    RuletypesThresholdKind:\n      enum:\n      - basic\n      type: string\n    SavedviewtypesDisplay:\n      properties:\n        color:\n          type: string\n        fontSize:\n          type: string\n        format:\n          type: string\n        maxLines:\n          type: integer\n      type: object\n    SavedviewtypesPanelType:\n      enum:\n      - value\n      - graph\n      - table\n      - list\n      - trace\n      type: string\n    SavedviewtypesPostableSavedView:\n      properties:\n        generateName:\n          type: boolean\n        name:\n          type: string\n        schemaVersion:\n          $ref: '#/components/schemas/SavedviewtypesSchemaVersion'\n        source:\n          $ref: '#/components/schemas/SavedviewtypesSource'\n        spec:\n          $ref: '#/components/schemas/SavedviewtypesSavedViewSpec'\n      required:\n      - source\n      - schemaVersion\n      - spec\n      type: object\n    SavedviewtypesSavedView:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        schemaVersion:\n          $ref: '#/components/schemas/SavedviewtypesSchemaVersion'\n        source:\n          $ref: '#/components/schemas/SavedviewtypesSource'\n        spec:\n          $ref: '#/components/schemas/SavedviewtypesSavedViewSpec'\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - schemaVersion\n      - spec\n      type: object\n    SavedviewtypesSavedViewSpec:\n      properties:\n        display:\n          $ref: '#/components/schemas/SavedviewtypesDisplay'\n        displayName:\n          type: string\n        panelType:\n          $ref: '#/components/schemas/SavedviewtypesPanelType'\n        queries:\n          items:\n            $ref: '#/components/schemas/Querybuildertypesv5QueryEnvelope'\n          minItems: 1\n          type: array\n        requestType:\n          $ref: '#/components/schemas/Querybuildertypesv5RequestType'\n        selectedFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          type: array\n      required:\n      - displayName\n      - panelType\n      - requestType\n      - queries\n      type: object\n    SavedviewtypesSchemaVersion:\n      enum:\n      - v2\n      type: string\n    SavedviewtypesSource:\n      enum:\n      - traces\n      - logs\n      - metrics\n      - meter\n      type: string\n    SavedviewtypesUpdatableSavedView:\n      properties:\n        schemaVersion:\n          $ref: '#/components/schemas/SavedviewtypesSchemaVersion'\n        source:\n          $ref: '#/components/schemas/SavedviewtypesSource'\n        spec:\n          $ref: '#/components/schemas/SavedviewtypesSavedViewSpec'\n      required:\n      - source\n      - schemaVersion\n      - spec\n      type: object\n    ServiceaccounttypesDeprecatedPostableServiceAccountRole:\n      properties:\n        id:\n          type: string\n      required:\n      - id\n      type: object\n    ServiceaccounttypesGettableFactorAPIKey:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        expiresAt:\n          minimum: 0\n          type: integer\n        id:\n          type: string\n        lastObservedAt:\n          format: date-time\n          type: string\n        name:\n          type: string\n        serviceAccountId:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - expiresAt\n      - lastObservedAt\n      - serviceAccountId\n      type: object\n    ServiceaccounttypesGettableFactorAPIKeyWithKey:\n      properties:\n        id:\n          type: string\n        key:\n          type: string\n      required:\n      - id\n      - key\n      type: object\n    ServiceaccounttypesPostableFactorAPIKey:\n      properties:\n        expiresAt:\n          minimum: 0\n          type: integer\n        name:\n          type: string\n      required:\n      - name\n      - expiresAt\n      type: object\n    ServiceaccounttypesPostableServiceAccount:\n      properties:\n        name:\n          type: string\n      required:\n      - name\n      type: object\n    ServiceaccounttypesPostableServiceAccountRole:\n      properties:\n        roleId:\n          type: string\n        serviceAccountId:\n          type: string\n      required:\n      - serviceAccountId\n      - roleId\n      type: object\n    ServiceaccounttypesServiceAccount:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        email:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        status:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - name\n      - email\n      - status\n      - orgId\n      type: object\n    ServiceaccounttypesServiceAccountRole:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        id:\n          type: string\n        role:\n          $ref: '#/components/schemas/AuthtypesRole'\n        roleId:\n          type: string\n        serviceAccountId:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - serviceAccountId\n      - roleId\n      - role\n      type: object\n    ServiceaccounttypesServiceAccountWithRoles:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        email:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        serviceAccountRoles:\n          items:\n            $ref: '#/components/schemas/ServiceaccounttypesServiceAccountRole'\n          nullable: true\n          type: array\n        status:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      - name\n      - email\n      - status\n      - orgId\n      - serviceAccountRoles\n      type: object\n    ServiceaccounttypesUpdatableFactorAPIKey:\n      properties:\n        expiresAt:\n          minimum: 0\n          type: integer\n        name:\n          type: string\n      required:\n      - name\n      - expiresAt\n      type: object\n    Sigv4SigV4Config:\n      type: object\n    SpantypesEvent:\n      properties:\n        attributeMap:\n          additionalProperties: {}\n          type: object\n        isError:\n          type: boolean\n        name:\n          type: string\n        timeUnixNano:\n          minimum: 0\n          type: integer\n      type: object\n    SpantypesFieldContext:\n      enum:\n      - attribute\n      - resource\n      type: string\n    SpantypesFlamegraphSpan:\n      properties:\n        attributes:\n          additionalProperties: {}\n          type: object\n        durationNano:\n          minimum: 0\n          type: integer\n        event:\n          items:\n            $ref: '#/components/schemas/SpantypesEvent'\n          type: array\n        hasError:\n          type: boolean\n        level:\n          format: int64\n          type: integer\n        name:\n          type: string\n        parentSpanId:\n          type: string\n        resource:\n          additionalProperties:\n            type: string\n          type: object\n        spanId:\n          type: string\n        timestamp:\n          minimum: 0\n          type: integer\n      required:\n      - spanId\n      - parentSpanId\n      - timestamp\n      - durationNano\n      - hasError\n      - name\n      - level\n      - event\n      - attributes\n      - resource\n      type: object\n    SpantypesGettableFlamegraphTrace:\n      properties:\n        endTimestampMillis:\n          format: int64\n          type: integer\n        hasMore:\n          type: boolean\n        spans:\n          items:\n            items:\n              $ref: '#/components/schemas/SpantypesFlamegraphSpan'\n            type: array\n          type: array\n        startTimestampMillis:\n          format: int64\n          type: integer\n      required:\n      - spans\n      - startTimestampMillis\n      - endTimestampMillis\n      - hasMore\n      type: object\n    SpantypesGettableSpanMapperGroups:\n      properties:\n        items:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanMapperGroup'\n          type: array\n      required:\n      - items\n      type: object\n    SpantypesGettableSpanMapperTest:\n      properties:\n        collectorLogs:\n          items:\n            type: string\n          nullable: true\n          type: array\n        spans:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanMapperTestSpan'\n          nullable: true\n          type: array\n      type: object\n    SpantypesGettableSpanMappers:\n      properties:\n        items:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanMapper'\n          type: array\n      required:\n      - items\n      type: object\n    SpantypesGettableTraceAggregations:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanAggregationResult'\n          type: array\n      required:\n      - aggregations\n      type: object\n    SpantypesGettableWaterfallTrace:\n      properties:\n        endTimestampMillis:\n          minimum: 0\n          type: integer\n        hasMissingSpans:\n          type: boolean\n        hasMore:\n          type: boolean\n        rootServiceEntryPoint:\n          type: string\n        rootServiceName:\n          type: string\n        spans:\n          items:\n            $ref: '#/components/schemas/SpantypesWaterfallSpan'\n          nullable: true\n          type: array\n        startTimestampMillis:\n          minimum: 0\n          type: integer\n        totalErrorSpansCount:\n          minimum: 0\n          type: integer\n        totalSpansCount:\n          minimum: 0\n          type: integer\n        uncollapsedSpans:\n          items:\n            type: string\n          nullable: true\n          type: array\n      type: object\n    SpantypesOtelSpanRef:\n      properties:\n        refType:\n          type: string\n        spanId:\n          type: string\n        traceId:\n          type: string\n      type: object\n    SpantypesPostableFlamegraph:\n      properties:\n        selectFields:\n          items:\n            $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n          type: array\n        selectedSpanId:\n          type: string\n      type: object\n    SpantypesPostableSpanMapper:\n      properties:\n        config:\n          $ref: '#/components/schemas/SpantypesSpanMapperConfig'\n        enabled:\n          type: boolean\n        fieldContext:\n          $ref: '#/components/schemas/SpantypesFieldContext'\n        name:\n          type: string\n      required:\n      - name\n      - fieldContext\n      - config\n      type: object\n    SpantypesPostableSpanMapperGroup:\n      properties:\n        condition:\n          $ref: '#/components/schemas/SpantypesSpanMapperGroupCondition'\n        enabled:\n          type: boolean\n        name:\n          type: string\n      required:\n      - name\n      - condition\n      type: object\n    SpantypesPostableSpanMapperTest:\n      properties:\n        groups:\n          items:\n            $ref: '#/components/schemas/SpantypesPostableSpanMapperTestGroup'\n          nullable: true\n          type: array\n        spans:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanMapperTestSpan'\n          nullable: true\n          type: array\n      required:\n      - spans\n      - groups\n      type: object\n    SpantypesPostableSpanMapperTestGroup:\n      properties:\n        condition:\n          $ref: '#/components/schemas/SpantypesSpanMapperGroupCondition'\n        enabled:\n          type: boolean\n        mappers:\n          items:\n            $ref: '#/components/schemas/SpantypesPostableSpanMapper'\n          nullable: true\n          type: array\n        name:\n          type: string\n      required:\n      - name\n      - condition\n      type: object\n    SpantypesPostableTraceAggregations:\n      properties:\n        aggregations:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanAggregation'\n          type: array\n      required:\n      - aggregations\n      type: object\n    SpantypesPostableWaterfall:\n      properties:\n        selectedSpanId:\n          type: string\n        uncollapsedSpans:\n          items:\n            type: string\n          nullable: true\n          type: array\n      type: object\n    SpantypesSpanAggregation:\n      properties:\n        aggregation:\n          $ref: '#/components/schemas/SpantypesSpanAggregationType'\n        field:\n          $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n      required:\n      - field\n      - aggregation\n      type: object\n    SpantypesSpanAggregationResult:\n      properties:\n        aggregation:\n          $ref: '#/components/schemas/SpantypesSpanAggregationType'\n        field:\n          $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n        value:\n          additionalProperties:\n            minimum: 0\n            type: integer\n          nullable: true\n          type: object\n      required:\n      - field\n      - aggregation\n      - value\n      type: object\n    SpantypesSpanAggregationType:\n      enum:\n      - span_count\n      - execution_time_percentage\n      - duration\n      type: string\n    SpantypesSpanMapper:\n      properties:\n        config:\n          $ref: '#/components/schemas/SpantypesSpanMapperConfig'\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        enabled:\n          type: boolean\n        fieldContext:\n          $ref: '#/components/schemas/SpantypesFieldContext'\n        groupId:\n          type: string\n        id:\n          type: string\n        name:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - groupId\n      - name\n      - fieldContext\n      - config\n      - enabled\n      type: object\n    SpantypesSpanMapperConfig:\n      properties:\n        sources:\n          items:\n            $ref: '#/components/schemas/SpantypesSpanMapperSource'\n          nullable: true\n          type: array\n      required:\n      - sources\n      type: object\n    SpantypesSpanMapperGroup:\n      properties:\n        condition:\n          $ref: '#/components/schemas/SpantypesSpanMapperGroupCondition'\n        createdAt:\n          format: date-time\n          type: string\n        createdBy:\n          type: string\n        enabled:\n          type: boolean\n        id:\n          type: string\n        name:\n          type: string\n        orgId:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n        updatedBy:\n          type: string\n      required:\n      - id\n      - orgId\n      - name\n      - condition\n      - enabled\n      type: object\n    SpantypesSpanMapperGroupCondition:\n      nullable: true\n      properties:\n        attributes:\n          items:\n            type: string\n          nullable: true\n          type: array\n        resource:\n          items:\n            type: string\n          nullable: true\n          type: array\n      required:\n      - attributes\n      - resource\n      type: object\n    SpantypesSpanMapperOperation:\n      enum:\n      - move\n      - copy\n      type: string\n    SpantypesSpanMapperSource:\n      properties:\n        context:\n          $ref: '#/components/schemas/SpantypesFieldContext'\n        key:\n          type: string\n        operation:\n          $ref: '#/components/schemas/SpantypesSpanMapperOperation'\n        priority:\n          type: integer\n      required:\n      - key\n      - context\n      - operation\n      - priority\n      type: object\n    SpantypesSpanMapperTestSpan:\n      properties:\n        attributes:\n          additionalProperties: {}\n          nullable: true\n          type: object\n        resource:\n          additionalProperties: {}\n          nullable: true\n          type: object\n      type: object\n    SpantypesUpdatableSpanMapper:\n      properties:\n        config:\n          $ref: '#/components/schemas/SpantypesSpanMapperConfig'\n        enabled:\n          nullable: true\n          type: boolean\n        fieldContext:\n          $ref: '#/components/schemas/SpantypesFieldContext'\n      type: object\n    SpantypesUpdatableSpanMapperGroup:\n      properties:\n        condition:\n          $ref: '#/components/schemas/SpantypesSpanMapperGroupCondition'\n        enabled:\n          nullable: true\n          type: boolean\n        name:\n          nullable: true\n          type: string\n      type: object\n    SpantypesWaterfallSpan:\n      properties:\n        attributes:\n          additionalProperties: {}\n          nullable: true\n          type: object\n        db_name:\n          type: string\n        db_operation:\n          type: string\n        duration_nano:\n          minimum: 0\n          type: integer\n        events:\n          items:\n            $ref: '#/components/schemas/SpantypesEvent'\n          nullable: true\n          type: array\n        external_http_method:\n          type: string\n        external_http_url:\n          type: string\n        flags:\n          minimum: 0\n          type: integer\n        has_children:\n          type: boolean\n        has_error:\n          type: boolean\n        http_host:\n          type: string\n        http_method:\n          type: string\n        http_url:\n          type: string\n        is_remote:\n          type: string\n        kind_string:\n          type: string\n        level:\n          minimum: 0\n          type: integer\n        name:\n          type: string\n        parent_span_id:\n          type: string\n        references:\n          items:\n            $ref: '#/components/schemas/SpantypesOtelSpanRef'\n          type: array\n        resource:\n          additionalProperties:\n            type: string\n          nullable: true\n          type: object\n        response_status_code:\n          type: string\n        span_id:\n          type: string\n        status_code:\n          type: integer\n        status_code_string:\n          type: string\n        status_message:\n          type: string\n        sub_tree_node_count:\n          minimum: 0\n          type: integer\n        time_unix:\n          minimum: 0\n          type: integer\n        trace_id:\n          type: string\n        trace_state:\n          type: string\n      required:\n      - references\n      type: object\n    TagtypesGettableTag:\n      properties:\n        key:\n          type: string\n        value:\n          type: string\n      required:\n      - key\n      - value\n      type: object\n    TagtypesPostableTag:\n      properties:\n        key:\n          type: string\n        value:\n          type: string\n      required:\n      - key\n      - value\n      type: object\n    TelemetrystoretypesEstimateEntry:\n      properties:\n        database:\n          type: string\n        marks:\n          format: int64\n          type: integer\n        parts:\n          format: int64\n          type: integer\n        rows:\n          format: int64\n          type: integer\n        table:\n          type: string\n      required:\n      - database\n      - table\n      - parts\n      - rows\n      - marks\n      type: object\n    TelemetrystoretypesGranules:\n      nullable: true\n      properties:\n        initial:\n          format: int64\n          type: integer\n        reads:\n          items:\n            $ref: '#/components/schemas/TelemetrystoretypesMergeTreeRead'\n          type: array\n        selected:\n          format: int64\n          type: integer\n        skipped:\n          format: int64\n          type: integer\n      required:\n      - initial\n      - selected\n      - skipped\n      - reads\n      type: object\n    TelemetrystoretypesIndexStep:\n      properties:\n        condition:\n          type: string\n        initialGranules:\n          format: int64\n          type: integer\n        initialParts:\n          format: int64\n          type: integer\n        keys:\n          items:\n            type: string\n          type: array\n        name:\n          type: string\n        selectedGranules:\n          format: int64\n          type: integer\n        selectedParts:\n          format: int64\n          type: integer\n        type:\n          type: string\n      required:\n      - type\n      - name\n      - keys\n      - condition\n      - initialParts\n      - selectedParts\n      - initialGranules\n      - selectedGranules\n      type: object\n    TelemetrystoretypesMergeTreeRead:\n      properties:\n        steps:\n          items:\n            $ref: '#/components/schemas/TelemetrystoretypesIndexStep'\n          type: array\n        table:\n          type: string\n      required:\n      - table\n      - steps\n      type: object\n    TelemetrytypesFieldContext:\n      enum:\n      - metric\n      - log\n      - span\n      - resource\n      - attribute\n      - body\n      - \"\"\n      type: string\n    TelemetrytypesFieldDataType:\n      enum:\n      - string\n      - bool\n      - float64\n      - int64\n      - number\n      - \"\"\n      type: string\n    TelemetrytypesGettableFieldKeys:\n      properties:\n        complete:\n          type: boolean\n        keys:\n          additionalProperties:\n            items:\n              $ref: '#/components/schemas/TelemetrytypesTelemetryFieldKey'\n            type: array\n          nullable: true\n          type: object\n      required:\n      - keys\n      - complete\n      type: object\n    TelemetrytypesGettableFieldValues:\n      properties:\n        complete:\n          type: boolean\n        values:\n          $ref: '#/components/schemas/TelemetrytypesTelemetryFieldValues'\n      required:\n      - values\n      - complete\n      type: object\n    TelemetrytypesSignal:\n      enum:\n      - traces\n      - logs\n      - metrics\n      - \"\"\n      type: string\n    TelemetrytypesSource:\n      enum:\n      - meter\n      - \"\"\n      type: string\n    TelemetrytypesTelemetryFieldKey:\n      properties:\n        description:\n          type: string\n        fieldContext:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n        fieldDataType:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n        name:\n          type: string\n        signal:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n        unit:\n          type: string\n      required:\n      - name\n      type: object\n    TelemetrytypesTelemetryFieldValues:\n      properties:\n        boolValues:\n          items:\n            type: boolean\n          type: array\n        numberValues:\n          items:\n            format: double\n            type: number\n          type: array\n        relatedValues:\n          items:\n            type: string\n          type: array\n        stringValues:\n          items:\n            type: string\n          type: array\n      type: object\n    TimeDuration:\n      format: int64\n      type: integer\n    TypesAlertStatus:\n      properties:\n        inhibitedBy:\n          items:\n            type: string\n          nullable: true\n          type: array\n        silencedBy:\n          items:\n            type: string\n          nullable: true\n          type: array\n        state:\n          type: string\n      type: object\n    TypesChangePasswordRequest:\n      properties:\n        newPassword:\n          type: string\n        oldPassword:\n          type: string\n      type: object\n    TypesIdentifiable:\n      properties:\n        id:\n          type: string\n      required:\n      - id\n      type: object\n    TypesOrganization:\n      properties:\n        alias:\n          type: string\n        createdAt:\n          format: date-time\n          type: string\n        displayName:\n          type: string\n        id:\n          type: string\n        key:\n          minimum: 0\n          type: integer\n        name:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      type: object\n    TypesPostableForgotPassword:\n      properties:\n        email:\n          type: string\n        frontendBaseURL:\n          type: string\n        orgId:\n          type: string\n      required:\n      - orgId\n      - email\n      type: object\n    TypesPostableResetPassword:\n      properties:\n        password:\n          type: string\n        token:\n          type: string\n      type: object\n    TypesPostableVerifyResetPasswordToken:\n      properties:\n        token:\n          type: string\n      required:\n      - token\n      type: object\n    TypesResetPasswordToken:\n      properties:\n        expiresAt:\n          format: date-time\n          type: string\n        id:\n          type: string\n        passwordId:\n          type: string\n        token:\n          type: string\n      required:\n      - id\n      type: object\n    TypesUpdatableUser:\n      properties:\n        displayName:\n          type: string\n      required:\n      - displayName\n      type: object\n    TypesUser:\n      properties:\n        createdAt:\n          format: date-time\n          type: string\n        displayName:\n          type: string\n        email:\n          type: string\n        id:\n          type: string\n        isRoot:\n          type: boolean\n        orgId:\n          type: string\n        status:\n          type: string\n        updatedAt:\n          format: date-time\n          type: string\n      required:\n      - id\n      type: object\n    ZeustypesGettableHost:\n      properties:\n        hosts:\n          items:\n            $ref: '#/components/schemas/ZeustypesHost'\n          nullable: true\n          type: array\n        name:\n          type: string\n        state:\n          type: string\n        tier:\n          type: string\n      required:\n      - name\n      - state\n      - tier\n      - hosts\n      type: object\n    ZeustypesHost:\n      properties:\n        is_default:\n          type: boolean\n        name:\n          type: string\n        url:\n          type: string\n      required:\n      - name\n      - is_default\n      - url\n      type: object\n    ZeustypesPostableHost:\n      properties:\n        name:\n          type: string\n      required:\n      - name\n      type: object\n    ZeustypesPostableProfile:\n      properties:\n        existing_observability_tool:\n          type: string\n        has_existing_observability_tool:\n          type: boolean\n        logs_scale_per_day_in_gb:\n          format: int64\n          type: integer\n        number_of_hosts:\n          format: int64\n          type: integer\n        number_of_services:\n          format: int64\n          type: integer\n        reasons_for_interest_in_signoz:\n          items:\n            type: string\n          nullable: true\n          type: array\n        timeline_for_migrating_to_signoz:\n          type: string\n        uses_otel:\n          type: boolean\n        where_did_you_discover_signoz:\n          type: string\n      required:\n      - uses_otel\n      - has_existing_observability_tool\n      - existing_observability_tool\n      - reasons_for_interest_in_signoz\n      - logs_scale_per_day_in_gb\n      - number_of_services\n      - number_of_hosts\n      - where_did_you_discover_signoz\n      - timeline_for_migrating_to_signoz\n      type: object\n  securitySchemes:\n    api_key:\n      description: API Keys\n      in: header\n      name: SigNoz-Api-Key\n      type: apiKey\n    tokenizer:\n      bearerFormat: Tokenizer\n      description: Tokens generated by the tokenizer\n      scheme: bearer\n      type: http\ninfo:\n  contact:\n    email: support@signoz.io\n    name: SigNoz Support\n    url: https://signoz.io\n  description: OpenTelemetry-Native Logs, Metrics and Traces in a single pane\n  termsOfService: https://signoz.io/terms-of-service/\n  title: SigNoz\n  version: \"\"\nopenapi: 3.0.3\npaths:\n  /api/v1/alerts:\n    get:\n      deprecated: false\n      description: This endpoint returns alerts for the organization\n      operationId: GetAlerts\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AlertmanagertypesDeprecatedGettableAlert'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get alerts\n      tags:\n      - alerts\n  /api/v1/authz/check:\n    post:\n      deprecated: false\n      description: Checks if the authenticated user has permissions for given transactions\n      operationId: AuthzCheck\n      requestBody:\n        content:\n          application/json:\n            schema:\n              items:\n                $ref: '#/components/schemas/AuthtypesTransaction'\n              type: array\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AuthtypesGettableTransaction'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Check permissions\n      tags:\n      - authz\n  /api/v1/channels:\n    get:\n      deprecated: false\n      description: This endpoint lists all notification channels for the organization\n      operationId: ListChannels\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AlertmanagertypesChannel'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List notification channels\n      tags:\n      - channels\n    post:\n      deprecated: false\n      description: This endpoint creates a notification channel\n      operationId: CreateChannel\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesPostableChannel'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesChannel'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create notification channel\n      tags:\n      - channels\n  /api/v1/channels/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes a notification channel by ID\n      operationId: DeleteChannelByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete notification channel\n      tags:\n      - channels\n    get:\n      deprecated: false\n      description: This endpoint returns a notification channel by ID\n      operationId: GetChannelByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesChannel'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get notification channel by ID\n      tags:\n      - channels\n    put:\n      deprecated: false\n      description: This endpoint updates a notification channel by ID\n      operationId: UpdateChannelByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesReceiver'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update notification channel\n      tags:\n      - channels\n  /api/v1/channels/test:\n    post:\n      deprecated: false\n      description: This endpoint tests a notification channel by sending a test notification\n      operationId: TestChannel\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesReceiver'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Test notification channel\n      tags:\n      - channels\n  /api/v1/cloud-integrations/{cloud_provider}/agent-check-in:\n    post:\n      deprecated: true\n      description: '[Deprecated] This endpoint is called by the deployed agent to\n        check in'\n      operationId: AgentCheckInDeprecated\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/CloudintegrationtypesPostableAgentCheckIn'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesGettableAgentCheckIn'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Agent check-in\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/accounts:\n    get:\n      deprecated: false\n      description: This endpoint lists the accounts for the specified cloud provider\n      operationId: ListAccounts\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesGettableAccounts'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: List accounts\n      tags:\n      - cloudintegration\n    post:\n      deprecated: false\n      description: This endpoint creates a new cloud integration account for the specified\n        cloud provider\n      operationId: CreateAccount\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/CloudintegrationtypesPostableAccount'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesGettableAccountWithConnectionArtifact'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create account\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/accounts/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint disconnects an account for the specified cloud provider\n      operationId: DisconnectAccount\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Disconnect account\n      tags:\n      - cloudintegration\n    get:\n      deprecated: false\n      description: This endpoint gets an account for the specified cloud provider\n      operationId: GetAccount\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesAccount'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get account\n      tags:\n      - cloudintegration\n    put:\n      deprecated: false\n      description: This endpoint updates an account for the specified cloud provider\n      operationId: UpdateAccount\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/CloudintegrationtypesUpdatableAccount'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update account\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/accounts/{id}/services:\n    get:\n      deprecated: false\n      description: This endpoint lists the services metadata for the specified account\n        and cloud provider\n      operationId: ListAccountServicesMetadata\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesGettableServicesMetadata'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: List account services metadata\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/accounts/{id}/services/{service_id}:\n    get:\n      deprecated: false\n      description: This endpoint gets a service and its configuration for the specified\n        cloud integration account\n      operationId: GetAccountService\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: service_id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesService'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get service for account\n      tags:\n      - cloudintegration\n    put:\n      deprecated: false\n      description: This endpoint updates a service for the specified cloud provider\n      operationId: UpdateService\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: service_id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/CloudintegrationtypesUpdatableService'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update service\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/accounts/check_in:\n    post:\n      deprecated: false\n      description: This endpoint is called by the deployed agent to check in\n      operationId: AgentCheckIn\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/CloudintegrationtypesPostableAgentCheckIn'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesGettableAgentCheckIn'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Agent check-in\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/credentials:\n    get:\n      deprecated: false\n      description: This endpoint retrieves the connection credentials required for\n        integration\n      operationId: GetConnectionCredentials\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesCredentials'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get connection credentials\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/services:\n    get:\n      deprecated: false\n      description: This endpoint lists the services metadata for the specified cloud\n        provider, without any account context.\n      operationId: ListServicesMetadata\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesGettableServicesMetadata'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: List services metadata\n      tags:\n      - cloudintegration\n  /api/v1/cloud_integrations/{cloud_provider}/services/{service_id}:\n    get:\n      deprecated: false\n      description: This endpoint gets a service definition for the specified cloud\n        provider, without any account context.\n      operationId: GetService\n      parameters:\n      - in: path\n        name: cloud_provider\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: service_id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/CloudintegrationtypesService'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get service\n      tags:\n      - cloudintegration\n  /api/v1/complete/google:\n    get:\n      deprecated: false\n      description: This endpoint creates a session for a user using google callback\n      operationId: CreateSessionByGoogleCallback\n      responses:\n        \"303\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesGettableToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: See Other\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Create session by google callback\n      tags:\n      - sessions\n  /api/v1/complete/oidc:\n    get:\n      deprecated: false\n      description: This endpoint creates a session for a user using oidc callback\n      operationId: CreateSessionByOIDCCallback\n      responses:\n        \"303\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesGettableToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: See Other\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Create session by oidc callback\n      tags:\n      - sessions\n  /api/v1/complete/saml:\n    post:\n      deprecated: false\n      description: This endpoint creates a session for a user using saml callback\n      operationId: CreateSessionBySAMLCallback\n      parameters:\n      - in: query\n        name: RelayState\n        schema:\n          type: string\n      - in: query\n        name: SAMLResponse\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/x-www-form-urlencoded:\n            schema:\n              properties:\n                RelayState:\n                  type: string\n                SAMLResponse:\n                  type: string\n              type: object\n      responses:\n        \"303\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesGettableToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: See Other\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Create session by saml callback\n      tags:\n      - sessions\n  /api/v1/dashboards/{id}/public:\n    delete:\n      deprecated: false\n      description: This endpoint deletes the public sharing config and disables the\n        public sharing of a dashboard\n      operationId: DeletePublicDashboard\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Delete public dashboard\n      tags:\n      - dashboard\n    get:\n      deprecated: false\n      description: This endpoint returns public sharing config for a dashboard\n      operationId: GetPublicDashboard\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettablePublicDasbhboard'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:read\n      - tokenizer:\n        - dashboard:read\n      summary: Get public dashboard\n      tags:\n      - dashboard\n    post:\n      deprecated: false\n      description: This endpoint creates public sharing config and enables public\n        sharing of the dashboard\n      operationId: CreatePublicDashboard\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesPostablePublicDashboard'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Create public dashboard\n      tags:\n      - dashboard\n    put:\n      deprecated: false\n      description: This endpoint updates the public sharing config for a dashboard\n      operationId: UpdatePublicDashboard\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesUpdatablePublicDashboard'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Update public dashboard\n      tags:\n      - dashboard\n  /api/v1/downtime_schedules:\n    get:\n      deprecated: false\n      description: This endpoint lists all planned maintenance / downtime schedules\n      operationId: ListDowntimeSchedules\n      parameters:\n      - in: query\n        name: active\n        schema:\n          nullable: true\n          type: boolean\n      - in: query\n        name: recurring\n        schema:\n          nullable: true\n          type: boolean\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AlertmanagertypesPlannedMaintenance'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List downtime schedules\n      tags:\n      - downtimeschedules\n    post:\n      deprecated: false\n      description: This endpoint creates a new planned maintenance / downtime schedule\n      operationId: CreateDowntimeSchedule\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesPostablePlannedMaintenance'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesPlannedMaintenance'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Create downtime schedule\n      tags:\n      - downtimeschedules\n  /api/v1/downtime_schedules/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes a downtime schedule by ID\n      operationId: DeleteDowntimeScheduleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Delete downtime schedule\n      tags:\n      - downtimeschedules\n    get:\n      deprecated: false\n      description: This endpoint returns a downtime schedule by ID\n      operationId: GetDowntimeScheduleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesPlannedMaintenance'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get downtime schedule by ID\n      tags:\n      - downtimeschedules\n    put:\n      deprecated: false\n      description: This endpoint updates a downtime schedule by ID\n      operationId: UpdateDowntimeScheduleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesPostablePlannedMaintenance'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Update downtime schedule\n      tags:\n      - downtimeschedules\n  /api/v1/export_raw_data:\n    post:\n      deprecated: false\n      description: This endpoints allows complex query exporting raw data for traces\n        and logs\n      operationId: HandleExportRawDataPOST\n      parameters:\n      - description: The output format for the export.\n        in: query\n        name: format\n        schema:\n          default: csv\n          description: The output format for the export.\n          enum:\n          - csv\n          - jsonl\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/Querybuildertypesv5QueryRangeRequest'\n      responses:\n        \"200\":\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Export raw data\n      tags:\n      - logs\n      - traces\n  /api/v1/fields/keys:\n    get:\n      deprecated: false\n      description: This endpoint returns field keys\n      operationId: GetFieldsKeys\n      parameters:\n      - in: query\n        name: signal\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n      - in: query\n        name: source\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: startUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: endUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: fieldContext\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n      - in: query\n        name: fieldDataType\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n      - in: query\n        name: metricName\n        schema:\n          type: string\n      - in: query\n        name: metricNamespace\n        schema:\n          type: string\n      - in: query\n        name: searchText\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TelemetrytypesGettableFieldKeys'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get field keys\n      tags:\n      - fields\n  /api/v1/fields/values:\n    get:\n      deprecated: false\n      description: This endpoint returns field values\n      operationId: GetFieldsValues\n      parameters:\n      - in: query\n        name: signal\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n      - in: query\n        name: source\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: startUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: endUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: fieldContext\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n      - in: query\n        name: fieldDataType\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n      - in: query\n        name: metricName\n        schema:\n          type: string\n      - in: query\n        name: metricNamespace\n        schema:\n          type: string\n      - in: query\n        name: searchText\n        schema:\n          type: string\n      - in: query\n        name: name\n        schema:\n          type: string\n      - in: query\n        name: existingQuery\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TelemetrytypesGettableFieldValues'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get field values\n      tags:\n      - fields\n  /api/v1/global/config:\n    get:\n      deprecated: false\n      description: This endpoint returns global config\n      operationId: GetGlobalConfig\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/GlobaltypesConfig'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Get global config\n      tags:\n      - global\n  /api/v1/llm_pricing_rules:\n    get:\n      deprecated: false\n      description: Returns all LLM pricing rules for the authenticated org, with pagination.\n      operationId: ListLLMPricingRules\n      parameters:\n      - in: query\n        name: offset\n        schema:\n          type: integer\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: q\n        schema:\n          type: string\n      - in: query\n        name: isOverride\n        schema:\n          nullable: true\n          type: boolean\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/LlmpricingruletypesGettablePricingRules'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List pricing rules\n      tags:\n      - llmpricingrules\n    put:\n      deprecated: false\n      description: Single write endpoint used by both the user and the Zeus sync job.\n        Per-rule match is by id, then sourceId, then insert. Override rows (is_override=true)\n        are fully preserved when the request does not provide isOverride; only synced_at\n        is stamped.\n      operationId: CreateOrUpdateLLMPricingRules\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/LlmpricingruletypesUpdatableLLMPricingRules'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create or update pricing rules\n      tags:\n      - llmpricingrules\n  /api/v1/llm_pricing_rules/{id}:\n    delete:\n      deprecated: false\n      description: Hard-deletes a pricing rule. If auto-synced, it will be recreated\n        on the next sync cycle.\n      operationId: DeleteLLMPricingRule\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete a pricing rule\n      tags:\n      - llmpricingrules\n    get:\n      deprecated: false\n      description: Returns a single LLM pricing rule by ID.\n      operationId: GetLLMPricingRule\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/LlmpricingruletypesLLMPricingRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get a pricing rule\n      tags:\n      - llmpricingrules\n  /api/v1/llm_pricing_rules/unmapped_models:\n    get:\n      deprecated: false\n      description: Returns models seen in the last hour of trace data (gen_ai.request.model)\n        that no pricing rule pattern matches, so the user can add them to an existing\n        rule or create a new one.\n      operationId: ListUnmappedLLMModels\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/LlmpricingruletypesGettableUnmappedModels'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List unmapped models\n      tags:\n      - llmpricingrules\n  /api/v1/logs/promote_paths:\n    get:\n      deprecated: false\n      description: This endpoints promotes and indexes paths\n      operationId: ListPromotedAndIndexedPaths\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/PromotetypesPromotePath'\n                    nullable: true\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Promote and index paths\n      tags:\n      - logs\n    post:\n      deprecated: false\n      description: This endpoints promotes and indexes paths\n      operationId: HandlePromoteAndIndexPaths\n      requestBody:\n        content:\n          application/json:\n            schema:\n              items:\n                $ref: '#/components/schemas/PromotetypesPromotePath'\n              nullable: true\n              type: array\n      responses:\n        \"201\":\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Promote and index paths\n      tags:\n      - logs\n  /api/v1/org/preferences:\n    get:\n      deprecated: false\n      description: This endpoint lists all org preferences\n      operationId: ListOrgPreferences\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/PreferencetypesPreference'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: List org preferences\n      tags:\n      - preferences\n  /api/v1/org/preferences/{name}:\n    get:\n      deprecated: false\n      description: This endpoint returns the org preference by name\n      operationId: GetOrgPreference\n      parameters:\n      - in: path\n        name: name\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/PreferencetypesPreference'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get org preference\n      tags:\n      - preferences\n    put:\n      deprecated: false\n      description: This endpoint updates the org preference by name\n      operationId: UpdateOrgPreference\n      parameters:\n      - in: path\n        name: name\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/PreferencetypesUpdatablePreference'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update org preference\n      tags:\n      - preferences\n  /api/v1/public/dashboards/{id}:\n    get:\n      deprecated: false\n      description: This endpoint returns the sanitized dashboard data for public access\n      operationId: GetPublicDashboardData\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettablePublicDashboardData'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - anonymous:\n        - public-dashboard:read\n      summary: Get public dashboard data\n      tags:\n      - dashboard\n  /api/v1/public/dashboards/{id}/widgets/{idx}/query_range:\n    get:\n      deprecated: false\n      description: This endpoint return query range results for a widget of public\n        dashboard\n      operationId: GetPublicDashboardWidgetQueryRange\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: idx\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/Querybuildertypesv5QueryRangeResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - anonymous:\n        - public-dashboard:read\n      summary: Get query range result\n      tags:\n      - dashboard\n  /api/v1/roles:\n    get:\n      deprecated: false\n      description: This endpoint lists all roles\n      operationId: ListRoles\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AuthtypesGettableRole'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - role:list\n      - tokenizer:\n        - role:list\n      summary: List roles\n      tags:\n      - role\n    post:\n      deprecated: false\n      description: This endpoint creates a role\n      operationId: CreateRole\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesPostableRole'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - role:create\n      - tokenizer:\n        - role:create\n      summary: Create role\n      tags:\n      - role\n  /api/v1/roles/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes a role\n      operationId: DeleteRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - role:delete\n      - tokenizer:\n        - role:delete\n      summary: Delete role\n      tags:\n      - role\n    get:\n      deprecated: false\n      description: This endpoint gets a role\n      operationId: GetRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesRole'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - role:read\n      - tokenizer:\n        - role:read\n      summary: Get role\n      tags:\n      - role\n    put:\n      deprecated: false\n      description: This endpoint updates a role\n      operationId: UpdateRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesUpdatableRole'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - role:update\n      - tokenizer:\n        - role:update\n      summary: Update role\n      tags:\n      - role\n  /api/v1/route_policies:\n    get:\n      deprecated: false\n      description: This endpoint lists all route policies for the organization\n      operationId: GetAllRoutePolicies\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AlertmanagertypesGettableRoutePolicy'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List route policies\n      tags:\n      - routepolicies\n    post:\n      deprecated: false\n      description: This endpoint creates a route policy\n      operationId: CreateRoutePolicy\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesPostableRoutePolicy'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesGettableRoutePolicy'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create route policy\n      tags:\n      - routepolicies\n  /api/v1/route_policies/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes a route policy by ID\n      operationId: DeleteRoutePolicyByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete route policy\n      tags:\n      - routepolicies\n    get:\n      deprecated: false\n      description: This endpoint returns a route policy by ID\n      operationId: GetRoutePolicyByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesGettableRoutePolicy'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get route policy by ID\n      tags:\n      - routepolicies\n    put:\n      deprecated: false\n      description: This endpoint updates a route policy by ID\n      operationId: UpdateRoutePolicy\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesPostableRoutePolicy'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AlertmanagertypesGettableRoutePolicy'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update route policy\n      tags:\n      - routepolicies\n  /api/v1/service_account_roles:\n    post:\n      deprecated: false\n      description: This endpoint assigns a role to a service account\n      operationId: CreateServiceAccountRole\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccountRole'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:attach\n        - role:attach\n      - tokenizer:\n        - serviceaccount:attach\n        - role:attach\n      summary: Create service account role\n      tags:\n      - serviceaccount\n  /api/v1/service_account_roles/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint revokes a role from a service account\n      operationId: DeleteServiceAccountRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:detach\n        - role:detach\n      - tokenizer:\n        - serviceaccount:detach\n        - role:detach\n      summary: Delete service account role\n      tags:\n      - serviceaccount\n    get:\n      deprecated: false\n      description: This endpoint gets an existing service account role\n      operationId: GetServiceAccountRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/ServiceaccounttypesServiceAccountRole'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:read\n      - tokenizer:\n        - serviceaccount:read\n      summary: Get service account role\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts:\n    get:\n      deprecated: false\n      description: This endpoint lists the service accounts for an organisation\n      operationId: ListServiceAccounts\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/ServiceaccounttypesServiceAccount'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:list\n      - tokenizer:\n        - serviceaccount:list\n      summary: List service accounts\n      tags:\n      - serviceaccount\n    post:\n      deprecated: false\n      description: This endpoint creates a service account\n      operationId: CreateServiceAccount\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccount'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:create\n      - tokenizer:\n        - serviceaccount:create\n      summary: Create service account\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes an existing service account\n      operationId: DeleteServiceAccount\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:delete\n      - tokenizer:\n        - serviceaccount:delete\n      summary: Deletes a service account\n      tags:\n      - serviceaccount\n    get:\n      deprecated: false\n      description: This endpoint gets an existing service account\n      operationId: GetServiceAccount\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/ServiceaccounttypesServiceAccountWithRoles'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:read\n      - tokenizer:\n        - serviceaccount:read\n      summary: Gets a service account\n      tags:\n      - serviceaccount\n    put:\n      deprecated: false\n      description: This endpoint updates an existing service account\n      operationId: UpdateServiceAccount\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccount'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:update\n      - tokenizer:\n        - serviceaccount:update\n      summary: Updates a service account\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts/{id}/keys:\n    get:\n      deprecated: false\n      description: This endpoint lists the service account keys\n      operationId: ListServiceAccountKeys\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/ServiceaccounttypesGettableFactorAPIKey'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - factor-api-key:list\n      - tokenizer:\n        - factor-api-key:list\n      summary: List service account keys\n      tags:\n      - serviceaccount\n    post:\n      deprecated: false\n      description: This endpoint creates a service account key\n      operationId: CreateServiceAccountKey\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesPostableFactorAPIKey'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/ServiceaccounttypesGettableFactorAPIKeyWithKey'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - factor-api-key:create\n        - serviceaccount:attach\n      - tokenizer:\n        - factor-api-key:create\n        - serviceaccount:attach\n      summary: Create a service account key\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts/{id}/keys/{fid}:\n    delete:\n      deprecated: false\n      description: This endpoint revokes an existing service account key\n      operationId: RevokeServiceAccountKey\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: fid\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - factor-api-key:delete\n        - serviceaccount:detach\n      - tokenizer:\n        - factor-api-key:delete\n        - serviceaccount:detach\n      summary: Revoke a service account key\n      tags:\n      - serviceaccount\n    put:\n      deprecated: false\n      description: This endpoint updates an existing service account key\n      operationId: UpdateServiceAccountKey\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: fid\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesUpdatableFactorAPIKey'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - factor-api-key:update\n      - tokenizer:\n        - factor-api-key:update\n      summary: Updates a service account key\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts/{id}/roles:\n    get:\n      deprecated: false\n      description: This endpoint gets all the roles for the existing service account\n      operationId: GetServiceAccountRoles\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AuthtypesRole'\n                    nullable: true\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:read\n      - tokenizer:\n        - serviceaccount:read\n      summary: Gets service account roles\n      tags:\n      - serviceaccount\n    post:\n      deprecated: true\n      description: This endpoint assigns a role to a service account\n      operationId: CreateServiceAccountRoleDeprecated\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesDeprecatedPostableServiceAccountRole'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:attach\n        - role:attach\n      - tokenizer:\n        - serviceaccount:attach\n        - role:attach\n      summary: Create service account role\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts/{id}/roles/{rid}:\n    delete:\n      deprecated: true\n      description: This endpoint revokes a role from service account\n      operationId: DeleteServiceAccountRoleDeprecated\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: rid\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - serviceaccount:detach\n        - role:detach\n      - tokenizer:\n        - serviceaccount:detach\n        - role:detach\n      summary: Delete service account role\n      tags:\n      - serviceaccount\n  /api/v1/service_accounts/me:\n    get:\n      deprecated: false\n      description: This endpoint gets my service account\n      operationId: GetMyServiceAccount\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/ServiceaccounttypesServiceAccountWithRoles'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Gets my service account\n      tags:\n      - serviceaccount\n    put:\n      deprecated: false\n      description: This endpoint gets my service account\n      operationId: UpdateMyServiceAccount\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccount'\n      responses:\n        \"204\":\n          description: No Content\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Updates my service account\n      tags:\n      - serviceaccount\n  /api/v1/span_mapper_groups:\n    get:\n      deprecated: false\n      description: Returns all span attribute mapping groups for the authenticated\n        org.\n      operationId: ListSpanMapperGroups\n      parameters:\n      - in: query\n        name: enabled\n        schema:\n          nullable: true\n          type: boolean\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesGettableSpanMapperGroups'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List span attribute mapping groups\n      tags:\n      - spanmapper\n    post:\n      deprecated: false\n      description: Creates a new span attribute mapping group for the org.\n      operationId: CreateSpanMapperGroup\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesPostableSpanMapperGroup'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesSpanMapperGroup'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create a span attribute mapping group\n      tags:\n      - spanmapper\n  /api/v1/span_mapper_groups/{groupId}:\n    delete:\n      deprecated: false\n      description: Hard-deletes a mapping group and cascades to all its mappers.\n      operationId: DeleteSpanMapperGroup\n      parameters:\n      - in: path\n        name: groupId\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete a span attribute mapping group\n      tags:\n      - spanmapper\n    patch:\n      deprecated: false\n      description: Partially updates an existing mapping group's name, condition,\n        or enabled state.\n      operationId: UpdateSpanMapperGroup\n      parameters:\n      - in: path\n        name: groupId\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesUpdatableSpanMapperGroup'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update a span attribute mapping group\n      tags:\n      - spanmapper\n  /api/v1/span_mapper_groups/{groupId}/span_mappers:\n    get:\n      deprecated: false\n      description: Returns all mappers belonging to a mapping group.\n      operationId: ListSpanMappers\n      parameters:\n      - in: path\n        name: groupId\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesGettableSpanMappers'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List span mappers for a group\n      tags:\n      - spanmapper\n    post:\n      deprecated: false\n      description: Adds a new mapper to the specified mapping group.\n      operationId: CreateSpanMapper\n      parameters:\n      - in: path\n        name: groupId\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesPostableSpanMapper'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesSpanMapper'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create a span mapper\n      tags:\n      - spanmapper\n  /api/v1/span_mapper_groups/{groupId}/span_mappers/{mapperId}:\n    delete:\n      deprecated: false\n      description: Hard-deletes a mapper from a mapping group.\n      operationId: DeleteSpanMapper\n      parameters:\n      - in: path\n        name: groupId\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: mapperId\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete a span mapper\n      tags:\n      - spanmapper\n    patch:\n      deprecated: false\n      description: Partially updates an existing mapper's field context, config, or\n        enabled state.\n      operationId: UpdateSpanMapper\n      parameters:\n      - in: path\n        name: groupId\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: mapperId\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesUpdatableSpanMapper'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update a span mapper\n      tags:\n      - spanmapper\n  /api/v1/span_mapper_groups/test:\n    post:\n      deprecated: false\n      description: Tests how span mappers would transform sample spans\n      operationId: TestSpanMappers\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesPostableSpanMapperTest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesGettableSpanMapperTest'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Test span mappers against sample spans\n      tags:\n      - spanmapper\n  /api/v1/stats:\n    get:\n      deprecated: false\n      description: This endpoint returns the collected stats for the organization\n      operationId: GetStats\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    additionalProperties: {}\n                    type: object\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get stats\n      tags:\n      - stats\n  /api/v1/testChannel:\n    post:\n      deprecated: true\n      description: 'Deprecated: use /api/v1/channels/test instead'\n      operationId: TestChannelDeprecated\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AlertmanagertypesReceiver'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Test notification channel (deprecated)\n      tags:\n      - channels\n  /api/v1/traces/{traceID}/aggregations:\n    post:\n      deprecated: false\n      description: Computes span aggregations grouped by requested field.\n      operationId: GetTraceAggregations\n      parameters:\n      - in: path\n        name: traceID\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesPostableTraceAggregations'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesGettableTraceAggregations'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get aggregations for a trace\n      tags:\n      - tracedetail\n  /api/v1/user/me:\n    get:\n      deprecated: true\n      description: This endpoint is deprecated and always fails. Use GET /api/v2/users/me\n        instead.\n      operationId: GetMyUserDeprecated\n      responses:\n        \"200\":\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - tokenizer: []\n      summary: Get my user\n      tags:\n      - users\n  /api/v1/user/preferences:\n    get:\n      deprecated: false\n      description: This endpoint lists all user preferences\n      operationId: ListUserPreferences\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/PreferencetypesPreference'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List user preferences\n      tags:\n      - preferences\n  /api/v1/user/preferences/{name}:\n    get:\n      deprecated: false\n      description: This endpoint returns the user preference by name\n      operationId: GetUserPreference\n      parameters:\n      - in: path\n        name: name\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/PreferencetypesPreference'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get user preference\n      tags:\n      - preferences\n    put:\n      deprecated: false\n      description: This endpoint updates the user preference by name\n      operationId: UpdateUserPreference\n      parameters:\n      - in: path\n        name: name\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/PreferencetypesUpdatablePreference'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Update user preference\n      tags:\n      - preferences\n  /api/v2/auth_domains:\n    get:\n      deprecated: false\n      description: This endpoint lists all auth domains\n      operationId: ListAuthDomains\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AuthtypesGettableAuthDomain'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: List all auth domains\n      tags:\n      - authdomains\n    post:\n      deprecated: false\n      description: This endpoint creates an auth domain\n      operationId: CreateAuthDomain\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesPostableAuthDomain'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create auth domain\n      tags:\n      - authdomains\n  /api/v2/auth_domains/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes an auth domain\n      operationId: DeleteAuthDomain\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete auth domain\n      tags:\n      - authdomains\n    get:\n      deprecated: false\n      description: This endpoint returns an auth domain by ID\n      operationId: GetAuthDomain\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesGettableAuthDomain'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get auth domain by ID\n      tags:\n      - authdomains\n    put:\n      deprecated: false\n      description: This endpoint updates an auth domain\n      operationId: UpdateAuthDomain\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesUpdatableAuthDomain'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update auth domain\n      tags:\n      - authdomains\n  /api/v2/dashboard_views:\n    get:\n      deprecated: false\n      description: Returns every saved view in the calling user's org. Saved views\n        are shared org-wide.\n      operationId: ListDashboardViews\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesListableDashboardView'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: List dashboard saved views\n      tags:\n      - dashboard\n    post:\n      deprecated: false\n      description: Persists the calling user's dashboard listing state (query, sort,\n        order) as a named, reusable view shared across the org.\n      operationId: CreateDashboardView\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesPostableDashboardView'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesDashboardView'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: Create dashboard saved view\n      tags:\n      - dashboard\n  /api/v2/dashboard_views/{id}:\n    delete:\n      deprecated: false\n      description: Removes a saved view. Saved views are shared org-wide. Deleting\n        a non-existent view returns 404.\n      operationId: DeleteDashboardView\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: Delete dashboard saved view\n      tags:\n      - dashboard\n    put:\n      deprecated: false\n      description: Replaces a saved view's name and data. Saved views are shared org-wide.\n      operationId: UpdateDashboardView\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesPostableDashboardView'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesDashboardView'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: Update dashboard saved view\n      tags:\n      - dashboard\n  /api/v2/dashboards:\n    get:\n      deprecated: false\n      description: Returns a page of v2-shape dashboards for the org. This is the\n        pure, user-independent list — it carries no pin state. Use ListDashboardsForUserV2\n        for the personalized, pin-aware list. Supports a filter DSL (`query`), sort\n        (`updated_at`/`created_at`/`name`), order (`asc`/`desc`), and offset-based\n        pagination (`limit`/`offset`).\n      operationId: ListDashboardsV2\n      parameters:\n      - in: query\n        name: query\n        schema:\n          type: string\n      - in: query\n        name: sort\n        schema:\n          $ref: '#/components/schemas/DashboardtypesListSort'\n      - in: query\n        name: order\n        schema:\n          $ref: '#/components/schemas/DashboardtypesListOrder'\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: offset\n        schema:\n          type: integer\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesListableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: List dashboards (v2)\n      tags:\n      - dashboard\n    post:\n      deprecated: false\n      description: This endpoint creates a dashboard in the v2 format that follows\n        Perses spec.\n      operationId: CreateDashboardV2\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesPostableDashboardV2'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:create\n      - tokenizer:\n        - dashboard:create\n      summary: Create dashboard (v2)\n      tags:\n      - dashboard\n  /api/v2/dashboards/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes a v2-shape dashboard along with its tag relations.\n        Locked dashboards are rejected.\n      operationId: DeleteDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:delete\n      - tokenizer:\n        - dashboard:delete\n      summary: Delete dashboard (v2)\n      tags:\n      - dashboard\n    get:\n      deprecated: false\n      description: This endpoint returns a v2-shape dashboard.\n      operationId: GetDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:read\n      - tokenizer:\n        - dashboard:read\n      summary: Get dashboard (v2)\n      tags:\n      - dashboard\n    patch:\n      deprecated: false\n      description: 'This endpoint applies an RFC 6902 JSON Patch to a v2-shape dashboard.\n        The patch is applied against the postable view of the dashboard (metadata,\n        data, tags), so individual panels, queries, variables, layouts, or tags can\n        be updated without re-sending the rest of the dashboard. Apply is lenient:\n        `remove` on a missing path is a no-op (idempotent) and `add` creates any missing\n        parent objects, rather than failing as strict RFC 6902 would. The resulting\n        dashboard is still validated. Locked dashboards are rejected.'\n      operationId: PatchDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesPatchableDashboardV2'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Patch dashboard (v2)\n      tags:\n      - dashboard\n    put:\n      deprecated: false\n      description: This endpoint updates a v2-shape dashboard's metadata, data, and\n        tag set. Locked dashboards are rejected.\n      operationId: UpdateDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/DashboardtypesUpdatableDashboardV2'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Update dashboard (v2)\n      tags:\n      - dashboard\n  /api/v2/dashboards/{id}/clone:\n    post:\n      deprecated: false\n      description: This endpoint clones an existing v2-shape dashboard. User and integration\n        dashboards can be cloned; system dashboards are rejected. The clone keeps\n        the source's display name, panels, and tags, but gets a freshly generated\n        unique internal name and is always created as an unlocked user dashboard owned\n        by the caller.\n      operationId: CloneDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:read\n        - dashboard:create\n      - tokenizer:\n        - dashboard:read\n        - dashboard:create\n      summary: Clone dashboard (v2)\n      tags:\n      - dashboard\n  /api/v2/dashboards/{id}/lock:\n    delete:\n      deprecated: false\n      description: This endpoint unlocks a v2-shape dashboard. Only the dashboard's\n        creator or an org admin may lock or unlock.\n      operationId: UnlockDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Unlock dashboard (v2)\n      tags:\n      - dashboard\n    put:\n      deprecated: false\n      description: This endpoint locks a v2-shape dashboard. Only the dashboard's\n        creator or an org admin may lock or unlock.\n      operationId: LockDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Lock dashboard (v2)\n      tags:\n      - dashboard\n  /api/v2/dashboards/{id}/migrate:\n    post:\n      deprecated: false\n      description: 'This endpoint retries the v1→v2 (Perses) migration on a dashboard\n        still stored in the v1 schema and returns the v2-shape result. It is idempotent:\n        a dashboard already in the v2 schema is returned unchanged.'\n      operationId: MigrateDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettableDashboardV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:update\n      - tokenizer:\n        - dashboard:update\n      summary: Migrate dashboard to v2\n      tags:\n      - dashboard\n  /api/v2/factor_password/forgot:\n    post:\n      deprecated: false\n      description: This endpoint initiates the forgot password flow by sending a reset\n        password email\n      operationId: ForgotPassword\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesPostableForgotPassword'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"422\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unprocessable Entity\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Forgot password\n      tags:\n      - users\n  /api/v2/factor_password/reset:\n    post:\n      deprecated: false\n      description: This endpoint resets the password using a single use reset password\n        token\n      operationId: ResetPassword\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesPostableResetPassword'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Reset password\n      tags:\n      - users\n  /api/v2/features:\n    get:\n      deprecated: false\n      description: This endpoint returns the supported features and their details\n      operationId: GetFeatures\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/FeaturetypesGettableFeature'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get features\n      tags:\n      - features\n  /api/v2/gateway/ingestion_keys:\n    get:\n      deprecated: false\n      description: This endpoint returns the ingestion keys for a workspace\n      operationId: GetIngestionKeys\n      parameters:\n      - in: query\n        name: page\n        schema:\n          type: integer\n      - in: query\n        name: per_page\n        schema:\n          type: integer\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/GatewaytypesGettableIngestionKeys'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Get ingestion keys for workspace\n      tags:\n      - gateway\n    post:\n      deprecated: false\n      description: This endpoint creates an ingestion key for the workspace\n      operationId: CreateIngestionKey\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/GatewaytypesPostableIngestionKey'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/GatewaytypesGettableCreatedIngestionKey'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Create ingestion key for workspace\n      tags:\n      - gateway\n  /api/v2/gateway/ingestion_keys/{keyId}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes an ingestion key for the workspace\n      operationId: DeleteIngestionKey\n      parameters:\n      - in: path\n        name: keyId\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Delete ingestion key for workspace\n      tags:\n      - gateway\n    patch:\n      deprecated: false\n      description: This endpoint updates an ingestion key for the workspace\n      operationId: UpdateIngestionKey\n      parameters:\n      - in: path\n        name: keyId\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/GatewaytypesPostableIngestionKey'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Update ingestion key for workspace\n      tags:\n      - gateway\n  /api/v2/gateway/ingestion_keys/{keyId}/limits:\n    post:\n      deprecated: false\n      description: This endpoint creates an ingestion key limit\n      operationId: CreateIngestionKeyLimit\n      parameters:\n      - in: path\n        name: keyId\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/GatewaytypesPostableIngestionKeyLimit'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/GatewaytypesGettableCreatedIngestionKeyLimit'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Create limit for the ingestion key\n      tags:\n      - gateway\n  /api/v2/gateway/ingestion_keys/limits/{limitId}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes an ingestion key limit\n      operationId: DeleteIngestionKeyLimit\n      parameters:\n      - in: path\n        name: limitId\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Delete limit for the ingestion key\n      tags:\n      - gateway\n    patch:\n      deprecated: false\n      description: This endpoint updates an ingestion key limit\n      operationId: UpdateIngestionKeyLimit\n      parameters:\n      - in: path\n        name: limitId\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/GatewaytypesUpdatableIngestionKeyLimit'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Update limit for the ingestion key\n      tags:\n      - gateway\n  /api/v2/gateway/ingestion_keys/search:\n    get:\n      deprecated: false\n      description: This endpoint returns the ingestion keys for a workspace\n      operationId: SearchIngestionKeys\n      parameters:\n      - in: query\n        name: name\n        required: true\n        schema:\n          type: string\n      - in: query\n        name: page\n        schema:\n          type: integer\n      - in: query\n        name: per_page\n        schema:\n          type: integer\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/GatewaytypesGettableIngestionKeys'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Search ingestion keys for workspace\n      tags:\n      - gateway\n  /api/v2/healthz:\n    get:\n      operationId: Healthz\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/FactoryResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"503\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/FactoryResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Service Unavailable\n      summary: Health check\n      tags:\n      - health\n  /api/v2/infra_monitoring/checks:\n    get:\n      deprecated: false\n      description: 'Checks whether the metrics and attributes required to power the\n        infra-monitoring section selected by the ''type'' query parameter (hosts,\n        processes, pods, nodes, deployments, daemonsets, statefulsets, jobs, namespaces,\n        clusters, volumes) are being received. For each collector receiver or processor\n        that contributes required metrics or attributes, lists what is present and\n        what is missing, with a prebuilt user-facing message and a docs link per missing\n        component. Default-enabled metrics are those expected as soon as the receiver\n        is configured; optional metrics require ''enabled: true'' in receiver config.\n        ''ready'' is true only when every missing list is empty.'\n      operationId: GetChecks\n      parameters:\n      - in: query\n        name: type\n        required: true\n        schema:\n          $ref: '#/components/schemas/InframonitoringtypesCheckType'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesChecks'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Run Infra Monitoring Setup Checks\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/clusters:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes clusters with key aggregated\n        metrics derived by summing per-node values within the group: CPU usage, CPU\n        allocatable, memory working set, memory allocatable. Each row also reports\n        per-group nodeCountsByReadiness ({ ready, notReady } from each node''s latest\n        k8s.node.condition_ready value) and per-group podCountsByStatus ({ pending,\n        running, failed, unknown, crashLoopBackOff, imagePullBackOff, errImagePull,\n        createContainerConfigError, containerCreating, oomKilled, completed, error,\n        containerCannotRun, evicted, nodeAffinity, nodeLost, shutdown, unexpectedAdmissionError\n        } reflecting each pod''s latest kubectl-style display status). Each cluster\n        includes metadata attributes (k8s.cluster.name). The response type is ''list''\n        for the default k8s.cluster.name grouping or ''grouped_list'' for custom groupBy\n        keys; in both modes every row aggregates nodes and pods in the group. Supports\n        filtering via a filter expression, custom groupBy, ordering by cpu / cpu_allocatable\n        / memory / memory_allocatable, and pagination via offset/limit. Also reports\n        whether the requested time range falls before the data retention boundary.\n        Numeric metric fields (clusterCPU, clusterCPUAllocatable, clusterMemory, clusterMemoryAllocatable)\n        return -1 as a sentinel when no data is available for that field.'\n      operationId: ListClusters\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableClusters'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesClusters'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Clusters for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/daemonsets:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes DaemonSets with key aggregated\n        pod metrics: CPU usage and memory working set summed across pods owned by\n        the daemonset, plus average CPU/memory request and limit utilization (daemonSetCPURequest,\n        daemonSetCPULimit, daemonSetMemoryRequest, daemonSetMemoryLimit). Each row\n        also reports the latest known node-level counters from kube-state-metrics:\n        desiredNodes (k8s.daemonset.desired_scheduled_nodes, the number of nodes the\n        daemonset wants to run on), currentNodes (k8s.daemonset.current_scheduled_nodes,\n        the number of nodes the daemonset currently runs on), readyNodes (k8s.daemonset.ready_nodes,\n        the number of nodes running at least one ready daemon pod) and misscheduledNodes\n        (k8s.daemonset.misscheduled_nodes, the number of nodes running the daemon\n        pod but not supposed to) — note these are node counts, not pod counts. It\n        also reports per-group podCountsByStatus ({ pending, running, failed, unknown,\n        crashLoopBackOff, imagePullBackOff, errImagePull, createContainerConfigError,\n        containerCreating, oomKilled, completed, error, containerCannotRun, evicted,\n        nodeAffinity, nodeLost, shutdown, unexpectedAdmissionError } reflecting each\n        pod''s latest kubectl-style display status). Each daemonset includes metadata\n        attributes (k8s.daemonset.name, k8s.namespace.name, k8s.cluster.name). The\n        response type is ''list'' for the default k8s.daemonset.name grouping or ''grouped_list''\n        for custom groupBy keys; in both modes every row aggregates pods owned by\n        daemonsets in the group. Supports filtering via a filter expression, custom\n        groupBy, ordering by cpu / cpu_request / cpu_limit / memory / memory_request\n        / memory_limit / desired_nodes / current_nodes / ready_nodes / misscheduled_nodes,\n        and pagination via offset/limit. Also reports whether the requested time range\n        falls before the data retention boundary. Numeric metric fields (daemonSetCPU,\n        daemonSetCPURequest, daemonSetCPULimit, daemonSetMemory, daemonSetMemoryRequest,\n        daemonSetMemoryLimit, desiredNodes, currentNodes, readyNodes, misscheduledNodes)\n        return -1 as a sentinel when no data is available for that field.'\n      operationId: ListDaemonSets\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableDaemonSets'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesDaemonSets'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List DaemonSets for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/deployments:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes Deployments with key aggregated\n        pod metrics: CPU usage and memory working set summed across pods owned by\n        the deployment, plus average CPU/memory request and limit utilization (deploymentCPURequest,\n        deploymentCPULimit, deploymentMemoryRequest, deploymentMemoryLimit). Each\n        row also reports the latest known desiredPods (k8s.deployment.desired) and\n        availablePods (k8s.deployment.available) replica counts and per-group podCountsByStatus\n        ({ pending, running, failed, unknown, crashLoopBackOff, imagePullBackOff,\n        errImagePull, createContainerConfigError, containerCreating, oomKilled, completed,\n        error, containerCannotRun, evicted, nodeAffinity, nodeLost, shutdown, unexpectedAdmissionError\n        } reflecting each pod''s latest kubectl-style display status). Each deployment\n        includes metadata attributes (k8s.deployment.name, k8s.namespace.name, k8s.cluster.name).\n        The response type is ''list'' for the default k8s.deployment.name grouping\n        or ''grouped_list'' for custom groupBy keys; in both modes every row aggregates\n        pods owned by deployments in the group. Supports filtering via a filter expression,\n        custom groupBy, ordering by cpu / cpu_request / cpu_limit / memory / memory_request\n        / memory_limit / desired_pods / available_pods, and pagination via offset/limit.\n        Also reports whether the requested time range falls before the data retention\n        boundary. Numeric metric fields (deploymentCPU, deploymentCPURequest, deploymentCPULimit,\n        deploymentMemory, deploymentMemoryRequest, deploymentMemoryLimit, desiredPods,\n        availablePods) return -1 as a sentinel when no data is available for that\n        field.'\n      operationId: ListDeployments\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableDeployments'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesDeployments'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Deployments for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/hosts:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of hosts with key infrastructure metrics:\n        CPU usage (%), memory usage (%), I/O wait (%), disk usage (%), and 15-minute\n        load average. Each host includes its current status (active/inactive based\n        on metrics reported in the last 10 minutes) and metadata attributes (e.g.,\n        os.type). Supports filtering via a filter expression, filtering by host status,\n        custom groupBy to aggregate hosts by any attribute, ordering by any of the\n        five metrics, and pagination via offset/limit. The response type is ''list''\n        for the default host.name grouping or ''grouped_list'' for custom groupBy\n        keys. Also reports whether the requested time range falls before the data\n        retention boundary. Numeric metric fields (cpu, memory, wait, load15, diskUsage)\n        return -1 as a sentinel when no data is available for that field.'\n      operationId: ListHosts\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableHosts'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesHosts'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Hosts for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/jobs:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes Jobs with key aggregated\n        pod metrics: CPU usage and memory working set summed across pods owned by\n        the job, plus average CPU/memory request and limit utilization (jobCPURequest,\n        jobCPULimit, jobMemoryRequest, jobMemoryLimit). Each row also reports the\n        latest known job-level counters from kube-state-metrics: desiredSuccessfulPods\n        (k8s.job.desired_successful_pods, the target completion count), activePods\n        (k8s.job.active_pods), failedPods (k8s.job.failed_pods, cumulative across\n        the lifetime of the job), and successfulPods (k8s.job.successful_pods, cumulative).\n        It also reports per-group podCountsByStatus ({ pending, running, failed, unknown,\n        crashLoopBackOff, imagePullBackOff, errImagePull, createContainerConfigError,\n        containerCreating, oomKilled, completed, error, containerCannotRun, evicted,\n        nodeAffinity, nodeLost, shutdown, unexpectedAdmissionError } reflecting each\n        pod''s latest kubectl-style display status); note podCountsByStatus.failed\n        (current pod status) is distinct from failedPods (cumulative job kube-state-metric).\n        Each job includes metadata attributes (k8s.job.name, k8s.namespace.name, k8s.cluster.name).\n        The response type is ''list'' for the default k8s.job.name grouping or ''grouped_list''\n        for custom groupBy keys; in both modes every row aggregates pods owned by\n        jobs in the group. Supports filtering via a filter expression, custom groupBy,\n        ordering by cpu / cpu_request / cpu_limit / memory / memory_request / memory_limit\n        / desired_successful_pods / active_pods / failed_pods / successful_pods, and\n        pagination via offset/limit. Also reports whether the requested time range\n        falls before the data retention boundary. Numeric metric fields (jobCPU, jobCPURequest,\n        jobCPULimit, jobMemory, jobMemoryRequest, jobMemoryLimit, desiredSuccessfulPods,\n        activePods, failedPods, successfulPods) return -1 as a sentinel when no data\n        is available for that field.'\n      operationId: ListJobs\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableJobs'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesJobs'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Jobs for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/kube_containers:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes containers with key kubeletstats\n        metrics: CPU usage (cores), CPU request/limit utilization, memory working\n        set, and memory request/limit utilization. Each container also reports health\n        signals from the k8s_cluster receiver: status (kubectl-style display status\n        derived from k8s.container.status.state + k8s.container.status.reason), restarts\n        (absolute count from k8s.container.restarts), and ready (ready/not_ready from\n        k8s.container.ready). The row identity is (k8s.pod.uid, k8s.container.name),\n        stable across container restarts. Each container includes metadata attributes\n        (k8s.container.name, k8s.pod.name, container.image.name, container.image.tag,\n        k8s.namespace.name, k8s.node.name, k8s.cluster.name, and workload owner such\n        as deployment/statefulset/daemonset/job). The response type is ''list'' for\n        the default (k8s.pod.uid, k8s.container.name) grouping (each row is one container\n        with its current status and ready state) or ''grouped_list'' for custom groupBy\n        keys (each row aggregates containers in the group with per-status counts under\n        containerCountsByStatus, per-readiness counts under containerCountsByReady,\n        and restarts as the group sum). Status requires the optional k8s.container.status.state\n        and k8s.container.status.reason metrics; when either is missing, status is\n        omitted and a warning is returned while restarts and ready are still computed.\n        Supports filtering via a filter expression, custom groupBy, ordering by any\n        of the six metrics (cpu, cpu_request, cpu_limit, memory, memory_request, memory_limit),\n        and pagination via offset/limit. Also reports whether the requested time range\n        falls before the data retention boundary. Numeric metric fields (cpu, cpuRequestUtilization,\n        cpuLimitUtilization, memory, memoryRequestUtilization, memoryLimitUtilization)\n        and restarts return -1 as a sentinel when no data is available for that field.'\n      operationId: ListContainers\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableContainers'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesContainers'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Kubernetes Containers for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/namespaces:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes namespaces with key aggregated\n        pod metrics: CPU usage and memory working set (summed across pods in the group),\n        plus per-group podCountsByStatus ({ pending, running, failed, unknown, crashLoopBackOff,\n        imagePullBackOff, errImagePull, createContainerConfigError, containerCreating,\n        oomKilled, completed, error, containerCannotRun, evicted, nodeAffinity, nodeLost,\n        shutdown, unexpectedAdmissionError } reflecting each pod''s latest kubectl-style\n        display status in the window). Each namespace includes metadata attributes\n        (k8s.namespace.name, k8s.cluster.name). The response type is ''list'' for\n        the default k8s.namespace.name grouping or ''grouped_list'' for custom groupBy\n        keys; in both modes every row aggregates pods in the group. Supports filtering\n        via a filter expression, custom groupBy, ordering by cpu / memory, and pagination\n        via offset/limit. Also reports whether the requested time range falls before\n        the data retention boundary. Numeric metric fields (namespaceCPU, namespaceMemory)\n        return -1 as a sentinel when no data is available for that field.'\n      operationId: ListNamespaces\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableNamespaces'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesNamespaces'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Namespaces for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/nodes:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes nodes with key metrics:\n        CPU usage, CPU allocatable, memory working set, memory allocatable, per-group\n        nodeCountsByReadiness ({ ready, notReady } from each node''s latest k8s.node.condition_ready\n        in the window) and per-group podCountsByStatus ({ pending, running, failed,\n        unknown, crashLoopBackOff, imagePullBackOff, errImagePull, createContainerConfigError,\n        containerCreating, oomKilled, completed, error, containerCannotRun, evicted,\n        nodeAffinity, nodeLost, shutdown, unexpectedAdmissionError } for pods scheduled\n        on the listed nodes, reflecting each pod''s latest kubectl-style display status).\n        Each node includes metadata attributes (k8s.node.uid, k8s.cluster.name). The\n        response type is ''list'' for the default k8s.node.name grouping (each row\n        is one node with its current condition string: ready / not_ready / no_data)\n        or ''grouped_list'' for custom groupBy keys (each row aggregates nodes in\n        the group; condition stays no_data). Supports filtering via a filter expression,\n        custom groupBy, ordering by cpu / cpu_allocatable / memory / memory_allocatable,\n        and pagination via offset/limit. Also reports whether the requested time range\n        falls before the data retention boundary. Numeric metric fields (nodeCPU,\n        nodeCPUAllocatable, nodeMemory, nodeMemoryAllocatable) return -1 as a sentinel\n        when no data is available for that field.'\n      operationId: ListNodes\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableNodes'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesNodes'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Nodes for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/pods:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes pods with key metrics:\n        CPU usage, CPU request/limit utilization, memory working set, memory request/limit\n        utilization, current pod status (kubectl-style display status such as Running/Pending/CrashLoopBackOff,\n        or no_data), and pod age (ms since start time). Each pod includes metadata\n        attributes (namespace, node, workload owner such as deployment/statefulset/daemonset/job/cronjob,\n        cluster). Supports filtering via a filter expression, custom groupBy to aggregate\n        pods by any attribute, ordering by any of the six metrics (cpu, cpu_request,\n        cpu_limit, memory, memory_request, memory_limit), and pagination via offset/limit.\n        The response type is ''list'' for the default k8s.pod.uid grouping (each row\n        is one pod with its current status) or ''grouped_list'' for custom groupBy\n        keys (each row aggregates pods in the group with per-status counts under podCountsByStatus:\n        { pending, running, failed, unknown, crashLoopBackOff, imagePullBackOff, errImagePull,\n        createContainerConfigError, containerCreating, oomKilled, completed, error,\n        containerCannotRun, evicted, nodeAffinity, nodeLost, shutdown, unexpectedAdmissionError\n        } derived from each pod''s latest kubectl-style display status in the window).\n        Also reports whether the requested time range falls before the data retention\n        boundary. Numeric metric fields (podCPU, podCPURequest, podCPULimit, podMemory,\n        podMemoryRequest, podMemoryLimit, podAge) return -1 as a sentinel when no\n        data is available for that field.'\n      operationId: ListPods\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostablePods'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesPods'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Pods for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/pvcs:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes persistent volume claims\n        (PVCs) with key volume metrics: available bytes, capacity bytes, usage (capacity\n        - available), inodes, free inodes, and used inodes. Each row also includes\n        metadata attributes (k8s.persistentvolumeclaim.name, k8s.pod.uid, k8s.pod.name,\n        k8s.namespace.name, k8s.node.name, k8s.statefulset.name, k8s.cluster.name).\n        Supports filtering via a filter expression, custom groupBy to aggregate volumes\n        by any attribute, ordering by any of the six metrics (available, capacity,\n        usage, inodes, inodes_free, inodes_used), and pagination via offset/limit.\n        The response type is ''list'' for the default k8s.persistentvolumeclaim.name\n        grouping or ''grouped_list'' for custom groupBy keys; in both modes every\n        row aggregates volumes in the group. Also reports whether the requested time\n        range falls before the data retention boundary. Numeric metric fields (volumeAvailable,\n        volumeCapacity, volumeUsage, volumeInodes, volumeInodesFree, volumeInodesUsed)\n        return -1 as a sentinel when no data is available for that field.'\n      operationId: ListVolumes\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableVolumes'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesVolumes'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List Volumes for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/infra_monitoring/statefulsets:\n    post:\n      deprecated: false\n      description: 'Returns a paginated list of Kubernetes StatefulSets with key aggregated\n        pod metrics: CPU usage and memory working set summed across pods owned by\n        the statefulset, plus average CPU/memory request and limit utilization (statefulSetCPURequest,\n        statefulSetCPULimit, statefulSetMemoryRequest, statefulSetMemoryLimit). Each\n        row also reports the latest known desiredPods (k8s.statefulset.desired_pods)\n        and currentPods (k8s.statefulset.current_pods) replica counts and per-group\n        podCountsByStatus ({ pending, running, failed, unknown, crashLoopBackOff,\n        imagePullBackOff, errImagePull, createContainerConfigError, containerCreating,\n        oomKilled, completed, error, containerCannotRun, evicted, nodeAffinity, nodeLost,\n        shutdown, unexpectedAdmissionError } reflecting each pod''s latest kubectl-style\n        display status). Each statefulset includes metadata attributes (k8s.statefulset.name,\n        k8s.namespace.name, k8s.cluster.name). The response type is ''list'' for the\n        default k8s.statefulset.name grouping or ''grouped_list'' for custom groupBy\n        keys; in both modes every row aggregates pods owned by statefulsets in the\n        group. Supports filtering via a filter expression, custom groupBy, ordering\n        by cpu / cpu_request / cpu_limit / memory / memory_request / memory_limit\n        / desired_pods / current_pods, and pagination via offset/limit. Also reports\n        whether the requested time range falls before the data retention boundary.\n        Numeric metric fields (statefulSetCPU, statefulSetCPURequest, statefulSetCPULimit,\n        statefulSetMemory, statefulSetMemoryRequest, statefulSetMemoryLimit, desiredPods,\n        currentPods) return -1 as a sentinel when no data is available for that field.'\n      operationId: ListStatefulSets\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/InframonitoringtypesPostableStatefulSets'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/InframonitoringtypesStatefulSets'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List StatefulSets for Infra Monitoring\n      tags:\n      - inframonitoring\n  /api/v2/livez:\n    get:\n      deprecated: false\n      description: \"\"\n      operationId: Livez\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/FactoryResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Liveness check\n      tags:\n      - health\n  /api/v2/metric_reduction_rules:\n    get:\n      deprecated: false\n      description: Returns active metric volume-control (label reduction) rules.\n      operationId: ListMetricReductionRules\n      parameters:\n      - in: query\n        name: orderBy\n        schema:\n          $ref: '#/components/schemas/MetricreductionruletypesReductionRuleOrderBy'\n      - in: query\n        name: order\n        schema:\n          $ref: '#/components/schemas/MetricreductionruletypesOrder'\n      - in: query\n        name: search\n        schema:\n          type: string\n      - in: query\n        name: metricName\n        schema:\n          type: string\n      - in: query\n        name: offset\n        schema:\n          type: integer\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRules'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List metric reduction rules\n      tags:\n      - metrics\n    post:\n      deprecated: false\n      description: Creates a volume-control rule for a metric and returns it with\n        its id; fails if the metric already has a rule.\n      operationId: CreateMetricReductionRule\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricreductionruletypesPostableReductionRule'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create a metric reduction rule\n      tags:\n      - metrics\n  /api/v2/metric_reduction_rules/{id}:\n    delete:\n      deprecated: false\n      description: Deletes a volume-control rule by its id.\n      operationId: DeleteMetricReductionRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete a metric reduction rule by id\n      tags:\n      - metrics\n    get:\n      deprecated: false\n      description: Returns a single volume-control rule by its id.\n      operationId: GetMetricReductionRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get a metric reduction rule by id\n      tags:\n      - metrics\n    put:\n      deprecated: false\n      description: Updates the match type and labels of a volume-control rule by its\n        id; the metric name is immutable.\n      operationId: UpdateMetricReductionRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricreductionruletypesUpdatableReductionRule'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update a metric reduction rule by id\n      tags:\n      - metrics\n  /api/v2/metric_reduction_rules/preview:\n    post:\n      deprecated: false\n      description: Estimates the series reduction and related-asset impact of a candidate\n        volume-control rule without persisting it.\n      operationId: PreviewMetricReductionRule\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricreductionruletypesPostableReductionRulePreview'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRulePreview'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Preview a metric reduction rule\n      tags:\n      - metrics\n  /api/v2/metric_reduction_rules/stats:\n    get:\n      deprecated: false\n      description: Returns total ingested vs retained series and the estimated monthly\n        savings across all volume-control rules.\n      operationId: GetMetricReductionRuleStats\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricreductionruletypesGettableReductionRuleStats'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Metric reduction stats\n      tags:\n      - metrics\n  /api/v2/metric_reduction_rules/timeseries:\n    get:\n      deprecated: false\n      description: Returns ingested vs retained series over time across all volume-control\n        rules (hourly buckets), in the query-range time-series response shape.\n      operationId: GetMetricReductionRuleTimeseries\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/Querybuildertypesv5QueryRangeResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"451\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unavailable For Legal Reasons\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n        \"501\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Implemented\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Metric reduction volume over time\n      tags:\n      - metrics\n  /api/v2/metrics:\n    get:\n      deprecated: false\n      description: This endpoint returns a list of distinct metric names within the\n        specified time range\n      operationId: ListMetrics\n      parameters:\n      - in: query\n        name: start\n        schema:\n          nullable: true\n          type: integer\n      - in: query\n        name: end\n        schema:\n          nullable: true\n          type: integer\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: searchText\n        schema:\n          type: string\n      - in: query\n        name: source\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesListMetricsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List metric names\n      tags:\n      - metrics\n  /api/v2/metrics/alerts:\n    get:\n      deprecated: false\n      description: This endpoint returns associated alerts for a specified metric\n      operationId: GetMetricAlerts\n      parameters:\n      - description: The name of the metric. May contain slashes (e.g. cloud-provider\n          metrics like run.googleapis.com/request_latencies).\n        in: query\n        name: metricName\n        required: true\n        schema:\n          description: The name of the metric. May contain slashes (e.g. cloud-provider\n            metrics like run.googleapis.com/request_latencies).\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricAlertsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metric alerts\n      tags:\n      - metrics\n  /api/v2/metrics/attributes:\n    get:\n      deprecated: false\n      description: This endpoint returns attribute keys and their unique values for\n        a specified metric\n      operationId: GetMetricAttributes\n      parameters:\n      - description: The name of the metric. May contain slashes (e.g. cloud-provider\n          metrics like run.googleapis.com/request_latencies).\n        in: query\n        name: metricName\n        required: true\n        schema:\n          description: The name of the metric. May contain slashes (e.g. cloud-provider\n            metrics like run.googleapis.com/request_latencies).\n          type: string\n      - description: Start of the time range as a Unix timestamp in milliseconds.\n        in: query\n        name: start\n        schema:\n          description: Start of the time range as a Unix timestamp in milliseconds.\n          nullable: true\n          type: integer\n      - description: End of the time range as a Unix timestamp in milliseconds.\n        in: query\n        name: end\n        schema:\n          description: End of the time range as a Unix timestamp in milliseconds.\n          nullable: true\n          type: integer\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricAttributesResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metric attributes\n      tags:\n      - metrics\n  /api/v2/metrics/dashboards:\n    get:\n      deprecated: false\n      description: This endpoint returns associated dashboards for a specified metric\n      operationId: GetMetricDashboards\n      parameters:\n      - description: The name of the metric. May contain slashes (e.g. cloud-provider\n          metrics like run.googleapis.com/request_latencies).\n        in: query\n        name: metricName\n        required: true\n        schema:\n          description: The name of the metric. May contain slashes (e.g. cloud-provider\n            metrics like run.googleapis.com/request_latencies).\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricDashboardsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metric dashboards\n      tags:\n      - metrics\n  /api/v2/metrics/highlights:\n    get:\n      deprecated: false\n      description: This endpoint returns highlights like number of datapoints, totaltimeseries,\n        active time series, last received time for a specified metric\n      operationId: GetMetricHighlights\n      parameters:\n      - description: The name of the metric. May contain slashes (e.g. cloud-provider\n          metrics like run.googleapis.com/request_latencies).\n        in: query\n        name: metricName\n        required: true\n        schema:\n          description: The name of the metric. May contain slashes (e.g. cloud-provider\n            metrics like run.googleapis.com/request_latencies).\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricHighlightsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metric highlights\n      tags:\n      - metrics\n  /api/v2/metrics/inspect:\n    post:\n      deprecated: false\n      description: Returns raw time series data points for a metric within a time\n        range (max 30 minutes). Each series includes labels and timestamp/value pairs.\n      operationId: InspectMetrics\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricsexplorertypesInspectMetricsRequest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesInspectMetricsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Inspect raw metric data points\n      tags:\n      - metrics\n  /api/v2/metrics/metadata:\n    get:\n      deprecated: false\n      description: This endpoint returns metadata information like metric description,\n        unit, type, temporality, monotonicity for a specified metric\n      operationId: GetMetricMetadata\n      parameters:\n      - description: The name of the metric. May contain slashes (e.g. cloud-provider\n          metrics like run.googleapis.com/request_latencies).\n        in: query\n        name: metricName\n        required: true\n        schema:\n          description: The name of the metric. May contain slashes (e.g. cloud-provider\n            metrics like run.googleapis.com/request_latencies).\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricMetadata'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metric metadata\n      tags:\n      - metrics\n    post:\n      deprecated: false\n      description: This endpoint helps to update metadata information like metric\n        description, unit, type, temporality, monotonicity for a specified metric\n      operationId: UpdateMetricMetadata\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricsexplorertypesUpdateMetricMetadataRequest'\n      responses:\n        \"200\":\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Update metric metadata\n      tags:\n      - metrics\n  /api/v2/metrics/onboarding:\n    get:\n      deprecated: false\n      description: Lightweight endpoint that checks if any non-SigNoz metrics have\n        been ingested, used for onboarding status detection\n      operationId: GetMetricsOnboardingStatus\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricsOnboardingResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Check if non-SigNoz metrics have been received\n      tags:\n      - metrics\n  /api/v2/metrics/stats:\n    post:\n      deprecated: false\n      description: This endpoint provides list of metrics with their number of samples\n        and timeseries for the given time range\n      operationId: GetMetricsStats\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricsexplorertypesStatsRequest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesStatsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metrics statistics\n      tags:\n      - metrics\n  /api/v2/metrics/treemap:\n    post:\n      deprecated: false\n      description: This endpoint returns a treemap visualization showing the proportional\n        distribution of metrics by sample count or time series count\n      operationId: GetMetricsTreemap\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/MetricsexplorertypesTreemapRequest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesTreemapResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metrics treemap\n      tags:\n      - metrics\n  /api/v2/orgs/me:\n    get:\n      deprecated: false\n      description: This endpoint returns the organization I belong to\n      operationId: GetMyOrganization\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesOrganization'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get my organization\n      tags:\n      - orgs\n    put:\n      deprecated: false\n      description: This endpoint updates the organization I belong to\n      operationId: UpdateMyOrganization\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesOrganization'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update my organization\n      tags:\n      - orgs\n  /api/v2/public/dashboards/{id}:\n    get:\n      deprecated: false\n      description: This endpoint returns the sanitized v2-shape dashboard data for\n        public access. Each panel query is reduced to a safe field subset, so filters\n        and raw query strings are not exposed.\n      operationId: GetPublicDashboardDataV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesGettablePublicDashboardDataV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - anonymous:\n        - public-dashboard:read\n      summary: Get public dashboard data (v2)\n      tags:\n      - dashboard\n  /api/v2/public/dashboards/{id}/panels/{key}/query_range:\n    get:\n      deprecated: false\n      description: This endpoint returns query range results for a panel of a v2-shape\n        public dashboard. The panel is addressed by its key in spec.panels.\n      operationId: GetPublicDashboardPanelQueryRangeV2\n      parameters:\n      - in: query\n        name: startTime\n        required: false\n        schema:\n          type: string\n      - in: query\n        name: endTime\n        required: false\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      - in: path\n        name: key\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/Querybuildertypesv5QueryRangeResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - anonymous:\n        - public-dashboard:read\n      summary: Get query range result (v2)\n      tags:\n      - dashboard\n  /api/v2/readyz:\n    get:\n      operationId: Readyz\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/FactoryResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"503\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/FactoryResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Service Unavailable\n      summary: Readiness check\n      tags:\n      - health\n  /api/v2/reset_password_tokens/verify:\n    post:\n      deprecated: false\n      description: This endpoint verifies whether a reset password token exists and\n        is not expired\n      operationId: VerifyResetPasswordToken\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesPostableVerifyResetPasswordToken'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Verify a reset password token\n      tags:\n      - users\n  /api/v2/roles/{id}/users:\n    get:\n      deprecated: false\n      description: This endpoint returns the users having the role by role id\n      operationId: GetUsersByRoleID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/TypesUser'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get users by role id\n      tags:\n      - users\n  /api/v2/rules:\n    get:\n      deprecated: false\n      description: This endpoint lists all alert rules with their current evaluation\n        state\n      operationId: ListRules\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/RuletypesRule'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: List alert rules\n      tags:\n      - rules\n    post:\n      deprecated: false\n      description: This endpoint creates a new alert rule\n      operationId: CreateRule\n      requestBody:\n        content:\n          application/json:\n            examples:\n              logs_error_rate_formula:\n                description: Two disabled log count queries (A = errors, B = total)\n                  combined via a builder_formula into a percentage. Classic service-level\n                  error-rate alert pattern for log-based signals.\n                summary: Logs error rate error count / total count × 100\n                value:\n                  alert: Payments-api error log rate above 1%\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: Error log rate in {{$deployment.environment}} is\n                      {{$value}}%\n                    summary: Payments-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              IN ['ERROR', 'FATAL']\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{deployment.environment}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Error log ratio as a percentage of total logs for payments-api\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              logs_threshold:\n                description: Counts matching log records (ERROR severity + body contains)\n                  over a rolling window. Fires at least once per evaluation when the\n                  count exceeds zero.\n                summary: Logs threshold count() over filter\n                value:\n                  alert: Payments service panic logs\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: '{{$k8s.pod.name}} emitted {{$value}} panic log(s)\n                      in {{$deployment.environment}}.'\n                    summary: Payments service panic\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              = 'ERROR' AND body CONTAINS 'panic'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        - pagerduty-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 0\n                  description: Any panic log line emitted by the payments service\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_anomaly:\n                description: Anomaly rules are not yet supported under schemaVersion\n                  v2alpha1, so this example uses the v1 shape. Wraps a builder query\n                  in the `anomaly` function with daily seasonality SigNoz compares\n                  each point against the forecast for that time of day. Fires when\n                  the anomaly score stays below the threshold for the entire window;\n                  `requireMinPoints` guards against noisy intervals.\n                summary: Metric anomaly rule (v1 only)\n                value:\n                  alert: Anomalous drop in ingested spans\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Ingestion rate for tenant {{$tenant_id}} is anomalously\n                      low (z-score {{$value}}).\n                    summary: Span ingestion anomaly\n                  condition:\n                    algorithm: standard\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: otelcol_receiver_accepted_spans\n                            spaceAggregation: sum\n                            timeAggregation: rate\n                          filter:\n                            expression: tenant_tier = 'premium'\n                          functions:\n                          - args:\n                            - name: z_score_threshold\n                              value: 2\n                            name: anomaly\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: tenant_id\n                          legend: '{{tenant_id}}'\n                          name: A\n                          signal: metrics\n                          stepInterval: 21600\n                        type: builder_query\n                      queryType: builder\n                    matchType: all_the_times\n                    op: below\n                    requireMinPoints: true\n                    requiredNumPoints: 3\n                    seasonality: daily\n                    selectedQueryName: A\n                    target: 2\n                  description: Detect an abrupt drop in span ingestion using a z-score\n                    anomaly function\n                  evalWindow: 24h\n                  frequency: 3h\n                  labels:\n                    severity: warning\n                  preferredChannels:\n                  - slack-ingestion\n                  ruleType: anomaly_rule\n                  version: v5\n              metric_promql:\n                description: PromQL expression instead of the builder. Dotted OTEL\n                  resource attributes are quoted (\"deployment.environment\"). Useful\n                  for queries that combine series with group_right or other Prom operators.\n                summary: Metric threshold PromQL rule\n                value:\n                  alert: Kafka consumer group lag above 1000\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer group {{$group}} is {{$value}} messages\n                      behind on {{$topic}}/{{$partition}}.\n                    summary: Kafka consumer lag high\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          legend: '{{topic}}/{{partition}} ({{group}})'\n                          name: A\n                          query: (max by(topic, partition, \"deployment.environment\")(kafka_log_end_offset)\n                            - on(topic, partition, \"deployment.environment\") group_right\n                            max by(group, topic, partition, \"deployment.environment\")(kafka_consumer_committed_offset))\n                            > 0\n                        type: promql\n                      queryType: promql\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-data-platform\n                        - pagerduty-data\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 1000\n                  description: Consumer group lag computed via PromQL\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 10m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - group\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 1h\n                  ruleType: promql_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_formula:\n                description: Computes disk utilization as (1 - available/capacity)\n                  * 100 by combining two disabled base queries with a builder_formula.\n                  The formula emits 0–100, so compositeQuery.unit is set to \"percent\"\n                  and the target is a bare number.\n                summary: Metric threshold multi-query formula\n                value:\n                  alert: PersistentVolume above 80% utilization\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Volume {{$k8s.persistentvolumeclaim.name}} in {{$k8s.namespace.name}}\n                      is {{$value}}% full.\n                    summary: Disk utilization above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.available\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.capacity\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (1 - A/B) * 100\n                          legend: '{{k8s.persistentvolumeclaim.name}} ({{k8s.namespace.name}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-storage\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 80\n                  description: Disk utilization for a persistent volume is above 80%\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 30m\n                      frequency: 5m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - k8s.namespace.name\n                    - k8s.persistentvolumeclaim.name\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 2h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_single:\n                description: Fires when a pod consumes more than 80% of its requested\n                  CPU for the whole evaluation window. Uses `k8s.pod.cpu_request_utilization`.\n                summary: Metric threshold single builder query\n                value:\n                  alert: Pod CPU above 80% of request\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Pod {{$k8s.pod.name}} CPU is at {{$value}} of request\n                      in {{$deployment.environment}}.\n                    summary: Pod CPU above {{$threshold}} of request\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.pod.cpu_request_utilization\n                            spaceAggregation: max\n                            timeAggregation: avg\n                          filter:\n                            expression: k8s.deployment.name = 'api-service'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: percentunit\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-platform\n                        - pagerduty-oncall\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 0.8\n                  description: CPU usage for api-service pods exceeds 80% of the requested\n                    CPU\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 15m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 4h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              notification_settings:\n                description: 'Demonstrates the full notificationSettings surface:\n                  `groupBy` merges alerts across labels to cut noise, `newGroupEvalDelay`\n                  gives newly-appearing series a grace period before firing, `renotify`\n                  re-alerts every 30m while firing OR while the alert is in nodata\n                  (missing data is treated as actionable), and `usePolicy: false`\n                  means channels come from the threshold entries rather than global\n                  routing policies. Set `usePolicy: true` to skip per-threshold channels\n                  and route via the org-level notification policy instead.'\n                summary: Full notification settings (grouping, nodata renotify, grace\n                  period)\n                value:\n                  alert: API 5xx error rate above 1%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: '{{$service.name}} 5xx rate in {{$deployment.environment}}\n                      is {{$value}}%.'\n                    summary: API service error rate elevated\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api' AND http.status_code\n                              >= 500\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} ({{deployment.environment}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-api-alerts\n                        - pagerduty-oncall\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Noise-controlled 5xx error rate alert with renotify\n                    on gaps\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - deployment.environment\n                    newGroupEvalDelay: 2m\n                    renotify:\n                      alertStates:\n                      - firing\n                      - nodata\n                      enabled: true\n                      interval: 30m\n                    usePolicy: false\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              tiered_thresholds:\n                description: Two tiers (warning and critical) in a single rule, each\n                  with its own target, op, matchType, and channels so warnings and\n                  pages route to different receivers. `alertOnAbsent` + `absentFor`\n                  fires a no-data alert when the query returns no series for 15 consecutive\n                  evaluations.\n                summary: Tiered thresholds with per-tier channels\n                value:\n                  alert: Kafka consumer lag warn / critical\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer lag for {{$topic}} partition {{$partition}}\n                      is {{$value}}.\n                    summary: Kafka consumer lag\n                  condition:\n                    absentFor: 15\n                    alertOnAbsent: true\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_log_end_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_consumer_committed_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: A - B\n                          legend: '{{topic}}/{{partition}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-kafka-info\n                        matchType: all_the_times\n                        name: warning\n                        op: above\n                        target: 50\n                      - channels:\n                        - slack-kafka-alerts\n                        - pagerduty-kafka\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 200\n                  description: Warn at lag ≥ 50 and page at ≥ 200, tiered via thresholds.spec.\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: data-platform\n                  notificationSettings:\n                    groupBy:\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_error_rate_formula:\n                description: Two disabled trace count queries (A = error spans where\n                  hasError=true, B = total spans) combined via a builder_formula into\n                  a percentage. Mirrors the common request-error-rate dashboard shape.\n                summary: Traces error rate error spans / total spans × 100\n                value:\n                  alert: Search-api error rate above 5%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: Error rate on {{$service.name}} {{$http.route}} is\n                      {{$value}}%\n                    summary: Search-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api' AND hasError =\n                              true\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} {{http.route}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        - pagerduty-search\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 5\n                  description: Request error rate for search-api, grouped by route\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_threshold_latency:\n                description: Builder query against the traces signal with p99(duration_nano).\n                  The series unit is ns (compositeQuery.unit), the target is in seconds\n                  (threshold.targetUnit) SigNoz converts before comparing. Canonical\n                  shape when series and target live in different units.\n                summary: Traces threshold p99 latency (ns → s conversion)\n                value:\n                  alert: Search API p99 latency above 5s\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: p99 latency for {{$service.name}} on {{$http.route}}\n                      crossed {{$threshold}}s.\n                    summary: Search-api latency degraded\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: p99(duration_nano)\n                          filter:\n                            expression: service.name = 'search-api' AND name = 'GET\n                              /api/v1/search'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          legend: '{{service.name}} {{http.route}}'\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: ns\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        matchType: at_least_once\n                        name: warning\n                        op: above\n                        target: 5\n                        targetUnit: s\n                  description: p99 duration of the search endpoint exceeds 5s\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: warning\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n            schema:\n              $ref: '#/components/schemas/RuletypesPostableRule'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/RuletypesRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Create alert rule\n      tags:\n      - rules\n  /api/v2/rules/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes an alert rule by ID\n      operationId: DeleteRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Delete alert rule\n      tags:\n      - rules\n    get:\n      deprecated: false\n      description: This endpoint returns an alert rule by ID\n      operationId: GetRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/RuletypesRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get alert rule by ID\n      tags:\n      - rules\n    patch:\n      deprecated: false\n      description: This endpoint applies a partial update to an alert rule by ID\n      operationId: PatchRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            examples:\n              logs_error_rate_formula:\n                description: Two disabled log count queries (A = errors, B = total)\n                  combined via a builder_formula into a percentage. Classic service-level\n                  error-rate alert pattern for log-based signals.\n                summary: Logs error rate error count / total count × 100\n                value:\n                  alert: Payments-api error log rate above 1%\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: Error log rate in {{$deployment.environment}} is\n                      {{$value}}%\n                    summary: Payments-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              IN ['ERROR', 'FATAL']\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{deployment.environment}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Error log ratio as a percentage of total logs for payments-api\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              logs_threshold:\n                description: Counts matching log records (ERROR severity + body contains)\n                  over a rolling window. Fires at least once per evaluation when the\n                  count exceeds zero.\n                summary: Logs threshold count() over filter\n                value:\n                  alert: Payments service panic logs\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: '{{$k8s.pod.name}} emitted {{$value}} panic log(s)\n                      in {{$deployment.environment}}.'\n                    summary: Payments service panic\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              = 'ERROR' AND body CONTAINS 'panic'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        - pagerduty-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 0\n                  description: Any panic log line emitted by the payments service\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_anomaly:\n                description: Anomaly rules are not yet supported under schemaVersion\n                  v2alpha1, so this example uses the v1 shape. Wraps a builder query\n                  in the `anomaly` function with daily seasonality SigNoz compares\n                  each point against the forecast for that time of day. Fires when\n                  the anomaly score stays below the threshold for the entire window;\n                  `requireMinPoints` guards against noisy intervals.\n                summary: Metric anomaly rule (v1 only)\n                value:\n                  alert: Anomalous drop in ingested spans\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Ingestion rate for tenant {{$tenant_id}} is anomalously\n                      low (z-score {{$value}}).\n                    summary: Span ingestion anomaly\n                  condition:\n                    algorithm: standard\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: otelcol_receiver_accepted_spans\n                            spaceAggregation: sum\n                            timeAggregation: rate\n                          filter:\n                            expression: tenant_tier = 'premium'\n                          functions:\n                          - args:\n                            - name: z_score_threshold\n                              value: 2\n                            name: anomaly\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: tenant_id\n                          legend: '{{tenant_id}}'\n                          name: A\n                          signal: metrics\n                          stepInterval: 21600\n                        type: builder_query\n                      queryType: builder\n                    matchType: all_the_times\n                    op: below\n                    requireMinPoints: true\n                    requiredNumPoints: 3\n                    seasonality: daily\n                    selectedQueryName: A\n                    target: 2\n                  description: Detect an abrupt drop in span ingestion using a z-score\n                    anomaly function\n                  evalWindow: 24h\n                  frequency: 3h\n                  labels:\n                    severity: warning\n                  preferredChannels:\n                  - slack-ingestion\n                  ruleType: anomaly_rule\n                  version: v5\n              metric_promql:\n                description: PromQL expression instead of the builder. Dotted OTEL\n                  resource attributes are quoted (\"deployment.environment\"). Useful\n                  for queries that combine series with group_right or other Prom operators.\n                summary: Metric threshold PromQL rule\n                value:\n                  alert: Kafka consumer group lag above 1000\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer group {{$group}} is {{$value}} messages\n                      behind on {{$topic}}/{{$partition}}.\n                    summary: Kafka consumer lag high\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          legend: '{{topic}}/{{partition}} ({{group}})'\n                          name: A\n                          query: (max by(topic, partition, \"deployment.environment\")(kafka_log_end_offset)\n                            - on(topic, partition, \"deployment.environment\") group_right\n                            max by(group, topic, partition, \"deployment.environment\")(kafka_consumer_committed_offset))\n                            > 0\n                        type: promql\n                      queryType: promql\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-data-platform\n                        - pagerduty-data\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 1000\n                  description: Consumer group lag computed via PromQL\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 10m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - group\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 1h\n                  ruleType: promql_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_formula:\n                description: Computes disk utilization as (1 - available/capacity)\n                  * 100 by combining two disabled base queries with a builder_formula.\n                  The formula emits 0–100, so compositeQuery.unit is set to \"percent\"\n                  and the target is a bare number.\n                summary: Metric threshold multi-query formula\n                value:\n                  alert: PersistentVolume above 80% utilization\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Volume {{$k8s.persistentvolumeclaim.name}} in {{$k8s.namespace.name}}\n                      is {{$value}}% full.\n                    summary: Disk utilization above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.available\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.capacity\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (1 - A/B) * 100\n                          legend: '{{k8s.persistentvolumeclaim.name}} ({{k8s.namespace.name}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-storage\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 80\n                  description: Disk utilization for a persistent volume is above 80%\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 30m\n                      frequency: 5m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - k8s.namespace.name\n                    - k8s.persistentvolumeclaim.name\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 2h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_single:\n                description: Fires when a pod consumes more than 80% of its requested\n                  CPU for the whole evaluation window. Uses `k8s.pod.cpu_request_utilization`.\n                summary: Metric threshold single builder query\n                value:\n                  alert: Pod CPU above 80% of request\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Pod {{$k8s.pod.name}} CPU is at {{$value}} of request\n                      in {{$deployment.environment}}.\n                    summary: Pod CPU above {{$threshold}} of request\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.pod.cpu_request_utilization\n                            spaceAggregation: max\n                            timeAggregation: avg\n                          filter:\n                            expression: k8s.deployment.name = 'api-service'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: percentunit\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-platform\n                        - pagerduty-oncall\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 0.8\n                  description: CPU usage for api-service pods exceeds 80% of the requested\n                    CPU\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 15m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 4h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              notification_settings:\n                description: 'Demonstrates the full notificationSettings surface:\n                  `groupBy` merges alerts across labels to cut noise, `newGroupEvalDelay`\n                  gives newly-appearing series a grace period before firing, `renotify`\n                  re-alerts every 30m while firing OR while the alert is in nodata\n                  (missing data is treated as actionable), and `usePolicy: false`\n                  means channels come from the threshold entries rather than global\n                  routing policies. Set `usePolicy: true` to skip per-threshold channels\n                  and route via the org-level notification policy instead.'\n                summary: Full notification settings (grouping, nodata renotify, grace\n                  period)\n                value:\n                  alert: API 5xx error rate above 1%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: '{{$service.name}} 5xx rate in {{$deployment.environment}}\n                      is {{$value}}%.'\n                    summary: API service error rate elevated\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api' AND http.status_code\n                              >= 500\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} ({{deployment.environment}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-api-alerts\n                        - pagerduty-oncall\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Noise-controlled 5xx error rate alert with renotify\n                    on gaps\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - deployment.environment\n                    newGroupEvalDelay: 2m\n                    renotify:\n                      alertStates:\n                      - firing\n                      - nodata\n                      enabled: true\n                      interval: 30m\n                    usePolicy: false\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              tiered_thresholds:\n                description: Two tiers (warning and critical) in a single rule, each\n                  with its own target, op, matchType, and channels so warnings and\n                  pages route to different receivers. `alertOnAbsent` + `absentFor`\n                  fires a no-data alert when the query returns no series for 15 consecutive\n                  evaluations.\n                summary: Tiered thresholds with per-tier channels\n                value:\n                  alert: Kafka consumer lag warn / critical\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer lag for {{$topic}} partition {{$partition}}\n                      is {{$value}}.\n                    summary: Kafka consumer lag\n                  condition:\n                    absentFor: 15\n                    alertOnAbsent: true\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_log_end_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_consumer_committed_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: A - B\n                          legend: '{{topic}}/{{partition}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-kafka-info\n                        matchType: all_the_times\n                        name: warning\n                        op: above\n                        target: 50\n                      - channels:\n                        - slack-kafka-alerts\n                        - pagerduty-kafka\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 200\n                  description: Warn at lag ≥ 50 and page at ≥ 200, tiered via thresholds.spec.\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: data-platform\n                  notificationSettings:\n                    groupBy:\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_error_rate_formula:\n                description: Two disabled trace count queries (A = error spans where\n                  hasError=true, B = total spans) combined via a builder_formula into\n                  a percentage. Mirrors the common request-error-rate dashboard shape.\n                summary: Traces error rate error spans / total spans × 100\n                value:\n                  alert: Search-api error rate above 5%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: Error rate on {{$service.name}} {{$http.route}} is\n                      {{$value}}%\n                    summary: Search-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api' AND hasError =\n                              true\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} {{http.route}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        - pagerduty-search\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 5\n                  description: Request error rate for search-api, grouped by route\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_threshold_latency:\n                description: Builder query against the traces signal with p99(duration_nano).\n                  The series unit is ns (compositeQuery.unit), the target is in seconds\n                  (threshold.targetUnit) SigNoz converts before comparing. Canonical\n                  shape when series and target live in different units.\n                summary: Traces threshold p99 latency (ns → s conversion)\n                value:\n                  alert: Search API p99 latency above 5s\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: p99 latency for {{$service.name}} on {{$http.route}}\n                      crossed {{$threshold}}s.\n                    summary: Search-api latency degraded\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: p99(duration_nano)\n                          filter:\n                            expression: service.name = 'search-api' AND name = 'GET\n                              /api/v1/search'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          legend: '{{service.name}} {{http.route}}'\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: ns\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        matchType: at_least_once\n                        name: warning\n                        op: above\n                        target: 5\n                        targetUnit: s\n                  description: p99 duration of the search endpoint exceeds 5s\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: warning\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n            schema:\n              $ref: '#/components/schemas/RuletypesPostableRule'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/RuletypesRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Patch alert rule\n      tags:\n      - rules\n    put:\n      deprecated: false\n      description: This endpoint updates an alert rule by ID\n      operationId: UpdateRuleByID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            examples:\n              logs_error_rate_formula:\n                description: Two disabled log count queries (A = errors, B = total)\n                  combined via a builder_formula into a percentage. Classic service-level\n                  error-rate alert pattern for log-based signals.\n                summary: Logs error rate error count / total count × 100\n                value:\n                  alert: Payments-api error log rate above 1%\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: Error log rate in {{$deployment.environment}} is\n                      {{$value}}%\n                    summary: Payments-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              IN ['ERROR', 'FATAL']\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{deployment.environment}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Error log ratio as a percentage of total logs for payments-api\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              logs_threshold:\n                description: Counts matching log records (ERROR severity + body contains)\n                  over a rolling window. Fires at least once per evaluation when the\n                  count exceeds zero.\n                summary: Logs threshold count() over filter\n                value:\n                  alert: Payments service panic logs\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: '{{$k8s.pod.name}} emitted {{$value}} panic log(s)\n                      in {{$deployment.environment}}.'\n                    summary: Payments service panic\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              = 'ERROR' AND body CONTAINS 'panic'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        - pagerduty-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 0\n                  description: Any panic log line emitted by the payments service\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_anomaly:\n                description: Anomaly rules are not yet supported under schemaVersion\n                  v2alpha1, so this example uses the v1 shape. Wraps a builder query\n                  in the `anomaly` function with daily seasonality SigNoz compares\n                  each point against the forecast for that time of day. Fires when\n                  the anomaly score stays below the threshold for the entire window;\n                  `requireMinPoints` guards against noisy intervals.\n                summary: Metric anomaly rule (v1 only)\n                value:\n                  alert: Anomalous drop in ingested spans\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Ingestion rate for tenant {{$tenant_id}} is anomalously\n                      low (z-score {{$value}}).\n                    summary: Span ingestion anomaly\n                  condition:\n                    algorithm: standard\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: otelcol_receiver_accepted_spans\n                            spaceAggregation: sum\n                            timeAggregation: rate\n                          filter:\n                            expression: tenant_tier = 'premium'\n                          functions:\n                          - args:\n                            - name: z_score_threshold\n                              value: 2\n                            name: anomaly\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: tenant_id\n                          legend: '{{tenant_id}}'\n                          name: A\n                          signal: metrics\n                          stepInterval: 21600\n                        type: builder_query\n                      queryType: builder\n                    matchType: all_the_times\n                    op: below\n                    requireMinPoints: true\n                    requiredNumPoints: 3\n                    seasonality: daily\n                    selectedQueryName: A\n                    target: 2\n                  description: Detect an abrupt drop in span ingestion using a z-score\n                    anomaly function\n                  evalWindow: 24h\n                  frequency: 3h\n                  labels:\n                    severity: warning\n                  preferredChannels:\n                  - slack-ingestion\n                  ruleType: anomaly_rule\n                  version: v5\n              metric_promql:\n                description: PromQL expression instead of the builder. Dotted OTEL\n                  resource attributes are quoted (\"deployment.environment\"). Useful\n                  for queries that combine series with group_right or other Prom operators.\n                summary: Metric threshold PromQL rule\n                value:\n                  alert: Kafka consumer group lag above 1000\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer group {{$group}} is {{$value}} messages\n                      behind on {{$topic}}/{{$partition}}.\n                    summary: Kafka consumer lag high\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          legend: '{{topic}}/{{partition}} ({{group}})'\n                          name: A\n                          query: (max by(topic, partition, \"deployment.environment\")(kafka_log_end_offset)\n                            - on(topic, partition, \"deployment.environment\") group_right\n                            max by(group, topic, partition, \"deployment.environment\")(kafka_consumer_committed_offset))\n                            > 0\n                        type: promql\n                      queryType: promql\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-data-platform\n                        - pagerduty-data\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 1000\n                  description: Consumer group lag computed via PromQL\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 10m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - group\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 1h\n                  ruleType: promql_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_formula:\n                description: Computes disk utilization as (1 - available/capacity)\n                  * 100 by combining two disabled base queries with a builder_formula.\n                  The formula emits 0–100, so compositeQuery.unit is set to \"percent\"\n                  and the target is a bare number.\n                summary: Metric threshold multi-query formula\n                value:\n                  alert: PersistentVolume above 80% utilization\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Volume {{$k8s.persistentvolumeclaim.name}} in {{$k8s.namespace.name}}\n                      is {{$value}}% full.\n                    summary: Disk utilization above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.available\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.capacity\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (1 - A/B) * 100\n                          legend: '{{k8s.persistentvolumeclaim.name}} ({{k8s.namespace.name}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-storage\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 80\n                  description: Disk utilization for a persistent volume is above 80%\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 30m\n                      frequency: 5m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - k8s.namespace.name\n                    - k8s.persistentvolumeclaim.name\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 2h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_single:\n                description: Fires when a pod consumes more than 80% of its requested\n                  CPU for the whole evaluation window. Uses `k8s.pod.cpu_request_utilization`.\n                summary: Metric threshold single builder query\n                value:\n                  alert: Pod CPU above 80% of request\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Pod {{$k8s.pod.name}} CPU is at {{$value}} of request\n                      in {{$deployment.environment}}.\n                    summary: Pod CPU above {{$threshold}} of request\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.pod.cpu_request_utilization\n                            spaceAggregation: max\n                            timeAggregation: avg\n                          filter:\n                            expression: k8s.deployment.name = 'api-service'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: percentunit\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-platform\n                        - pagerduty-oncall\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 0.8\n                  description: CPU usage for api-service pods exceeds 80% of the requested\n                    CPU\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 15m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 4h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              notification_settings:\n                description: 'Demonstrates the full notificationSettings surface:\n                  `groupBy` merges alerts across labels to cut noise, `newGroupEvalDelay`\n                  gives newly-appearing series a grace period before firing, `renotify`\n                  re-alerts every 30m while firing OR while the alert is in nodata\n                  (missing data is treated as actionable), and `usePolicy: false`\n                  means channels come from the threshold entries rather than global\n                  routing policies. Set `usePolicy: true` to skip per-threshold channels\n                  and route via the org-level notification policy instead.'\n                summary: Full notification settings (grouping, nodata renotify, grace\n                  period)\n                value:\n                  alert: API 5xx error rate above 1%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: '{{$service.name}} 5xx rate in {{$deployment.environment}}\n                      is {{$value}}%.'\n                    summary: API service error rate elevated\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api' AND http.status_code\n                              >= 500\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} ({{deployment.environment}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-api-alerts\n                        - pagerduty-oncall\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Noise-controlled 5xx error rate alert with renotify\n                    on gaps\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - deployment.environment\n                    newGroupEvalDelay: 2m\n                    renotify:\n                      alertStates:\n                      - firing\n                      - nodata\n                      enabled: true\n                      interval: 30m\n                    usePolicy: false\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              tiered_thresholds:\n                description: Two tiers (warning and critical) in a single rule, each\n                  with its own target, op, matchType, and channels so warnings and\n                  pages route to different receivers. `alertOnAbsent` + `absentFor`\n                  fires a no-data alert when the query returns no series for 15 consecutive\n                  evaluations.\n                summary: Tiered thresholds with per-tier channels\n                value:\n                  alert: Kafka consumer lag warn / critical\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer lag for {{$topic}} partition {{$partition}}\n                      is {{$value}}.\n                    summary: Kafka consumer lag\n                  condition:\n                    absentFor: 15\n                    alertOnAbsent: true\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_log_end_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_consumer_committed_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: A - B\n                          legend: '{{topic}}/{{partition}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-kafka-info\n                        matchType: all_the_times\n                        name: warning\n                        op: above\n                        target: 50\n                      - channels:\n                        - slack-kafka-alerts\n                        - pagerduty-kafka\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 200\n                  description: Warn at lag ≥ 50 and page at ≥ 200, tiered via thresholds.spec.\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: data-platform\n                  notificationSettings:\n                    groupBy:\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_error_rate_formula:\n                description: Two disabled trace count queries (A = error spans where\n                  hasError=true, B = total spans) combined via a builder_formula into\n                  a percentage. Mirrors the common request-error-rate dashboard shape.\n                summary: Traces error rate error spans / total spans × 100\n                value:\n                  alert: Search-api error rate above 5%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: Error rate on {{$service.name}} {{$http.route}} is\n                      {{$value}}%\n                    summary: Search-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api' AND hasError =\n                              true\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} {{http.route}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        - pagerduty-search\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 5\n                  description: Request error rate for search-api, grouped by route\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_threshold_latency:\n                description: Builder query against the traces signal with p99(duration_nano).\n                  The series unit is ns (compositeQuery.unit), the target is in seconds\n                  (threshold.targetUnit) SigNoz converts before comparing. Canonical\n                  shape when series and target live in different units.\n                summary: Traces threshold p99 latency (ns → s conversion)\n                value:\n                  alert: Search API p99 latency above 5s\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: p99 latency for {{$service.name}} on {{$http.route}}\n                      crossed {{$threshold}}s.\n                    summary: Search-api latency degraded\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: p99(duration_nano)\n                          filter:\n                            expression: service.name = 'search-api' AND name = 'GET\n                              /api/v1/search'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          legend: '{{service.name}} {{http.route}}'\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: ns\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        matchType: at_least_once\n                        name: warning\n                        op: above\n                        target: 5\n                        targetUnit: s\n                  description: p99 duration of the search endpoint exceeds 5s\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: warning\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n            schema:\n              $ref: '#/components/schemas/RuletypesPostableRule'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Update alert rule\n      tags:\n      - rules\n  /api/v2/rules/{id}/history/filter_keys:\n    get:\n      deprecated: false\n      description: Returns distinct label keys from rule history entries for the selected\n        range.\n      operationId: GetRuleHistoryFilterKeys\n      parameters:\n      - in: query\n        name: signal\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n      - in: query\n        name: source\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: startUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: endUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: fieldContext\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n      - in: query\n        name: fieldDataType\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n      - in: query\n        name: metricName\n        schema:\n          type: string\n      - in: query\n        name: metricNamespace\n        schema:\n          type: string\n      - in: query\n        name: searchText\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TelemetrytypesGettableFieldKeys'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get rule history filter keys\n      tags:\n      - rules\n  /api/v2/rules/{id}/history/filter_values:\n    get:\n      deprecated: false\n      description: Returns distinct label values for a given key from rule history\n        entries.\n      operationId: GetRuleHistoryFilterValues\n      parameters:\n      - in: query\n        name: signal\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSignal'\n      - in: query\n        name: source\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesSource'\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: startUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: endUnixMilli\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: fieldContext\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldContext'\n      - in: query\n        name: fieldDataType\n        schema:\n          $ref: '#/components/schemas/TelemetrytypesFieldDataType'\n      - in: query\n        name: metricName\n        schema:\n          type: string\n      - in: query\n        name: metricNamespace\n        schema:\n          type: string\n      - in: query\n        name: searchText\n        schema:\n          type: string\n      - in: query\n        name: name\n        schema:\n          type: string\n      - in: query\n        name: existingQuery\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TelemetrytypesGettableFieldValues'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get rule history filter values\n      tags:\n      - rules\n  /api/v2/rules/{id}/history/overall_status:\n    get:\n      deprecated: false\n      description: Returns overall firing/inactive intervals for a rule in the selected\n        time range.\n      operationId: GetRuleHistoryOverallStatus\n      parameters:\n      - in: query\n        name: start\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: end\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/RulestatehistorytypesGettableRuleStateWindow'\n                    nullable: true\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get rule overall status timeline\n      tags:\n      - rules\n  /api/v2/rules/{id}/history/stats:\n    get:\n      deprecated: false\n      description: Returns trigger and resolution statistics for a rule in the selected\n        time range.\n      operationId: GetRuleHistoryStats\n      parameters:\n      - in: query\n        name: start\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: end\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/RulestatehistorytypesGettableRuleStateHistoryStats'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get rule history stats\n      tags:\n      - rules\n  /api/v2/rules/{id}/history/timeline:\n    get:\n      deprecated: false\n      description: Returns paginated timeline entries for rule state transitions.\n      operationId: GetRuleHistoryTimeline\n      parameters:\n      - in: query\n        name: start\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: end\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: state\n        schema:\n          $ref: '#/components/schemas/RuletypesAlertState'\n      - in: query\n        name: filterExpression\n        schema:\n          type: string\n      - in: query\n        name: limit\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: order\n        schema:\n          $ref: '#/components/schemas/Querybuildertypesv5OrderDirection'\n      - in: query\n        name: cursor\n        schema:\n          type: string\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/RulestatehistorytypesGettableRuleStateTimeline'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get rule history timeline\n      tags:\n      - rules\n  /api/v2/rules/{id}/history/top_contributors:\n    get:\n      deprecated: false\n      description: Returns top label combinations contributing to rule firing in the\n        selected time range.\n      operationId: GetRuleHistoryTopContributors\n      parameters:\n      - in: query\n        name: start\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: query\n        name: end\n        required: true\n        schema:\n          format: int64\n          type: integer\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/RulestatehistorytypesGettableRuleStateHistoryContributor'\n                    nullable: true\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get top contributors to rule firing\n      tags:\n      - rules\n  /api/v2/rules/test:\n    post:\n      deprecated: false\n      description: This endpoint fires a test notification for the given rule definition\n      operationId: TestRule\n      requestBody:\n        content:\n          application/json:\n            examples:\n              logs_error_rate_formula:\n                description: Two disabled log count queries (A = errors, B = total)\n                  combined via a builder_formula into a percentage. Classic service-level\n                  error-rate alert pattern for log-based signals.\n                summary: Logs error rate error count / total count × 100\n                value:\n                  alert: Payments-api error log rate above 1%\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: Error log rate in {{$deployment.environment}} is\n                      {{$value}}%\n                    summary: Payments-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              IN ['ERROR', 'FATAL']\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'payments-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{deployment.environment}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Error log ratio as a percentage of total logs for payments-api\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              logs_threshold:\n                description: Counts matching log records (ERROR severity + body contains)\n                  over a rolling window. Fires at least once per evaluation when the\n                  count exceeds zero.\n                summary: Logs threshold count() over filter\n                value:\n                  alert: Payments service panic logs\n                  alertType: LOGS_BASED_ALERT\n                  annotations:\n                    description: '{{$k8s.pod.name}} emitted {{$value}} panic log(s)\n                      in {{$deployment.environment}}.'\n                    summary: Payments service panic\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          filter:\n                            expression: service.name = 'payments-api' AND severity_text\n                              = 'ERROR' AND body CONTAINS 'panic'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: logs\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-payments\n                        - pagerduty-payments\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 0\n                  description: Any panic log line emitted by the payments service\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: payments\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_anomaly:\n                description: Anomaly rules are not yet supported under schemaVersion\n                  v2alpha1, so this example uses the v1 shape. Wraps a builder query\n                  in the `anomaly` function with daily seasonality SigNoz compares\n                  each point against the forecast for that time of day. Fires when\n                  the anomaly score stays below the threshold for the entire window;\n                  `requireMinPoints` guards against noisy intervals.\n                summary: Metric anomaly rule (v1 only)\n                value:\n                  alert: Anomalous drop in ingested spans\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Ingestion rate for tenant {{$tenant_id}} is anomalously\n                      low (z-score {{$value}}).\n                    summary: Span ingestion anomaly\n                  condition:\n                    algorithm: standard\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: otelcol_receiver_accepted_spans\n                            spaceAggregation: sum\n                            timeAggregation: rate\n                          filter:\n                            expression: tenant_tier = 'premium'\n                          functions:\n                          - args:\n                            - name: z_score_threshold\n                              value: 2\n                            name: anomaly\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: tenant_id\n                          legend: '{{tenant_id}}'\n                          name: A\n                          signal: metrics\n                          stepInterval: 21600\n                        type: builder_query\n                      queryType: builder\n                    matchType: all_the_times\n                    op: below\n                    requireMinPoints: true\n                    requiredNumPoints: 3\n                    seasonality: daily\n                    selectedQueryName: A\n                    target: 2\n                  description: Detect an abrupt drop in span ingestion using a z-score\n                    anomaly function\n                  evalWindow: 24h\n                  frequency: 3h\n                  labels:\n                    severity: warning\n                  preferredChannels:\n                  - slack-ingestion\n                  ruleType: anomaly_rule\n                  version: v5\n              metric_promql:\n                description: PromQL expression instead of the builder. Dotted OTEL\n                  resource attributes are quoted (\"deployment.environment\"). Useful\n                  for queries that combine series with group_right or other Prom operators.\n                summary: Metric threshold PromQL rule\n                value:\n                  alert: Kafka consumer group lag above 1000\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer group {{$group}} is {{$value}} messages\n                      behind on {{$topic}}/{{$partition}}.\n                    summary: Kafka consumer lag high\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          legend: '{{topic}}/{{partition}} ({{group}})'\n                          name: A\n                          query: (max by(topic, partition, \"deployment.environment\")(kafka_log_end_offset)\n                            - on(topic, partition, \"deployment.environment\") group_right\n                            max by(group, topic, partition, \"deployment.environment\")(kafka_consumer_committed_offset))\n                            > 0\n                        type: promql\n                      queryType: promql\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-data-platform\n                        - pagerduty-data\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 1000\n                  description: Consumer group lag computed via PromQL\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 10m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - group\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 1h\n                  ruleType: promql_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_formula:\n                description: Computes disk utilization as (1 - available/capacity)\n                  * 100 by combining two disabled base queries with a builder_formula.\n                  The formula emits 0–100, so compositeQuery.unit is set to \"percent\"\n                  and the target is a bare number.\n                summary: Metric threshold multi-query formula\n                value:\n                  alert: PersistentVolume above 80% utilization\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Volume {{$k8s.persistentvolumeclaim.name}} in {{$k8s.namespace.name}}\n                      is {{$value}}% full.\n                    summary: Disk utilization above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.available\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.volume.capacity\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: k8s.volume.type = 'persistentVolumeClaim'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.persistentvolumeclaim.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.namespace.name\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (1 - A/B) * 100\n                          legend: '{{k8s.persistentvolumeclaim.name}} ({{k8s.namespace.name}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-storage\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 80\n                  description: Disk utilization for a persistent volume is above 80%\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 30m\n                      frequency: 5m\n                  labels:\n                    severity: critical\n                  notificationSettings:\n                    groupBy:\n                    - k8s.namespace.name\n                    - k8s.persistentvolumeclaim.name\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 2h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              metric_threshold_single:\n                description: Fires when a pod consumes more than 80% of its requested\n                  CPU for the whole evaluation window. Uses `k8s.pod.cpu_request_utilization`.\n                summary: Metric threshold single builder query\n                value:\n                  alert: Pod CPU above 80% of request\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Pod {{$k8s.pod.name}} CPU is at {{$value}} of request\n                      in {{$deployment.environment}}.\n                    summary: Pod CPU above {{$threshold}} of request\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: k8s.pod.cpu_request_utilization\n                            spaceAggregation: max\n                            timeAggregation: avg\n                          filter:\n                            expression: k8s.deployment.name = 'api-service'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: k8s.pod.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          legend: '{{k8s.pod.name}} ({{deployment.environment}})'\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: percentunit\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-platform\n                        - pagerduty-oncall\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 0.8\n                  description: CPU usage for api-service pods exceeds 80% of the requested\n                    CPU\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 15m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - k8s.pod.name\n                    - deployment.environment\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 4h\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              notification_settings:\n                description: 'Demonstrates the full notificationSettings surface:\n                  `groupBy` merges alerts across labels to cut noise, `newGroupEvalDelay`\n                  gives newly-appearing series a grace period before firing, `renotify`\n                  re-alerts every 30m while firing OR while the alert is in nodata\n                  (missing data is treated as actionable), and `usePolicy: false`\n                  means channels come from the threshold entries rather than global\n                  routing policies. Set `usePolicy: true` to skip per-threshold channels\n                  and route via the org-level notification policy instead.'\n                summary: Full notification settings (grouping, nodata renotify, grace\n                  period)\n                value:\n                  alert: API 5xx error rate above 1%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: '{{$service.name}} 5xx rate in {{$deployment.environment}}\n                      is {{$value}}%.'\n                    summary: API service error rate elevated\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api' AND http.status_code\n                              >= 500\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name CONTAINS 'api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: deployment.environment\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} ({{deployment.environment}})'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-api-alerts\n                        - pagerduty-oncall\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 1\n                  description: Noise-controlled 5xx error rate alert with renotify\n                    on gaps\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: platform\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - deployment.environment\n                    newGroupEvalDelay: 2m\n                    renotify:\n                      alertStates:\n                      - firing\n                      - nodata\n                      enabled: true\n                      interval: 30m\n                    usePolicy: false\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              tiered_thresholds:\n                description: Two tiers (warning and critical) in a single rule, each\n                  with its own target, op, matchType, and channels so warnings and\n                  pages route to different receivers. `alertOnAbsent` + `absentFor`\n                  fires a no-data alert when the query returns no series for 15 consecutive\n                  evaluations.\n                summary: Tiered thresholds with per-tier channels\n                value:\n                  alert: Kafka consumer lag warn / critical\n                  alertType: METRIC_BASED_ALERT\n                  annotations:\n                    description: Consumer lag for {{$topic}} partition {{$partition}}\n                      is {{$value}}.\n                    summary: Kafka consumer lag\n                  condition:\n                    absentFor: 15\n                    alertOnAbsent: true\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_log_end_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: A\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - metricName: kafka_consumer_committed_offset\n                            spaceAggregation: max\n                            timeAggregation: max\n                          disabled: true\n                          filter:\n                            expression: topic != '__consumer_offsets'\n                          groupBy:\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: topic\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: partition\n                          name: B\n                          signal: metrics\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: A - B\n                          legend: '{{topic}}/{{partition}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-kafka-info\n                        matchType: all_the_times\n                        name: warning\n                        op: above\n                        target: 50\n                      - channels:\n                        - slack-kafka-alerts\n                        - pagerduty-kafka\n                        matchType: all_the_times\n                        name: critical\n                        op: above\n                        target: 200\n                  description: Warn at lag ≥ 50 and page at ≥ 200, tiered via thresholds.spec.\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    team: data-platform\n                  notificationSettings:\n                    groupBy:\n                    - topic\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_error_rate_formula:\n                description: Two disabled trace count queries (A = error spans where\n                  hasError=true, B = total spans) combined via a builder_formula into\n                  a percentage. Mirrors the common request-error-rate dashboard shape.\n                summary: Traces error rate error spans / total spans × 100\n                value:\n                  alert: Search-api error rate above 5%\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: Error rate on {{$service.name}} {{$http.route}} is\n                      {{$value}}%\n                    summary: Search-api error rate above {{$threshold}}%\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api' AND hasError =\n                              true\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          aggregations:\n                          - expression: count()\n                          disabled: true\n                          filter:\n                            expression: service.name = 'search-api'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          name: B\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      - spec:\n                          expression: (A / B) * 100\n                          legend: '{{service.name}} {{http.route}}'\n                          name: F1\n                        type: builder_formula\n                      queryType: builder\n                      unit: percent\n                    selectedQueryName: F1\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        - pagerduty-search\n                        matchType: at_least_once\n                        name: critical\n                        op: above\n                        target: 5\n                  description: Request error rate for search-api, grouped by route\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: critical\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 15m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n              traces_threshold_latency:\n                description: Builder query against the traces signal with p99(duration_nano).\n                  The series unit is ns (compositeQuery.unit), the target is in seconds\n                  (threshold.targetUnit) SigNoz converts before comparing. Canonical\n                  shape when series and target live in different units.\n                summary: Traces threshold p99 latency (ns → s conversion)\n                value:\n                  alert: Search API p99 latency above 5s\n                  alertType: TRACES_BASED_ALERT\n                  annotations:\n                    description: p99 latency for {{$service.name}} on {{$http.route}}\n                      crossed {{$threshold}}s.\n                    summary: Search-api latency degraded\n                  condition:\n                    compositeQuery:\n                      panelType: graph\n                      queries:\n                      - spec:\n                          aggregations:\n                          - expression: p99(duration_nano)\n                          filter:\n                            expression: service.name = 'search-api' AND name = 'GET\n                              /api/v1/search'\n                          groupBy:\n                          - fieldContext: resource\n                            fieldDataType: string\n                            name: service.name\n                          - fieldContext: attribute\n                            fieldDataType: string\n                            name: http.route\n                          legend: '{{service.name}} {{http.route}}'\n                          name: A\n                          signal: traces\n                          stepInterval: 60\n                        type: builder_query\n                      queryType: builder\n                      unit: ns\n                    selectedQueryName: A\n                    thresholds:\n                      kind: basic\n                      spec:\n                      - channels:\n                        - slack-search\n                        matchType: at_least_once\n                        name: warning\n                        op: above\n                        target: 5\n                        targetUnit: s\n                  description: p99 duration of the search endpoint exceeds 5s\n                  evaluation:\n                    kind: rolling\n                    spec:\n                      evalWindow: 5m\n                      frequency: 1m\n                  labels:\n                    severity: warning\n                    team: search\n                  notificationSettings:\n                    groupBy:\n                    - service.name\n                    - http.route\n                    renotify:\n                      alertStates:\n                      - firing\n                      enabled: true\n                      interval: 30m\n                  ruleType: threshold_rule\n                  schemaVersion: v2alpha1\n                  version: v5\n            schema:\n              $ref: '#/components/schemas/RuletypesPostableRule'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/RuletypesGettableTestRule'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - EDITOR\n      - tokenizer:\n        - EDITOR\n      summary: Test alert rule\n      tags:\n      - rules\n  /api/v2/saved_views:\n    get:\n      deprecated: false\n      description: Returns saved views, optionally filtered by source and name.\n      operationId: ListSavedViews\n      parameters:\n      - in: query\n        name: source\n        schema:\n          $ref: '#/components/schemas/SavedviewtypesSource'\n      - in: query\n        name: name\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/SavedviewtypesSavedView'\n                    nullable: true\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - saved-view:list\n      - tokenizer:\n        - saved-view:list\n      summary: List saved views\n      tags:\n      - saved_view\n    post:\n      deprecated: false\n      description: Persists a saved view for the explore page. Returns the id of the\n        created view.\n      operationId: CreateSavedView\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SavedviewtypesPostableSavedView'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - saved-view:create\n      - tokenizer:\n        - saved-view:create\n      summary: Create saved view\n      tags:\n      - saved_view\n  /api/v2/saved_views/{id}:\n    delete:\n      deprecated: false\n      description: Deletes a saved view by id.\n      operationId: DeleteSavedView\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - saved-view:delete\n      - tokenizer:\n        - saved-view:delete\n      summary: Delete saved view\n      tags:\n      - saved_view\n    get:\n      deprecated: false\n      description: Returns a saved view by id.\n      operationId: GetSavedView\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SavedviewtypesSavedView'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - saved-view:read\n      - tokenizer:\n        - saved-view:read\n      summary: Get saved view\n      tags:\n      - saved_view\n    put:\n      deprecated: false\n      description: Replaces a saved view's name and query.\n      operationId: UpdateSavedView\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SavedviewtypesUpdatableSavedView'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - saved-view:update\n      - tokenizer:\n        - saved-view:update\n      summary: Update saved view\n      tags:\n      - saved_view\n  /api/v2/sessions:\n    delete:\n      deprecated: false\n      description: This endpoint deletes the session\n      operationId: DeleteSession\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - tokenizer: []\n      summary: Delete session\n      tags:\n      - sessions\n  /api/v2/sessions/context:\n    get:\n      deprecated: false\n      description: This endpoint returns the context for the session\n      operationId: GetSessionContext\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesSessionContext'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Get session context\n      tags:\n      - sessions\n  /api/v2/sessions/email_password:\n    post:\n      deprecated: false\n      description: This endpoint creates a session for a user using email and password.\n      operationId: CreateSessionByEmailPassword\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesPostableEmailPasswordSession'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesGettableToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Create session by email and password\n      tags:\n      - sessions\n  /api/v2/sessions/rotate:\n    post:\n      deprecated: false\n      description: This endpoint rotates the session\n      operationId: RotateSession\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesPostableRotateToken'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesGettableToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      summary: Rotate session\n      tags:\n      - sessions\n  /api/v2/user_roles:\n    post:\n      deprecated: false\n      description: This endpoint assigns a role to a user\n      operationId: CreateUserRole\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesPostableUserRole'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create user role\n      tags:\n      - users\n  /api/v2/user_roles/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint revokes a role from a user\n      operationId: DeleteUserRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete user role\n      tags:\n      - users\n    get:\n      deprecated: false\n      description: This endpoint gets an existing user role\n      operationId: GetUserRole\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesUserRole'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get user role\n      tags:\n      - users\n  /api/v2/users:\n    get:\n      deprecated: false\n      description: This endpoint lists all users for the organization\n      operationId: ListUsers\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/TypesUser'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: List users v2\n      tags:\n      - users\n    post:\n      deprecated: false\n      description: This endpoint creates a user for the organization\n      operationId: CreateUser\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/AuthtypesPostableUser'\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesIdentifiable'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create user\n      tags:\n      - users\n  /api/v2/users/{id}:\n    delete:\n      deprecated: false\n      description: This endpoint deletes the user by id\n      operationId: DeleteUser\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Delete user\n      tags:\n      - users\n    get:\n      deprecated: false\n      description: This endpoint returns the user by id\n      operationId: GetUser\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesUserWithRoles'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get user by user id\n      tags:\n      - users\n    put:\n      deprecated: false\n      description: This endpoint updates the user by id\n      operationId: UpdateUser\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesUpdatableUser'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Update user v2\n      tags:\n      - users\n  /api/v2/users/{id}/reset_password_tokens:\n    get:\n      deprecated: false\n      description: This endpoint returns the existing reset password token for a user.\n      operationId: GetResetPasswordToken\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesResetPasswordToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get reset password token for a user\n      tags:\n      - users\n    put:\n      deprecated: false\n      description: This endpoint creates or regenerates a reset password token for\n        a user. If a valid token exists, it is returned. If expired, a new one is\n        created.\n      operationId: CreateResetPasswordToken\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"201\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/TypesResetPasswordToken'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: Created\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Create or regenerate reset password token for a user\n      tags:\n      - users\n  /api/v2/users/{id}/roles:\n    get:\n      deprecated: false\n      description: This endpoint returns the user roles by user id\n      operationId: GetRolesByUserID\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    items:\n                      $ref: '#/components/schemas/AuthtypesRole'\n                    type: array\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Get user roles\n      tags:\n      - users\n  /api/v2/users/me:\n    get:\n      deprecated: false\n      description: This endpoint returns the user I belong to\n      operationId: GetMyUser\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/AuthtypesUserWithRoles'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - tokenizer: []\n      summary: Get my user v2\n      tags:\n      - users\n    put:\n      deprecated: false\n      description: This endpoint updates the user I belong to\n      operationId: UpdateMyUserV2\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesUpdatableUser'\n      responses:\n        \"204\":\n          description: No Content\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - tokenizer: []\n      summary: Update my user v2\n      tags:\n      - users\n  /api/v2/users/me/dashboards:\n    get:\n      deprecated: false\n      description: 'Same as ListDashboardsV2 but personalized for the calling user:\n        each dashboard carries the caller''s `pinned` state, and pinned dashboards\n        float to the top of the requested ordering. Supports the same filter DSL,\n        sort, order, and pagination.'\n      operationId: ListDashboardsForUserV2\n      parameters:\n      - in: query\n        name: query\n        schema:\n          type: string\n      - in: query\n        name: sort\n        schema:\n          $ref: '#/components/schemas/DashboardtypesListSort'\n      - in: query\n        name: order\n        schema:\n          $ref: '#/components/schemas/DashboardtypesListOrder'\n      - in: query\n        name: limit\n        schema:\n          type: integer\n      - in: query\n        name: offset\n        schema:\n          type: integer\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/DashboardtypesListableDashboardForUserV2'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: List dashboards for the current user (v2)\n      tags:\n      - dashboard\n  /api/v2/users/me/dashboards/{id}/pins:\n    delete:\n      deprecated: false\n      description: Removes the pin for the calling user. Idempotent — unpinning a\n        dashboard that wasn't pinned still returns 204.\n      operationId: UnpinDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: Unpin a dashboard for the current user (v2)\n      tags:\n      - dashboard\n    put:\n      deprecated: false\n      description: Pins the dashboard for the calling user. A user can pin at most\n        10 dashboards; pinning when at the limit returns 409. Re-pinning an already-pinned\n        dashboard is a no-op success.\n      operationId: PinDashboardV2\n      parameters:\n      - in: path\n        name: id\n        required: true\n        schema:\n          type: string\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - dashboard:list\n      - tokenizer:\n        - dashboard:list\n      summary: Pin a dashboard for the current user (v2)\n      tags:\n      - dashboard\n  /api/v2/users/me/factor_password:\n    put:\n      deprecated: false\n      description: This endpoint updates the password of the user I belong to\n      operationId: UpdateMyPassword\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/TypesChangePasswordRequest'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Updates my password\n      tags:\n      - users\n  /api/v2/zeus/hosts:\n    get:\n      deprecated: false\n      description: This endpoint gets the host info from zeus.\n      operationId: GetHosts\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/ZeustypesGettableHost'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get host info from Zeus.\n      tags:\n      - zeus\n    put:\n      deprecated: false\n      description: This endpoint saves the host of a deployment to zeus.\n      operationId: PutHost\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ZeustypesPostableHost'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Put host in Zeus for a deployment.\n      tags:\n      - zeus\n  /api/v2/zeus/profiles:\n    put:\n      deprecated: false\n      description: This endpoint saves the profile of a deployment to zeus.\n      operationId: PutProfile\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/ZeustypesPostableProfile'\n      responses:\n        \"204\":\n          description: No Content\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"409\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Conflict\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - ADMIN\n      - tokenizer:\n        - ADMIN\n      summary: Put profile in Zeus for a deployment.\n      tags:\n      - zeus\n  /api/v3/metrics/dashboards:\n    get:\n      deprecated: false\n      description: This endpoint returns associated v2 dashboards for a specified\n        metric\n      operationId: GetMetricDashboardsV2\n      parameters:\n      - description: The name of the metric. May contain slashes (e.g. cloud-provider\n          metrics like run.googleapis.com/request_latencies).\n        in: query\n        name: metricName\n        required: true\n        schema:\n          description: The name of the metric. May contain slashes (e.g. cloud-provider\n            metrics like run.googleapis.com/request_latencies).\n          type: string\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/MetricsexplorertypesMetricDashboardPanelsResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get metric dashboards (v2)\n      tags:\n      - metrics\n  /api/v3/traces/{traceID}/flamegraph:\n    post:\n      deprecated: false\n      description: Returns the flamegraph view of spans for a given trace ID.\n      operationId: GetFlamegraph\n      parameters:\n      - in: path\n        name: traceID\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesPostableFlamegraph'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesGettableFlamegraphTrace'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get flamegraph view for a trace\n      tags:\n      - tracedetail\n  /api/v4/traces/{traceID}/waterfall:\n    post:\n      deprecated: false\n      description: Returns the waterfall view of spans including all spans if total\n        spans are under a limit, a max count otherwise. Aggregations are dropped compared\n        to v3\n      operationId: GetWaterfallV4\n      parameters:\n      - in: path\n        name: traceID\n        required: true\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/SpantypesPostableWaterfall'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/SpantypesGettableWaterfallTrace'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"404\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Not Found\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Get waterfall view for a trace\n      tags:\n      - tracedetail\n  /api/v5/query_range:\n    post:\n      deprecated: false\n      description: Execute a composite query over a time range. Supports builder queries\n        (traces, logs, metrics), formulas, trace operators, PromQL, and ClickHouse\n        SQL.\n      operationId: QueryRangeV5\n      requestBody:\n        content:\n          application/json:\n            examples:\n              clickhouse_sql_logs_raw:\n                summary: 'ClickHouse SQL: raw logs with resource filter'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        name: recent_errors\n                        query: WITH __resource_filter AS ( SELECT fingerprint FROM\n                          signoz_logs.distributed_logs_v2_resource WHERE seen_at_ts_bucket_start\n                          >= $start_timestamp - 1800 AND seen_at_ts_bucket_start <=\n                          $end_timestamp ) SELECT timestamp, body FROM signoz_logs.distributed_logs_v2\n                          WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint\n                          FROM __resource_filter) AND timestamp >= $start_timestamp_nano\n                          AND timestamp <= $end_timestamp_nano AND ts_bucket_start\n                          >= $start_timestamp - 1800 AND ts_bucket_start <= $end_timestamp\n                          AND severity_text = 'ERROR' ORDER BY timestamp DESC LIMIT\n                          100\n                      type: clickhouse_sql\n                  end: 1640998800000\n                  requestType: raw\n                  schemaVersion: v1\n                  start: 1640995200000\n              clickhouse_sql_traces_scalar:\n                summary: 'ClickHouse SQL: scalar aggregate with resource filter'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        name: total_spans\n                        query: WITH __resource_filter AS ( SELECT fingerprint FROM\n                          signoz_traces.distributed_traces_v3_resource WHERE seen_at_ts_bucket_start\n                          >= $start_timestamp - 1800 AND seen_at_ts_bucket_start <=\n                          $end_timestamp ) SELECT count() AS value FROM signoz_traces.distributed_signoz_index_v3\n                          WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint\n                          FROM __resource_filter) AND timestamp >= $start_datetime\n                          AND timestamp <= $end_datetime AND ts_bucket_start >= $start_timestamp\n                          - 1800 AND ts_bucket_start <= $end_timestamp\n                      type: clickhouse_sql\n                  end: 1640998800000\n                  requestType: scalar\n                  schemaVersion: v1\n                  start: 1640995200000\n              clickhouse_sql_traces_time_series:\n                summary: 'ClickHouse SQL: traces time series with resource filter'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        name: span_rate\n                        query: WITH __resource_filter AS ( SELECT fingerprint FROM\n                          signoz_traces.distributed_traces_v3_resource WHERE seen_at_ts_bucket_start\n                          >= $start_timestamp - 1800 AND seen_at_ts_bucket_start <=\n                          $end_timestamp ) SELECT toStartOfInterval(timestamp, INTERVAL\n                          60 SECOND) AS ts, count() AS value FROM signoz_traces.distributed_signoz_index_v3\n                          WHERE resource_fingerprint GLOBAL IN (SELECT fingerprint\n                          FROM __resource_filter) AND timestamp >= $start_datetime\n                          AND timestamp <= $end_datetime AND ts_bucket_start >= $start_timestamp\n                          - 1800 AND ts_bucket_start <= $end_timestamp GROUP BY ts\n                          ORDER BY ts\n                      type: clickhouse_sql\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              formula:\n                summary: 'Formula: error rate from two trace queries'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - expression: countIf(has_error = true)\n                        groupBy:\n                        - fieldContext: resource\n                          name: service.name\n                        name: A\n                        signal: traces\n                        stepInterval: 60s\n                      type: builder_query\n                    - spec:\n                        aggregations:\n                        - expression: count()\n                        groupBy:\n                        - fieldContext: resource\n                          name: service.name\n                        name: B\n                        signal: traces\n                        stepInterval: 60s\n                      type: builder_query\n                    - spec:\n                        expression: A / B * 100\n                        name: error_rate\n                      type: builder_formula\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              logs_raw:\n                summary: 'Raw: fetch raw log records'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        filter:\n                          expression: severity_text = 'ERROR'\n                        limit: 50\n                        name: A\n                        offset: 0\n                        order:\n                        - direction: desc\n                          key:\n                            fieldContext: log\n                            name: timestamp\n                        - direction: desc\n                          key:\n                            name: id\n                        selectFields:\n                        - fieldContext: log\n                          name: body\n                        - fieldContext: resource\n                          name: service.name\n                        signal: logs\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: raw\n                  schemaVersion: v1\n                  start: 1640995200000\n              logs_scalar:\n                summary: 'Scalar: total error log count'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - alias: error_count\n                          expression: count()\n                        filter:\n                          expression: severity_text = 'ERROR'\n                        name: A\n                        signal: logs\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: scalar\n                  schemaVersion: v1\n                  start: 1640995200000\n              logs_time_series:\n                summary: 'Time series: count error logs grouped by service'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - alias: log_count\n                          expression: count()\n                        filter:\n                          expression: severity_text = 'ERROR'\n                        groupBy:\n                        - fieldContext: resource\n                          name: service.name\n                        limit: 10\n                        name: A\n                        order:\n                        - direction: desc\n                          key:\n                            name: log_count\n                        signal: logs\n                        stepInterval: 60s\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              metrics_gauge_time_series:\n                summary: 'Time series: latest gauge value averaged across series'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - metricName: system.cpu.utilization\n                          spaceAggregation: avg\n                          timeAggregation: latest\n                        groupBy:\n                        - fieldContext: resource\n                          name: host.name\n                        name: A\n                        signal: metrics\n                        stepInterval: 60s\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              metrics_histogram_time_series:\n                summary: 'Time series: p99 latency from histogram'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - metricName: http.server.duration.bucket\n                          spaceAggregation: p99\n                        groupBy:\n                        - fieldContext: resource\n                          name: service.name\n                        name: A\n                        signal: metrics\n                        stepInterval: 60s\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              metrics_rate_time_series:\n                summary: 'Time series: rate of cumulative counter'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - metricName: http.server.duration.count\n                          spaceAggregation: sum\n                          timeAggregation: rate\n                        groupBy:\n                        - fieldContext: resource\n                          name: service.name\n                        name: A\n                        signal: metrics\n                        stepInterval: 120\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              metrics_scalar:\n                summary: 'Scalar: single reduced metric value'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - metricName: http.server.duration.count\n                          reduceTo: sum\n                          spaceAggregation: sum\n                          timeAggregation: rate\n                        name: A\n                        signal: metrics\n                        stepInterval: 60s\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: scalar\n                  schemaVersion: v1\n                  start: 1640995200000\n              promql:\n                summary: 'PromQL: request rate with UTF-8 metric name'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        name: request_rate\n                        query: sum(rate({\"http.server.duration.count\"}[5m])) by (\"service.name\")\n                        step: 60\n                      type: promql\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n              traces_raw:\n                summary: 'Raw: fetch raw span records'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        filter:\n                          expression: service.name = 'frontend' AND has_error = true\n                        limit: 100\n                        name: A\n                        order:\n                        - direction: desc\n                          key:\n                            fieldContext: span\n                            name: timestamp\n                        selectFields:\n                        - fieldContext: span\n                          name: name\n                        - fieldContext: span\n                          name: duration_nano\n                        signal: traces\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: raw\n                  schemaVersion: v1\n                  start: 1640995200000\n              traces_scalar:\n                summary: 'Scalar: total span count'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - alias: span_count\n                          expression: count()\n                        filter:\n                          expression: service.name = 'frontend'\n                        name: A\n                        signal: traces\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: scalar\n                  schemaVersion: v1\n                  start: 1640995200000\n              traces_time_series:\n                summary: 'Time series: count spans grouped by service'\n                value:\n                  compositeQuery:\n                    queries:\n                    - spec:\n                        aggregations:\n                        - alias: span_count\n                          expression: count()\n                        filter:\n                          expression: service.name = 'frontend'\n                        groupBy:\n                        - fieldContext: resource\n                          name: service.name\n                        limit: 10\n                        name: A\n                        order:\n                        - direction: desc\n                          key:\n                            name: span_count\n                        signal: traces\n                        stepInterval: 60s\n                      type: builder_query\n                  end: 1640998800000\n                  requestType: time_series\n                  schemaVersion: v1\n                  start: 1640995200000\n            schema:\n              $ref: '#/components/schemas/Querybuildertypesv5QueryRangeRequest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/Querybuildertypesv5QueryRangeResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - logs:read\n        - traces:read\n        - metrics:read\n        - audit-logs:read\n        - meter-metrics:read\n      - tokenizer:\n        - logs:read\n        - traces:read\n        - metrics:read\n        - audit-logs:read\n        - meter-metrics:read\n      summary: Query range\n      tags:\n      - querier\n  /api/v5/query_range/preview:\n    post:\n      deprecated: false\n      description: 'Validate a composite query without executing it. Accepts the same\n        payload as the query range endpoint. By default (verbose=true) returns, for\n        each query, the rendered underlying ClickHouse statement(s) with each statement''s\n        EXPLAIN ESTIMATE (per-table parts/rows/marks) and granule index analysis (candidate/surviving\n        granules and the per-index pruning funnel). Pass ?verbose=false for the lightweight\n        per-query verdict (valid/error/warnings) with no rendered SQL and no ClickHouse\n        round trips. Intended for agentic/dry-run consumption: per-query errors are\n        reported in the response rather than failing the whole request.'\n      operationId: QueryRangePreviewV5\n      parameters:\n      - in: query\n        name: verbose\n        schema:\n          type: string\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/Querybuildertypesv5QueryRangeRequest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/Querybuildertypesv5QueryRangePreviewResponse'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - logs:read\n        - traces:read\n        - metrics:read\n        - audit-logs:read\n        - meter-metrics:read\n      - tokenizer:\n        - logs:read\n        - traces:read\n        - metrics:read\n        - audit-logs:read\n        - meter-metrics:read\n      summary: Query range preview\n      tags:\n      - querier\n  /api/v5/substitute_vars:\n    post:\n      deprecated: false\n      description: Replace variables in a query\n      operationId: ReplaceVariables\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/Querybuildertypesv5QueryRangeRequest'\n      responses:\n        \"200\":\n          content:\n            application/json:\n              schema:\n                properties:\n                  data:\n                    $ref: '#/components/schemas/Querybuildertypesv5QueryRangeRequest'\n                  status:\n                    type: string\n                required:\n                - status\n                - data\n                type: object\n          description: OK\n        \"400\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Bad Request\n        \"401\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Unauthorized\n        \"403\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Forbidden\n        \"500\":\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/RenderErrorResponse'\n          description: Internal Server Error\n      security:\n      - api_key:\n        - VIEWER\n      - tokenizer:\n        - VIEWER\n      summary: Replace variables\n      tags:\n      - querier\nservers:\n- description: The fully qualified URL to the SigNoz APIServer.\n  url: https://{host}:{port}{base_path}\n  variables:\n    base_path:\n      default: /\n      description: The base path of the SigNoz APIServer\n    host:\n      default: localhost\n      description: The host of the SigNoz APIServer\n    port:\n      default: \"8080\"\n      description: The port of the SigNoz APIServer\n"}