type Query {
  integrations_aggregate(
    where: IntegrationWhereRequest
    column_transformations: [QueryColumnTransformationRequest!]
  ): IntegrationAggregationResponse!
}

type Query {
  integrations_list(
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    where: IntegrationWhereRequest
  ): IntegrationResponse!
}

type Query {
  notifications_aggregate_rules(
    where: NotificationRulesWhereRequest
  ): NotificationRulesAggregationResponse!
}

type Query {
  notifications_list_rules(
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    where: NotificationRulesWhereRequest
  ): NotificationRulesResponse!
}

type Query {
  usergroups_aggregate(
    where: UserGroupsWhereRequest
  ): UserGroupsAggregationResponse!
}

type Query {
  usergroups_list(
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    where: UserGroupsWhereRequest
  ): UserGroupsResponse!
}

type Query {
  users_list_by_tenant(
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    where: UsersByTenantWhereRequest
  ): UsersByTenantResponse!
}

type Query {
  users_aggregate_by_tenant(
    where: UsersByTenantWhereRequest
  ): UsersByTenantAggregationResponse!
}

type Query {
  agents_list_playbooks(
    where: AgentPlaybookWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): AgentPlaybookResponse
}

type Mutation {
  agents_create_token(
    object: AgentRegenerateTokenInput!
  ): AgentRegenerateTokenOutput
}

type Query {
  ai_get_budget_status(
    request: AIBudgetStatusRequest!
  ): AIBudgetStatusResponse

  ai_list_budget_config(
    request: AIBudgetConfigListRequest!
  ): AIBudgetConfigListResponse

  ai_get_budget_system_defaults: AIBudgetSystemDefaultsResponse
}

type Mutation {
  ai_upsert_budget_config(
    request: AIBudgetConfigUpsertRequest!
  ): AIBudgetConfigUpsertResponse
}

type Mutation {
  ai_delete_budget_config(
    request: AIBudgetConfigDeleteRequest!
  ): AIBudgetConfigDeleteResponse
}

type Mutation {
  ai_create_agent(
    request: CreateAgentRequest!
  ): CreateAgentResponse
}

type Mutation {
  ai_create_agent_extension(
    request: CreateExtensionAgentRequest!
  ): CreateAgentExtensionResponse
}

type Mutation {
  ai_create_function(
    account_id: String!
    function: CreateFunctionInput!
  ): FunctionResponse
}

type Mutation {
  ai_create_gc(
    request: CreateGCRequest!
  ): CreateGCResponse
}

type Mutation {
  ai_create_kb(
    request: CreateKBRequest!
  ): CreateKBResponse
}

type Mutation {
  ai_create_rag(
    request: CreateAgentRagInput!
  ): CreateAgentRagOutput
}

type Mutation {
  ai_create_tool(
    request: CreateToolRequest!
  ): CreateToolResponse
}

type Mutation {
  ai_delete_agent(
    request: DeleteAgentRequest!
  ): DeleteAgentResponse
}

type Mutation {
  ai_delete_function(
    request: AiDeleteFunctionRequest!
  ): AiDeleteFunctionResponse
}

type Mutation {
  ai_delete_gc(
    request: DeleteGCRequest!
  ): DeleteGCResponse
}

type Mutation {
  ai_delete_kb(
    request: DeleteKBRequest!
  ): DeleteKBResponse
}

type Mutation {
  ai_delete_llm_conversation_by_id(
    request: DeleteLlmConversationByIdRequest!
  ): DeleteLlmConversationByIdOutput
}

type Mutation {
  ai_delete_saved_conversation(
    request: DeleteLLMConversationRequest!
  ): DeleteLLMConversationResponse
}

type Mutation {
  ai_feedback_create(
    request: AiFeedbackCreateRequest!
  ): GenerateFeedbackResponse
}

type Mutation {
  ai_get_followup_response(
    request: AIFollowupRequest!
  ): AIFollowupResponse
}

type Mutation {
  ai_generate_es_dsl_query(
    request: AIGetESDslQueryRequest!
  ): AIGetESDslQueryResponse
}

type Mutation {
  ai_generate_loki_query(
    request: AIGetLokiQueryRequest!
  ): AIGetLokiQueryResponse
}

type Mutation {
  ai_generate_prometheus_query(
    request: AIGetPrometheusQueryRequest!
  ): AIGetPrometheusQueryResponse
}

type Query {
  ai_generate_workflow(
    request: AIGenerateWorkflowRequest!
  ): AIGenerateWorkflowResponse
}

type Mutation {
  ai_list_conversation_suggestions(
    request: AIGetConversationSuggestionRequest!
  ): AIGetConversationSuggestionResponse
}

type Mutation {
  ai_get_conversation_usage_metrics(
    request: AIGetConversationUsageMetricsRequest!
  ): AIGetConversationUsageMetricsResponse
}

type Mutation {
  ai_get_conversation_time_aggregates(
    request: AIGetConversationTimeAggregatesRequest!
  ): AIGetConversationTimeAggregatesResponse
}

type Query {
  ai_get_conversation_v3(
    request: AiGetConversationV3Request!
  ): AiGetConversationV3Response
}

type Query {
  ai_get_gc(
    request: GetGCRequest!
  ): GetGCResponse
}

type Query {
  ai_get_kb(
    request: GetKBRequest!
  ): GetKBResponse
}

type Query {
  ai_get_model_config(
    request: AIGetModelConfigRequest!
  ): AIGetModelConfigResponse
}

type Query {
  ai_get_rca(
    event_id: String!
    account_id: String!
    generate: Boolean!
  ): AIResponse
}

type Query {
  ai_get_rcaformat(
    request: AIGetRcaFormatRequest!
  ): AIGetRcaFormatResponse
}

type Query {
  ai_get_recommendation(
    event_id: String!
    account_id: String!
    recommendation_type: String!
    regenerate: Boolean
  ): AIResponse
}

type Query {
  ai_get_workspace_file(
    request: AiGetWorspaceFile!
  ): jsonb
}

type Query {
  ai_list_agent_kbs(
    request: ListAgentKBsRequest!
  ): ListAgentKBsResponse
}

type Query {
  ai_list_agents(
    request: ListAgentRequest!
  ): ListAgentResponse
}

type Query {
  ai_list_agents_with_kb_counts(
    request: ListAgentsWithKBCountsRequest!
  ): ListAgentsWithKBCountsResponse
}

type Query {
  ai_list_gc(
    request: ListGCRequest!
  ): ListGCResponse
}

type Query {
  ai_list_kb(
    request: ListKBRequest!
  ): ListKBResponse
}

type Query {
  ai_get_kb_load_history(
    request: GetKBLoadHistoryRequest!
  ): GetKBLoadHistoryResponse
}

type Mutation {
  ai_sync_kb(
    request: RetriggerKBRequest!
  ): RetriggerKBResponse
}

type Query {
  ai_list_memory(
    request: ListAIMemoryRequest!
  ): ListAIMemoryResponse
}

type Query {
  ai_list_models(
    request: AIListModelsRequest!
  ): AIListModelsResponse
}

type Query {
  ai_list_references(
    request: ListAIReferencesRequest!
  ): ListAIReferencesResponse
}

type Query {
  ai_list_tools(
    request: ListToolRequest!
  ): ListToolResponse
}

type Mutation {
  ai_create_kb_mapping(
    request: MapKBToAgentRequest!
  ): MapKBToAgentResponse
}

type Mutation {
  ai_create_saved_conversation(
    request: SaveLLMConversationRequest!
  ): SaveLLMConversationResponse
}

type Mutation {
  ai_upsert_rcaformat(
    request: AISaveRcaFormatRequest!
  ): AISaveRcaFormatResponse
}

type Mutation {
  ai_cancel_investigation(
    request: AIStopInvestigationRequest!
  ): AIStopInvestigationResponse
}

type Mutation {
  ai_execute_investigation(
    request: AITriggerInvestigationRequest!
  ): AITriggerInvestigationResponse
}

type Mutation {
  ai_delete_kb_mapping(
    request: UnmapKBFromAgentRequest!
  ): UnmapKBFromAgentResponse
}

type Mutation {
  ai_update_agent(
    request: UpdateAgentRequest!
  ): UpdateAgentResponse
}

type Mutation {
  ai_update_agent_extension(
    request: UpdateAgentExtensionRequest!
  ): UpdateAgentExtensionResponse
}

type Mutation {
  ai_update_function(
    account_id: String!
    function_id: String!
    function: UpdateFunctionInput!
  ): FunctionUpdateResponse
}

type Mutation {
  ai_update_gc(
    request: UpdateGCRequest!
  ): UpdateGCResponse
}

type Mutation {
  ai_update_kb(
    request: UpdateKBRequest!
  ): UpdateKBResponse
}

type Mutation {
  ai_update_tool(
    request: UpdateToolRequest!
  ): UpdateToolResponse
}

type Mutation {
  alertmanager_create_rule(
    request: AlertRule!
  ): AlertRuleResponse
}

type Mutation {
  alertmanager_disable_rule(
    request: DisableAlertRule!
  ): AlertRuleResponse
}

type Mutation {
  alertmanager_list_actions(
    request: AlertActionListRequest!
  ): AlertAction
}

type Mutation {
  alertmanager_update_rule(
    request: UpdateAlertRule!
  ): AlertRuleResponse
}

type Query {
  anomaly_grouping_v2(
    where: ListAnomalyWhereRequest
  ): AnomalyGroupingsResponse
}

type Mutation {
  anomaly_template_list(
    request: AnomalyTemplateListRequest!
  ): AnomalyTemplateListResponse
}

type Query {
  anomalies_list_v2(
    where: ListAnomalyWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): ListAnomalyResponse
}

type Query {
  anomalies_list(
    where: ListAnomalyV3WhereRequest
    limit: Int
    offset: Int
  ): ListAnomalyV3Response
}

type Mutation {
  applications_get_profile_status(
    request: ApplicationProfileGetRequest!
  ): ApplicationProfileDataResponse
}

type Mutation {
  applications_create_group(
    name: String!
    description: String
    mappings: [application_group_mapping_item!]!
  ): application_group_create_output
}

type Mutation {
  applications_update_group(
    id: String!
    name: String!
    description: String
    mappings: [application_group_mapping_item!]!
  ): application_group_update_output
}

type Mutation {
  applications_execute_profile(
    request: ApplicationProfileRequest!
  ): ApplicationProfileDataResponse
}

type Mutation {
  applications_convert_profile(
    request: ApplicationProfileConvertRequest!
  ): ApplicationProfileConvertDataResponse
}

type Query {
  applications_list_profiles(
    where: ApplicationProfileWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): ApplicationProfileResponse
}

type Mutation {
  recommendations_apply(
    object: apply_recommendation_input!
  ): apply_recommendation_output
}

type Query {
  audit_groupings_v2(
    where: AuditGroupingWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    group_by: [String!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): AuditGroupingResponse
}

type Query {
  audits_v2(
    where: AuditWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): AuditResponse
}

type Mutation {
  userroles_upsert_account_group(
    role: auth_account_group_roles_upsert_one_input!
  ): auth_account_group_roles_upsert_one_output
}

type Mutation {
  userroles_upsert_k8s_namespace_group(
    role: auth_k8saccount_namespace_group_roles_upsert_one_input!
  ): auth_k8saccount_namespace_group_roles_upsert_one_output
}

type Mutation {
  usergroups_update_members(
    group_id: String!
    add_usernames: [String!]!
    remove_usernames: [String!]!
  ): auth_manage_group_users_output
}

type Mutation {
  userroles_upsert_group(
    role: auth_tenant_group_roles_upsert_one_input!
  ): auth_tenant_group_roles_upsert_one_output
}

type Mutation {
  autooptimize_create(
    arg1: autooptimize_create!
  ): auto_optimize_insert_one_output
}

type Mutation {
  autooptimize_update(
    arg1: autooptimize_update!
  ): auto_optimize_insert_one_output
}

type Mutation {
  autooptimize_update_status(
    arg1: auto_optimize_update_status_request!
  ): auto_optimize_update_status_response
}

type Query {
  autooptimize_aggregate(
    where: AutoPilotGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    group_by: [String]
    column_transformations: [QueryColumnTransformationRequest!]
  ): AutoPilotGroupingsResponse
}

type Query {
  autooptimize_list(
    where: AutoPilotWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): AutoPilotResponse
}

type Mutation {
  aws_cloud_formation(
    object: AWSCloudFormationInput!
  ): AWSCloudFormationOutput
}

type Mutation {
  cloud_update_cloudformation_permissions(
    object: CloudUpdateCloudformationPermissionsInput!
  ): CloudUpdateCloudformationPermissionsOutput
}

type Mutation {
  accounts_check_aws_onboarding(
    object: AwsOnboardStatusInput!
  ): AwsOnboardStatusOutput
}

type Mutation {
  accounts_create_aws_org(
    object: AwsOrgOnboardInput!
  ): AwsOrgOnboardOutput
}

type Mutation {
  aws_org_refresh_token: AwsOrgRefreshTokenOutput
}

type Mutation {
  aws_org_status: AwsOrgStatusOutput
}

type Mutation {
  aws_get_onboard_eventbridge_url(
    object: AwsEventBridgeOnboardInput!
  ): AwsEventBridgeOnboardOutput
}

type Mutation {
  azure_get_onboard_eventgrid_url(
    object: AzureEventGridOnboardInput!
  ): AzureEventGridOnboardOutput
}

type Query {
  clusters_check_health(
    account_id: String!
    resource_type: String!
  ): health_check_response
}

type Mutation {
  cloud_account_attrs_upsert(
    object: cloud_account_attrs_upsert_input!
  ): cloud_account_attrs_upsert_output
}

type Mutation {
  cloud_account_update(
    object: cloud_account_update_input!
  ): cloud_account_update_output
}

type Mutation {
  accounts_create(
    object: cloud_accounts_insert_one_input!
  ): cloud_accounts_insert_one_output
}

type Query {
  cloud_metric_groupings_v2(
    where: CloudMetricGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): CloudMetricGroupingsResponse
}

type Mutation {
  cloud_resource_attributes_upsert(
    objects: [cloud_resource_attribute_item!]!
  ): cloud_resource_attributes_upsert_output
}

type Mutation {
  config_delete(
    request: ConfigDeleteInput!
  ): ConfigDeleteOutput
}

type Mutation {
  config_get(
    request: GetConfigInput!
  ): GetConfigResponse
}

type Mutation {
  config_list(
    request: ConfigListRequest!
  ): [Config]
}

type Mutation {
  config_save(
    request: ConfigSaveInput!
  ): ConfigSaveOutput
}

type Mutation {
  database_performance_insights(
    request: QueryDatabasePerformanceRequest!
  ): QueryDatabasePerformanceResponse
}

input CloudMetricsQueryInput {
  start_date: timestamp
  end_date: timestamp
  resource_ids: [String!]
  resource_type: String
  service_name: String!
  region: String!
  metric_names: [String!]
  step: bigint
  statistics: [String!]
  metric_namespace: String
  query: String
}

input CloudMetricsRequestInput {
  account_id: String!
  query: CloudMetricsQueryInput!
}

type CloudMetricItem {
  name: String
  statistics: String
  resource_id: String
  values: [Float]
  timestamps: [String]
  region: String
  service_name: String
}

type CloudMetricsResponse {
  items: [CloudMetricItem]
  start_date: String
  end_date: String
  step: bigint
}

type Mutation {
  cloud_list_metrics(
    request: CloudMetricsRequestInput!
  ): CloudMetricsResponse
}

type Mutation {
  accounts_sync(
    account_id: String!
  ): TriggerCloudSyncResponse
}

type TriggerCloudSyncResponse {
  success: Boolean!
  message: String
}

type Mutation {
  cloud_apply_command(
    account_id: String!
    service_name: String!
    region: String!
    resource_id: String!
    command: String!
    args: jsonb
  ): CloudApplyCommandResponse
}

type CloudApplyCommandResponse {
  success: Boolean!
  message: String
}

type Mutation {
  events_update_classification(
    event_id: String!
    classification: String!
    reason_code: String!
    reason_text: String
    priority_direction: String
    corrected_priority: String
    apply_scope: String
    apply_until_hours: Int
    linked_event_id: String
    apply_to_existing: Boolean
    confirmed: Boolean
  ): ClassifyEventResponse
}

type Mutation {
  events_dryrun_classification(
    event_id: String!
    classification: String!
    apply_scope: String
    apply_until_hours: Int
  ): ClassifyPreviewResponse
}

type Mutation {
  event_create_triage_rule(
    cloud_account_id: String!
    rule_type: String!
    action: String!
    match_source: String
    match_alertname: String
    match_namespace: String
    match_service: String
    match_fingerprint: String
    match_labels: String
    match_priority: String
    match_finding_type: String
    action_value: String
    priority: Int
    effective_until: String
    name: String
    description: String
    apply_to_existing: Boolean
  ): CreateTriageRuleResponse
}

type Mutation {
  event_delete_triage_rule(
    cloud_account_id: String!
    rule_id: String!
    hard_delete: Boolean
  ): DeleteTriageRuleResponse
}

type Mutation {
  event_get_duplicate_suggestions(
    event_id: String!
  ): EventGetDuplicateSuggestionsOutput
}

type Mutation {
  event_get_duplicates(
    event_id: String!
  ): EventGetDuplicatesOutput
}

type Query {
  event_get_filter_values(
    request: EventFilterValuesRequest!
  ): EventFilterValuesResponse
}

type Mutation {
  event_get_threshold_suggestion(
    event_id: String!
  ): ThresholdSuggestionOutput
}

type Mutation {
  event_list_threshold_suggestions(
    cloud_account_id: String
    source: String
    confidence: String
    limit: Int
    offset: Int
  ): ThresholdSuggestionListOutput
}

type Mutation {
  event_get_timeline(
    event_id: String!
  ): EventTimelineOutput
}

type Mutation {
  event_get_triage_rule_events(
    rule_id: String!
    account_id: String
    limit: Int
    offset: Int
    start_date: String
    end_date: String
  ): EventGetTriageRuleEventsOutput
}

type Mutation {
  event_get_triage_rules(
    cloud_account_id: String
    rule_type: String
    enabled: Boolean
  ): EventGetTriageRulesOutput
}

type Query {
  event_groupings_v2(
    where: EventGroupingsWhereRequest
    having: EventGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    group_by: [String]
    column_transformations: [QueryColumnTransformationRequest!]
  ): EventGroupingsResponse
}

type Mutation {
  events_dryrun_triage_rule(
    cloud_account_id: String!
    rule_type: String!
    action: String!
    match_source: String
    match_alertname: String
    match_namespace: String
    match_service: String
    match_fingerprint: String
    match_labels: String
    match_priority: String
    match_finding_type: String
  ): EventPreviewTriageRuleOutput
}

type Mutation {
  events_update_resolution(
    object: event_resolve_input!
  ): event_resolve_output
}

type Query {
  event_rules_groupings_v2(
    where: EventRulesGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    group_by: [String]
    column_transformations: [QueryColumnTransformationRequest!]
  ): EventRulesGroupingsResponse
}

type Query {
  event_rules_v2(
    where: EventRulesWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): EventRulesResponse
}

type Mutation {
  events_update_rule_override(
    cloud_account_id: String!
    system_rule_id: String!
    disabled: Boolean!
  ): ToggleSystemRuleOverrideResponse
}

type Mutation {
  event_update(
    request: EventUpdateRequest!
  ): EventsRowResponse
}

type Mutation {
  event_update_nb_status(
    event_id: String!
    nb_status: String!
    snoozed_until: String
  ): UpdateNBStatusResponse
}

type Mutation {
  event_update_triage_rule(
    cloud_account_id: String!
    rule_id: String!
    rule_type: String!
    action: String!
    match_source: String
    match_alertname: String
    match_namespace: String
    match_service: String
    match_fingerprint: String
    match_labels: String
    match_priority: String
    match_finding_type: String
    action_value: String
    priority: Int
    effective_until: String
    name: String
    description: String
    apply_to_existing: Boolean
  ): UpdateTriageRuleResponse
}

type Query {
  events_list(
    where: EventsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    column_transformations: [QueryColumnTransformationRequest!]
  ): EventsResponse
}

type Mutation {
  featureflag_upsert(
    features: [featureflag_upsert_input!]!
  ): featureflag_upsert_output!
}

type Mutation {
  cloud_check_monitoring_permission(
    object: CheckGcpMonitoringPermissionInput!
  ): CheckGcpMonitoringPermissionOutput
}

type Mutation {
  cloud_setup_monitoring_webhook(
    object: SetupGcpMonitoringWebhookInput!
  ): SetupGcpMonitoringWebhookOutput
}

type Mutation {
  gcp_get_onboard_pubsub_url(
    object: GcpPubSubOnboardInput!
  ): GcpPubSubOnboardOutput
}

type Mutation {
  ml_generate_node_recommendations(
    account: String!
    tenant: String!
    buffer_percentage: Int
    number_of_recommendations: Int
    min_nodes: Int
    min_cpu_per_node: Int
    min_memory_per_node: Int
    preferred_instance_groups: [String!]!
    graviton: Boolean!
  ): generate_cluster_recommendations_output
}

type Query {
  agents_list_health(
    where: AgentHealthWhereRequest
  ): AgentHealthResponse!
}

type Query {
  accounts_aggregate(
    where: CloudAccountWhereRequest
  ): CloudAccountAggregationResponse!
}

type Query {
  accounts_list(
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    where: CloudAccountWhereRequest
  ): CloudAccountResponse!
}

type Query {
  observability_get_default_provider(
    request: DefaultProviderRequest!
  ): DefaultProviderResponse
}

type Query {
  observability_list_provider_capabilities(
    request: ListProviderCapabilitiesRequest!
  ): [ProviderCapabilityEntry]
}

type Query {
  insights_list(
    where: InsightWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    group_by: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): InsightV2Response
}

type Mutation {
  integration_update_status_by_pk(
    id: String!
    status: String!
  ): integration_update_status_by_pk_output!
}

type Mutation {
  integrations_create_config(
    request: CreateIntegrationConfigRequest!
  ): CreateIntegrationConfigResponse
}

type Mutation {
  integrations_delete_config(
    request: DeleteIntegrationConfigRequest!
  ): DeleteIntegrationConfigResponse
}

type Query {
  integrations_get_schema(
    request: IntegrationSchemaRequest!
  ): IntegrationSchemaResponse
  integrations_autogen_options(
    request: IntegrationAutogenOptionsRequest!
  ): IntegrationAutogenOptionsResponse
}

type Mutation {
  integrations_update_status(
    request: DeleteIntegrationConfigRequest!
  ): DeleteIntegrationConfigResponse
}

type Mutation {
  integrations_check_connection(
    request: IntegrationTestConnectionRequest!
  ): IntegrationTestConnectionResponse
}

type Mutation {
  integrations_check_connection_config(
    request: IntegrationTestConnectionConfigRequest!
  ): IntegrationTestConnectionResponse
}

type Query {
  k8s_cluster_groupings_v2(
    where: K8sClusterGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): K8sClusterGroupingsResponse
}

type Query {
  k8s_metrics_groupings_v2(
    where: K8sMetricsGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): K8sMetricsGroupingsResponse
}

type Query {
  k8s_namespace_groupings_v2(
    where: K8sNamespaceGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): K8sNamespaceGroupingsResponse
}

type Query {
  k8s_namespaces_v2(
    where: K8sNamespaceWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): K8sNamespaceResponse
}

type Query {
  k8s_pod_groupings_v2(
    where: K8sPodGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): K8sPodGroupingsResponse
}

type Query {
  k8s_pods_v2(
    where: K8sPodsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): K8sPodsResponse
}

type Query {
  k8s_list_versions: [K8sVersionResponse]
}

type Query {
  k8s_workload_groupings_v2(
    where: K8sWorkloadGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): K8sWorkloadGroupingsResponse
}

type Query {
  k8s_workloads_cloud_account_monitoring_recommendations_v2(
    where: MonitoringWhereRequest
  ): MonitoringRecommendationsResponse
}

type Query {
  k8s_workloads_cloud_account_monitoring_v2(
    where: MonitoringWhereRequest
    order_by: [QuerySortByRequest]
  ): MonitoringResponse
}

type Query {
  k8s_workloads_v2(
    where: K8sWorkloadWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): K8sWorkloadResponse
}

type Mutation {
  kg_get_complete_graph(
    request: kg_get_complete_graph_input!
  ): kg_get_complete_graph_output
}

type Mutation {
  kg_list_nodes(
    request: kg_search_nodes_input!
  ): kg_search_nodes_output
}

type Mutation {
  kg_list_path(
    request: kg_traverse_input!
  ): kg_traverse_output
}

type Mutation {
  kg_get_node(
    request: kg_get_node_input!
  ): kg_get_node_output
}

type Mutation {
  kg_get_edge(
    request: kg_get_edge_input!
  ): kg_get_edge_output
}

type Query {
  kg_get_filter_options(
    request: kg_get_filter_options_input
  ): kg_get_filter_options_output
}

type Query {
  kg_get_filter_values(
    request: kg_get_filter_values_input!
  ): kg_get_filter_values_output
}

type Query {
  kg_get_tenant_filter: kg_get_tenant_filter_output
}

type Mutation {
  kg_upsert_tenant_filter(
    request: kg_upsert_tenant_filter_input!
  ): kg_upsert_tenant_filter_output
}

type Mutation {
  insights_aggregate(
    request: InsightRequest!
  ): InsightResponse
}

type Query {
  ai_list_conversation_feedback(
    where: GetFeedbackWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): GetFeedbackResponse
}

type Query {
  log_group(
    request: LogGroupRequest!
  ): LogGroupOutput
}

type Mutation {
  logs_get_query(
    request: FetchLogQueryRequest!
  ): FetchLogQueryOutput
}

type Query {
  logs_list_label_values(
    request: FetchLogLabelValuesRequest!
  ): [OutputLogLabelValue]
}

type Query {
  logs_list_labels(
    request: FetchLogLabelRequest!
  ): [OutputLogLabel]
}

type Query {
  logs_list(
    request: FetchLogRequest!
  ): [FetchLogResponse]
}

type Mutation {
  messagingplatforms_delete(
    object: messaging_platform_delete_input!
  ): messaging_platform_delete_output
}

type Query {
  messagingplatforms_list(
    object: messaging_platform_list_input
  ): messaging_platform_list_output
}

type Mutation {
  messagingplatforms_update(
    object: messaging_platform_update_input!
  ): messaging_platform_update_output
}

type Query {
  metric_groupings_v2(
    where: MetricGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): MetricGroupingsResponse
}

type Query {
  metrics_list_names(
    request: FetchMetricsListRequest!
  ): [OutputMetrics]
}

type Query {
  metrics_list_label_values(
    request: FetchMetricsLabelValueRequest!
  ): [OutputMetricsLabelValues]
}

type Query {
  metrics_list_labels(
    request: FetchMetricLabelsRequest!
  ): [OutputMetricLabels]
}

type Query {
  metrics_list(
    request: FetchMetricsRequest!
  ): OutputMetricQuery
}

type Query {
  metrics_aggregate_utilisation(
    request: MetricsQueryUtilisationRequest!
  ): OutputMetricQuery
}

type Query {
  metrics_get_query(
    request: FetchMetricsRequest!
  ): FetchMetricQueryOutput
}

type Query {
  ml_get_metrics(
    deployment: String!
    namespace: String!
    account: String!
  ): metrics_response
}

type Query {
  nudgebee_list_versions: NBVersionResponse
}

type Mutation {
  notification_channel_mapping_create(
    account_id: String
    platform: String!
    team_id: String
    channel_id: String!
  ): notification_channel_mapping_create_output!
}

type Mutation {
  notification_channel_mapping_delete(
    id: String!
  ): notification_channel_mapping_delete_output!
}

type Mutation {
  notification_channel_mapping_update(
    id: String!
    account_id: String
    team_id: String
    channel_id: String
  ): notification_channel_mapping_update_output!
}

type Query {
  notifications_list_channels(
    platform: String!
  ): notification_channel_list_resp
}

type Query {
  notification_get_user_list(
    platform: String!
  ): notification_user_list_resp
}

type Mutation {
  notifications_check_connection(
    platform: String!
    channel_id: String!
    team_id: String
  ): notification_send_test_resp
}

type Mutation {
  notification_rule_delete(
    id: String!
  ): notification_rule_delete_output!
}

type Mutation {
  notifications_upsert_rule(
    rule: notification_rule_upsert_input!
  ): notification_rule_mapping_output
}

type Mutation {
  recommendation_export(
    request: ExportRecommendationRequest!
  ): ExportRecommendationResponse
}

type Query {
  recommendation_groupings_v2(
    where: RecommendationGroupingWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    group_by: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): RecommendationGroupingResponse
}

type Mutation {
  recommendation_job_create(
    account_id: String!
    job_name: String!
  ): recommendation_job_create_output
}

type Query {
  recommendation_security_cis_groupings_v2(
    where: RecommendationSecurityCisGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): RecommendationSecurityCisGroupingsResponse
}

type Query {
  recommendation_security_groupings_v2(
    where: RecommendationSecurityGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): RecommendationSecurityGroupingsResponse
}

type Query {
  recommendation_security_v2(
    where: RecommendationSecurityWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): RecommendationSecurityResponse
}

type Query {
  recommendations_list(
    where: RecommendationWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): RecommendationResponse
}

type Mutation {
  relay_forward_request(
    body: jsonb!
    no_sinks: Boolean
    cache: Boolean
    track_history: Boolean
  ): RelayForwardOutput
}

type Query {
  resource_groupings_v2(
    where: ResourceGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): ResourceGroupingsResponse
}

type Mutation {
  security_scan_image(
    object: security_scan_image_input!
  ): security_scan_image_output
}

type Mutation {
  slo_config_create(
    request: SLOCreateRequest!
  ): SLOResponse
}

type Mutation {
  slo_config_list(
    request: SLOListRequest!
  ): SLOConfigListResponse
}

type Mutation {
  slo_config_update(
    request: SLOUpdateRequest!
  ): SLOUpdateConfigResponse
}

type Query {
  slo_config_v2(
    where: SloConfigWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): SloConfigResponse
}

type Query {
  slo_report_observation_v2(
    where: SloReportObservationWhereRequest
    limit: Int
    offset: Int
  ): SloReportObservationResponse
}

type Query {
  slo_report_v2(
    where: SloReportWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): SloReportResponse
}

type Query {
  spend_groupings_v2(
    where: SpendGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): SpendGroupingsResponse
}

type Mutation {
  tenant_attribute_delete(
    names: [String!]!
  ): tenant_attribute_delete_output!
}

type Mutation {
  tenant_attribute_upsert(
    object: [TenantAttributeRequest!]!
  ): [TenantAttributeResponse!]!
}

type Query {
  tenant_attributes_v2: TenantAttributesResponse
}

type Mutation {
  signup_delete(
    username: String!
  ): tenant_onboarding_delete_by_username_output
}

type Query {
  signup_check_token(
    token: String!
  ): [tenant_onboarding_record!]!
}

type Mutation {
  signup_create(
    username: String!
    verification_token: String!
    verification_token_expiration: String!
    tenant_name: String
    user_displayname: String
  ): tenant_onboarding_insert_output
}

type Mutation {
  signup_update_status(
    id: String!
    status: String!
    updated_at: String!
  ): tenant_onboarding_update_status_output
}

type Mutation {
  tenant_update_name(
    name: String!
  ): tenant_update_name_output!
}

type Mutation {
  ticket_add_comment(
    object: TicketAddCommentObjectInput!
  ): TicketComments!
}

type Query {
  ticket_get_comments(
    object: TicketGetCommentsObjectInput!
  ): TicketComments!
}

type Query {
  ticket_groupings_v2(
    where: TicketGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest]
    columns: [String]
    group_by: [String]
    column_transformations: [QueryColumnTransformationRequest!]
  ): TicketGroupingsResponse
}

type Mutation {
  ticket_integration_create_config(
    object: ticket_integration_create_config_input!
  ): ticket_integration_create_config_output!
}

type Mutation {
  ticket_check_connection_by_config(
    object: ticket_integration_create_config_input!
  ): ticket_test_connection_output!
}

type Query {
  tickets_get_create_meta(
    integration_id: String!
    project_key: String!
  ): ticket_create_meta_response
}

type Query {
  tickets_get_field_values(
    integration_id: String!
    url: String!
    key: String!
    search_term: String
  ): ticket_field_values_response
}

type Mutation {
  tickets_create(
    object: tickets_insert_one_input!
  ): tickets_insert_one_output!
}

type Query {
  tickets_list(
    where: TicketsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): TicketsResponse
}

type Query {
  traces_counts(
    request: TracesV3Input!
  ): TracesV3CountResponse
}

type Query {
  traces_grouping_count_v3(
    request: TracesV3Input!
  ): TracesGroupV3CountResponse
}

type Query {
  traces_grouping_v3(
    request: TracesV3Input!
  ): [TraceGroupingValues]!
}

type Query {
  traces_groupings_v2(
    where: TraceGroupingWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    group_by: [String]
    column_transformations: [QueryColumnTransformationRequest!]
    having: TraceGroupingWhereRequest
  ): TracesGroupResponse
}

type Query {
  traces_get_heatmap(
    request: TraceHeatMapInput!
  ): [TraceHeatMapOutput]
}

type Query {
  traces_heatmap_v2(
    where: TraceHeatMapWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): TracesHeatMapResponse
}

type Query {
  traces_label_values(
    request: TracesV3LabelValuesRequest!
  ): TracesV3LabelValuesResponse
}

type Query {
  traces_list(
    request: TracesV3Input!
  ): [TracesOutputResponse]!
}

type Mutation {
  traces_get_service_map(
    request: TraceServiceMapRequest!
  ): ServiceMapResponse
}

type Query {
  traces_v2(
    where: TraceWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): TracesResponse
}

type Mutation {
  anomaly_execute(
    request: TriggerAnomalyExecuteRequest!
  ): TriggerAnomalyExecuteResponse
}

type Mutation {
  upgrade_execute_command(
    account_id: String!
    plan_id: String!
    step_id: String!
    task_id: String!
    command: String!
    command_type: String!
  ): UpgradeExecuteCommandResponse
}

type Query {
  upgrade_plan_audit_v2(
    where: UpgradePlanAuditWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): UpgradePlanAuditResponse
}

type Mutation {
  upgrade_plan_create_one(
    account_id: String!
    steps: [jsonb]
  ): UpgradePlanResponse
}

type Query {
  upgrade_plan_fetch_all(
    account_id: String!
  ): [UpgradePlanResponse]
}

type Mutation {
  upgradeplans_upsert_task(
    account_id: String!
    plan_id: String!
    step_id: String!
    task_id: String!
    owner: String
    status: String
  ): task_response
}

type Mutation {
  upgrade_post_flight_check(
    account_id: String!
    plan_id: String!
  ): flight_check_response
}

type Mutation {
  upgrade_pre_flight_check(
    account_id: String!
    plan_id: String!
  ): flight_check_response
}

type Query {
  users_list_account_ids_by_tenant(
    where: UserAccountIdsByTenantWhereRequest
  ): UserAccountIdsByTenantResponse
}

type Query {
  users_get_by_provider_account(
    where: UserByProviderAccountWhereRequest
  ): UserByProviderAccountResponse
}

type Mutation {
  userauths_create(
    object: user_create_auth_input!
  ): user_create_auth_output
}

type Mutation {
  userauths_delete(
    object: user_delete_auth_input!
  ): user_delete_auth_output
}

type Query {
  users_get_details(
    where: UserDetailsWhereRequest
  ): UserDetailsResponse
}

type Mutation {
  users_create_history(
    request: UserHistoryInput!
  ): UserHistoryOutput
}

type Mutation {
  signup_complete(
    object: user_onboard_input!
  ): user_onboard_output
}

type Query {
  users_get_super_admin_role(
    where: UserSuperAdminRoleWhereRequest
  ): UserSuperAdminRoleResponse
}

type Mutation {
  userroles_sync(
    object: user_sync_roles_input!
  ): user_sync_roles_output
}

type Mutation {
  users_list_tenant_roles(
    object: user_tenant_roles_input!
  ): user_tenant_roles_output
}

type Mutation {
  userauths_update_accessed(
    object: user_update_accessed_input!
  ): user_update_accessed_output
}

type Mutation {
  users_update_default_tenant(
    object: user_update_default_tenant_input!
  ): user_update_default_tenant_output
}

type Mutation {
  users_update_profile(
    username: String!
    display_name: String
    status: String
    role: String
  ): user_update_profile_output!
}

type Mutation {
  users_update_status(
    object: user_update_status_input!
  ): user_update_status_output
}

type Mutation {
  usergroup_create(
    name: String!
    description: String
  ): usergroup_create_output!
}

type Mutation {
  usergroup_update(
    id: String!
    name: String
    description: String
    role: String
  ): usergroup_update_output!
}

type Mutation {
  users_create_token(
    user: UserTokenCreateRequest
  ): UserTokenCreateResponse
}

type Mutation {
  users_delete_token(
    user: UserTokenDeleteRequest
  ): UserTokenDeleteResponse
}

type Mutation {
  users_create(
    user: users_insert_one_input!
  ): users_insert_one_output
}

type Query {
  users_list_token: UserAuthTokenResponse
}

type Mutation {
  cloud_check_credentials(
    object: ValidateCloudCredentialsInput!
  ): ValidateCloudCredentialsOutput
}

type Mutation {
  azure_list_subscriptions(
    object: AzureListSubscriptionsInput!
  ): AzureListSubscriptionsOutput
}

type Mutation {
  accounts_create_azure_subscriptions_bulk(
    object: AzureBulkOnboardInput!
  ): AzureBulkOnboardOutput
}

type Mutation {
  gcp_list_projects(
    object: GcpListProjectsInput!
  ): GcpListProjectsOutput
}

type Mutation {
  accounts_create_gcp_projects_bulk(
    object: GcpBulkOnboardInput!
  ): GcpBulkOnboardOutput
}

type Mutation {
  webhook_subject_mappings_sync(
    request: WebhookSubjectMappingsSyncRequest!
  ): WebhookSubjectMappingsSyncOutput!
}

type Mutation {
  workflow_create(
    request: WorkflowCreateRequest!
  ): WorkflowCreateResponse
}

type Mutation {
  workflow_delete(
    request: WorkflowDeleteRequest!
  ): WorkflowDeleteResponse
}

type Query {
  workflow_get(
    request: WorkflowGetRequest
  ): Workflow
}

type Query {
  workflows_count(
    request: WorkflowCountRequest!
  ): WorkflowCountResponse
}

type Query {
  workflow_get_execution(
    request: WorkflowExecutionGetRequest!
  ): WorkflowExecutionGetResponse
}

type Query {
  workflows_count_executions(
    request: WorkflowExecutionCountRequest!
  ): WorkflowExecutionCountResponse
}

type Query {
  workflow_get_template(
    request: WorkflowGetTemplateRequest!
  ): WorkflowTemplateType
}

type Query {
  workflow_list(
    request: WorkflowListRequest!
  ): WorkflowListResponse
}

type Query {
  workflow_list_executions(
    request: WorkflowExecutionListRequest!
  ): WorkflowExecutionListResponse
}

type Query {
  workflow_list_executions_for_event(
    request: WorkflowExecutionListForEventRequest!
  ): WorkflowExecutionListResponse
}

type Query {
  workflow_list_taskdefinitions(
    params: WorkflowTaskDefinitionListRequest!
  ): WorkflowTaskDefinitionListResponse
}

type Query {
  workflow_list_callers(
    request: WorkflowListCallersRequest!
  ): WorkflowListCallersResponse
}

type Query {
  workflow_list_template(
    request: WorkflowListTemplateRequest!
  ): WorkflowTemplateListResponse
}

type Mutation {
  workflow_pause(
    request: WorkflowGetRequest!
  ): WorkflowPauseResponse
}

type Mutation {
  workflow_resume(
    request: WorkflowGetRequest!
  ): WorkflowResumeResponse
}

type Mutation {
  workflow_replay_execution(
    request: WorkflowRetriggerRequest!
  ): WorkflowRetriggerResponse
}

type Mutation {
  workflow_cancel_execution(
    request: WorkflowCancelRequest!
  ): WorkflowCancelResponse
}

type Mutation {
  workflow_complete_approval(
    request: WorkflowCompleteApprovalRequest!
  ): WorkflowCompleteApprovalResponse
}

type Mutation {
  workflow_execute(
    request: WorkflowTriggerRequest!
  ): WorkflowTriggerResponse
}

type Mutation {
  workflow_dryrun_execute(
    request: WorkflowDryrunRequest!
  ): WorkflowDryrunResponse
}

type Mutation {
  workflow_execute_task(
    account_id: String!
    task_type: String!
    params: jsonb
  ): jsonb
}

type Mutation {
  workflow_list_mcp_tools(
    account_id: String!
    params: jsonb!
  ): WorkflowListMCPToolsResponse
}

type Mutation {
  workflow_update(
    request: WorkflowUpdateRequest!
  ): WorkflowUpdateResponse
}

type Mutation {
  workflow_check(
    request: WorkflowCreateRequest!
  ): WorkflowValidateResponse
}

enum QuerySortOrderRequest {
  asc
  desc
  desc_nulls_last
  desc_nulls_first
  asc_nulls_last
  asc_nulls_first
}

input WorkflowListTemplateRequest {
  type: String!
  category: String
  name: String
  limit: Int
  next_page_token: String
  event_sources: [String]
  alert_names: [String]
  subject_types: [String]
}

input WorkflowGetTemplateRequest {
  type: String!
  id: String!
}

input cloud_accounts_insert_one_input {
  account_access: String
  account_email: String
  account_name: String
  account_purpose: String
  account_type: String
  account_url: String
  assume_role: String
  billing_source: String
  budget: float8
  cloud_provider: String
  created_at: timestamp
  created_by: uuid
  data: jsonb
  region: String
  start_date: timestamp
  access_key: String
  access_secret: String
  username: String
  password: String
  port: Int
  account_number: String
  account_env: String
  external_id: String
}

input jira_configurations_insert_one_input {
  auth_type: String
  name: String
  password: String
  status: String
  url: String
  username: String
  projects: String
  created_at: timestamp
  created_by: uuid
  tenant: uuid
  updated_by: uuid
  tool: String
  id: uuid
}

input TicketIntegrationConfigValueInput {
  name: String!
  value: String!
}

input ticket_integration_create_config_input {
  name: String!
  tool: String!
  url: String
  username: String
  password: String
  auth_type: String
  id: uuid
  config_values: [TicketIntegrationConfigValueInput]
}

input tickets_insert_one_input {
  reference_id: String
  ticket_type: String
  integration_id: String
  status: String
  ticket_id: String
  assignee: String
  project_key: String
  title: String
  description: String
  source: String
  severity: String
  account_id: String
  action: String
  message: String
  additional_fields: jsonb
}

input DeleteByPkRequest {
  id: String!
}

input AlertRulesQueryRequest {
  group_name: [String!]
  status: [String!]
  state: [String!]
  source: [String!]
  label: jsonb
}

input AlertQueryRequest {
  state: [String!]
  label: jsonb
  rule_id: String!
}

input users_insert_one_input {
  firstname: String!
  username: String!
  lastname: String
  role: String
  tenantname: String
}

input user_tenant_roles_input {
  username: String!
  tenant_id: String!
}

input user_sync_roles_input {
  username: String!
  tenant_id: String!
  target_roles: [String!]!
  remove_old_roles: Boolean!
}

input user_onboard_input {
  username: String!
  display_name: String!
  status: String
  tenant_name: String
  tenant_id: String
  role: String
  groups: [String!]
  existing_user_id: String
}

input user_update_accessed_input {
  auth_id: String
  username: String
  tenant_id: String!
}

input user_create_auth_input {
  user: String!
  provider: String!
  provider_type: String!
  account_id: String!
  name: String!
  credential: String
  status: String
  accessed_at: String
  expires_at: String
}

input user_update_status_input {
  id: String!
  status: String!
}

input user_delete_auth_input {
  id: String!
}

input user_update_default_tenant_input {
  tenant_id: String!
  username: String!
}

input tenant_insert_one_input {
  tenant_name: String!
  user_id: uuid!
  role: String
}

input aws_account_onboard_input {
  account_name: String!
}

input AwsOrgOnboardInput {
  account_name: String!
}

input get_openai_query_recommendations_input {
  account_id: String!
  query_normalized_md5: String!
}

input get_query_recommendations_input {
  account_id: String!
  query_normalized_md5: String!
  resource_id: String
  account_type: String
}

input get_query_profile_stat_input {
  account_id: String!
  query_normalized_md5: String!
}

input apply_recommendation_input {
  account_id: String!
  recommendation_id: String!
  data: jsonb
  provider: String
  provider_config: ProviderConfig
}

input resource_enhance_monitoring_input {
  resource_id: String!
  created_by: uuid
  updated_by: uuid
  tenant: uuid
}

input autopilot_notification_enable {
  enabled: Boolean!
}

input autopilot_notification {
  slack: autopilot_slack_notification_config
  email: autopilot_notification_enable
  ms_teams: autopilot_ms_teams_notification_config
  google_chat: autopilot_google_chat_notification_config
}

input autopilot_schedule {
  frequency: String
  start_date: timestamp
  end_date: timestamp
}

input autopilot_trigger {
  change_pct: Int!
  max_change_pct: Int
}

input autopilot_memory {
  algo: String!
  buffer_pct: Int!
  unit: String!
  min_memory: String
  max_memory: String
  trigger: autopilot_trigger!
}

input autopilot_cpu {
  algo: String!
  buffer_pct: Int!
  trigger: autopilot_trigger!
  max_cpu: String
  min_cpu: String
}

input autopilot_resource_filter {
  name: String
  namespace: String!
  type: String
}

input autopilot_vertical_rightsize_config {
  cpu: autopilot_cpu!
  memory: autopilot_memory!
}

input autopilot_config {
  vertical_rightsize: autopilot_vertical_rightsize_config
  horizontal_rightsize: jsonb
  pv_rightsize: autopilot_pv_rightsize_config
}

input autopilot_insert_one {
  account_id: uuid!
  category: String!
  resource_filter: autopilot_resource_filter!
  autopilot_config: autopilot_config!
  schedule: autopilot_schedule!
  notification: autopilot_notification!
  dryrun: Boolean!
}

input recommendation_request {
  deployment: String!
  resource_id: String!
  namespace: String!
  container: String
  tenant: String!
  account: String!
  persist_recommendation: Boolean
}

input metrics_request {
  deployment: String!
  namespace: String!
  account: String!
}

input DwQueryGroupingWhereRequest {
  _and: [DwQueryGroupingWhereRequest]
  _or: [DwQueryGroupingWhereRequest]
  _not: DwQueryGroupingWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  database_name: QueryWhereStringRequest
  db_username: QueryWhereStringRequest
  query_remote_ip: QueryWhereStringRequest
  query_type: QueryWhereStringRequest
  query_status: QueryWhereStringRequest
  warehouse_name: QueryWhereStringRequest
  query_normalized: QueryWhereStringRequest
  query_normalized_md5: QueryWhereStringRequest
  query_text: QueryWhereStringRequest
  query_started_at: QueryWhereDatetimeRequest
  query_exec_duration_micro: QueryWhereFloatRequest
  bill: QueryWhereFloatRequest
  bytes_spilled_locally: QueryWhereFloatRequest
  bytes_spilled_remotely: QueryWhereFloatRequest
  bytes_scanned: QueryWhereFloatRequest
  partitions_scanned: QueryWhereFloatRequest
  query_planning_duration_micro: QueryWhereFloatRequest
  query_queue_duration_micro: QueryWhereFloatRequest
  query_returned_bytes: QueryWhereFloatRequest
  query_returned_rows: QueryWhereFloatRequest
  rpu: QueryWhereFloatRequest
}

input QueryWhereStringRequest {
  _eq: String
  _eq_f: String
  _neq: String
  _neq_f: String
  _in: [String!]
  _not_in: [String!]
  _like: String
  _like_f: String
  _ilike: String
  _ilike_f: String
  _contains: String
  _has_key: String
  _is_null: Boolean
  _nlike: String
}

input QueryWhereDatetimeRequest {
  _eq: Datetime
  _eq_f: String
  _neq: Datetime
  _neq_f: String
  _in: [Datetime!]
  _lt: Datetime
  _lt_f: String
  _gt: Datetime
  _gt_f: String
  _lte: Datetime
  _lte_f: String
  _gte: Datetime
  _gte_f: String
  _between: QueryWhereDatetimeBetweenRequest
  _is_null: Boolean
}

input QueryWhereFloatRequest {
  _eq: Float
  _eq_f: String
  _neq: Float
  _neq_f: String
  _in: [Float!]
  _lt: Float
  _lt_f: String
  _gt: Float
  _gt_f: String
  _lte: Float
  _lte_f: String
  _gte: Float
  _gte_f: String
  _between: QueryWhereFloatBetweenRequest
  _is_null: Boolean
}

input QueryWhereIntRequest {
  _eq: Int
  _eq_f: String
  _neq: Int
  _neq_f: String
  _in: [Int!]
  _lt: Int
  _lt_f: String
  _gt: Int
  _gt_f: String
  _lte: Int
  _lte_f: String
  _gte: Int
  _get_f: String
  _between: QueryWhereIntBetweenRequest
}

input QuerySortByRequest {
  column: String!
  order: QuerySortOrderRequest
}

input K8sPodGroupingsWhereRequest {
  _and: [K8sPodGroupingsWhereRequest]
  _or: [K8sPodGroupingsWhereRequest]
  _not: K8sPodGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  external_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  workload_type: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  status: QueryWhereStringRequest
  node_name: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  pod_fqdn: QueryWhereStringRequest
  creation_time: QueryWhereDatetimeRequest
  workload_name: QueryWhereStringRequest
  labels: QueryWhereStringRequest
}

input MetricGroupingsWhereRequest {
  _and: [MetricGroupingsWhereRequest]
  _or: [MetricGroupingsWhereRequest]
  _not: MetricGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  metric: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
  value: QueryWhereFloatRequest
}

input EventGroupingsWhereRequest {
  _and: [EventGroupingsWhereRequest]
  _or: [EventGroupingsWhereRequest]
  _not: EventGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  cluster: QueryWhereStringRequest
  status: QueryWhereStringRequest
  service_key: QueryWhereStringRequest
  subject_node: QueryWhereStringRequest
  subject_namespace: QueryWhereStringRequest
  subject_name: QueryWhereStringRequest
  subject_owner: QueryWhereStringRequest
  subject_type: QueryWhereStringRequest
  priority: QueryWhereStringRequest
  finding_id: QueryWhereStringRequest
  category: QueryWhereStringRequest
  finding_type: QueryWhereStringRequest
  aggregation_key: QueryWhereStringRequest
  principal: QueryWhereStringRequest
  title: QueryWhereStringRequest
  source: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  starts_at: QueryWhereDatetimeRequest
  ends_at: QueryWhereDatetimeRequest
  labels: QueryWhereStringRequest
  fingerprint: QueryWhereStringRequest
  id: QueryWhereStringRequest
  computed_priority: QueryWhereStringRequest
  nb_status: QueryWhereStringRequest
  is_new_issue: QueryWhereBooleanRequest
  fingerprint_first_seen_at: QueryWhereDatetimeRequest
}

input auto_playbook_insert_one {
  name: String!
  account_id: uuid!
  resource_filter: [resource_filter_request!]!
  notification: auto_playbook_notification!
  trigger: jsonb!
  tasks: [auto_playbook_task_input!]!
  dryrun: Boolean!
}

input auto_playbook_task {
  type: String!
  config: jsonb!
}

input auto_playbook_notification {
  slack: auto_playbook_notification_enable
  email: auto_playbook_notification_enable
  ms_teams: auto_playbook_notification_enable
  google_chat: auto_playbook_notification_enable
}

input auto_playbook_notification_enable {
  enabled: Boolean!
}

input auto_playbook_task_input {
  type: String!
  config: jsonb!
}

input QueryColumnTransformationRequest {
  name: String!
  expr: String!
  args: [String!]
}

input QueryWhereDatetimeBetweenRequest {
  _gte: Datetime
  _gt: Datetime
  _lt: Datetime
  _lte: Datetime
}

input QueryWhereFloatBetweenRequest {
  _gte: Float
  _gt: Float
  _lt: Float
  _lte: Float
  _is_null: Boolean
}

input QueryWhereIntBetweenRequest {
  _gte: Int
  _gt: Int
  _lt: Int
  _lte: Int
}

input DwQueriesWhereRequest {
  _and: [DwQueriesWhereRequest]
  _or: [DwQueriesWhereRequest]
  _not: DwQueriesWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  database_name: QueryWhereStringRequest
  db_username: QueryWhereStringRequest
  query_type: QueryWhereStringRequest
  query_exec_duration_micro: QueryWhereIntRequest
  bill_total_duration_micro: QueryWhereIntRequest
  bill_interval_from: QueryWhereDatetimeRequest
  bill_interval_to: QueryWhereDatetimeRequest
  created_at: QueryWhereDatetimeRequest
  bill: QueryWhereFloatRequest
  rpu: QueryWhereFloatRequest
  query_text: QueryWhereStringRequest
  query_planning_duration_micro: QueryWhereIntRequest
  query_error_message: QueryWhereStringRequest
  query_returned_rows: QueryWhereIntRequest
  query_returned_bytes: QueryWhereIntRequest
  query_usage_limit: QueryWhereStringRequest
  query_transaction_id: QueryWhereStringRequest
  query_session_id: QueryWhereStringRequest
  query_status: QueryWhereStringRequest
  query_started_at: QueryWhereDatetimeRequest
  query_ended_at: QueryWhereDatetimeRequest
  query_id: QueryWhereStringRequest
  query_queue_duration_micro: QueryWhereIntRequest
  query_normalized: QueryWhereStringRequest
  query_normalized_md5: QueryWhereStringRequest
  queue_provision_time: QueryWhereFloatRequest
  queue_repair_time: QueryWhereFloatRequest
  queue_overload_time: QueryWhereFloatRequest
  partitions_scanned: QueryWhereFloatRequest
  bytes_scanned: QueryWhereFloatRequest
  bytes_spilled_locally: QueryWhereFloatRequest
  bytes_spilled_remotely: QueryWhereFloatRequest
  transaction_block_time: QueryWhereFloatRequest
  query_remote_ip: QueryWhereStringRequest
  query_md5: QueryWhereStringRequest
  warehouse_name: QueryWhereStringRequest
}

input EventsWhereRequest {
  _and: [EventsWhereRequest]
  _or: [EventsWhereRequest]
  _not: EventsWhereRequest
  id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  finding_id: QueryWhereStringRequest
  title: QueryWhereStringRequest
  description: QueryWhereStringRequest
  source: QueryWhereStringRequest
  aggregation_key: QueryWhereStringRequest
  failure: QueryWhereStringRequest
  finding_type: QueryWhereStringRequest
  category: QueryWhereStringRequest
  priority: QueryWhereStringRequest
  subject_type: QueryWhereStringRequest
  subject_name: QueryWhereStringRequest
  subject_owner: QueryWhereStringRequest
  subject_namespace: QueryWhereStringRequest
  subject_node: QueryWhereStringRequest
  service_key: QueryWhereStringRequest
  cluster: QueryWhereStringRequest
  ends_at: QueryWhereDatetimeRequest
  starts_at: QueryWhereDatetimeRequest
  fingerprint: QueryWhereStringRequest
  evidences: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  principal: QueryWhereStringRequest
  labels: QueryWhereStringRequest
  nb_status: QueryWhereStringRequest
  is_new_issue: QueryWhereBooleanRequest
  fingerprint_first_seen_at: QueryWhereDatetimeRequest
}

input SpendsWhereRequest {
  _and: [SpendsWhereRequest]
  _or: [SpendsWhereRequest]
  _not: SpendsWhereRequest
  id: QueryWhereStringRequest
  date: QueryWhereDatetimeRequest
  amount: QueryWhereFloatRequest
  unit: QueryWhereStringRequest
  business_unit: QueryWhereStringRequest
  tenant: QueryWhereStringRequest
  cloud_account: QueryWhereStringRequest
  cloud_resource_id: QueryWhereStringRequest
  resource_service_name: QueryWhereStringRequest
  resource_region: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
}

input SpendGroupingsWhereRequest {
  _and: [SpendGroupingsWhereRequest]
  _or: [SpendGroupingsWhereRequest]
  _not: SpendGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  resource_service_name: QueryWhereStringRequest
  resource_region: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  spend_date: QueryWhereDatetimeRequest
  exclude_aggregate: QueryWhereBooleanRequest
  amount: QueryWhereFloatRequest
}

input resource_filter_request {
  name: String!
  type: String!
  namespace: String!
}

input AuditWhereRequest {
  _and: [AuditWhereRequest]
  _or: [AuditWhereRequest]
  _not: AuditWhereRequest
  id: QueryWhereStringRequest
  user_id: QueryWhereStringRequest
  username: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  event_time: QueryWhereDatetimeRequest
  event_category: QueryWhereStringRequest
  event_type: QueryWhereStringRequest
  event_actor: QueryWhereStringRequest
  event_target: QueryWhereStringRequest
  event_action: QueryWhereStringRequest
  event_status: QueryWhereStringRequest
  transaction_id: QueryWhereStringRequest
}

input AuditGroupingWhereRequest {
  _and: [AuditGroupingWhereRequest]
  _or: [AuditGroupingWhereRequest]
  _not: AuditGroupingWhereRequest
  user_id: QueryWhereStringRequest
  username: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  event_time: QueryWhereDatetimeRequest
  event_category: QueryWhereStringRequest
  event_type: QueryWhereStringRequest
  event_actor: QueryWhereStringRequest
  event_target: QueryWhereStringRequest
  event_action: QueryWhereStringRequest
  event_status: QueryWhereStringRequest
  transaction_id: QueryWhereStringRequest
}

input auto_runbook_edit_one {
  id: uuid!
  name: String!
  account_id: uuid!
  resource_filter: [resource_filter_request!]!
  notification: auto_playbook_notification!
  trigger: jsonb!
  tasks: [auto_playbook_task_input!]!
  dryrun: Boolean!
}

input skip_runbook_request {
  id: uuid!
  by_minutes: Int
}

input disable_runbook_request {
  id: uuid!
}

input update_runbook_status_request {
  id: uuid!
  status: String!
}

input Annotations {
  description: String!
  summary: String!
  runbook: String
}

input Labels {
  severity: String!
}

input AlertRule {
  annotations: Annotations!
  expr: String!
  labels: Labels!
  alert: String!
  duration: String!
  accountId: String!
  source: String!
  category: String!
  severity: String!
  enabled: Boolean!
  trigger_params: jsonb!
  action_params: jsonb!
  alert_type: String
  metric_provider: String
  metric_provider_source: String
  provider_config: jsonb
}

input UpdateAlertRule {
  annotations: Annotations!
  expr: String!
  labels: Labels!
  duration: String!
  source: String!
  alert: String!
  category: String!
  severity: String!
  enabled: Boolean!
  accountId: String!
  trigger_params: jsonb!
  action_params: jsonb!
  alert_type: String
  metric_provider: String
  metric_provider_source: String
  provider_config: jsonb
}

input auto_optimize_resource_input {
  account_id: uuid!
}

input autopilot_slack_notification_config {
  enabled: Boolean!
  channel_id: String
}

input QueryWhereBooleanRequest {
  _eq: Boolean
  _neq: Boolean
  _is_null: Boolean
}

input DisableAlertRule {
  accountId: String!
  alert: String!
  id: String!
  enable: Boolean!
  namespace: String!
  group: String!
}

input security_scan_image_input {
  account_id: String!
  workload: String!
  namespace: String!
}

input tenant_user_roles_upsert_one_input {
  user_id: String!
  role: String!
}

input tenant_group_roles_upsert_one_input {
  group_id: String!
  role: String!
}

input account_user_roles_upsert_one_input {
  user_id: String!
  account_roles: [account_role_input]!
}

input account_group_roles_upsert_one_input {
  group_id: String!
  account_roles: [account_role_input]!
}

input account_role_input {
  account_id: String!
  role: String!
}

input TraceWhereRequest {
  _and: [TraceWhereRequest]
  _or: [TraceWhereRequest]
  _not: TraceWhereRequest
  timestamp: QueryWhereDatetimeRequest
  workload_name: QueryWhereStringRequest
  workload_namespace: QueryWhereStringRequest
  duration_ns: QueryWhereFloatRequest
  status_code: QueryWhereStringRequest
  span_name: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  destination_workload_namespace: QueryWhereStringRequest
  destination_name: QueryWhereStringRequest
  destination_workload_name: QueryWhereStringRequest
  http_status_code: QueryWhereStringRequest
  resource: QueryWhereStringRequest
  headers: QueryWhereStringRequest
  trace_id: QueryWhereStringRequest
  span_id: QueryWhereStringRequest
  parent_span_id: QueryWhereStringRequest
  trace_source: QueryWhereStringRequest
}

input auto_runbook_insert_one {
  name: String!
  account_id: uuid!
  resource_filter: [resource_filter_request!]!
  notification: auto_playbook_notification!
  trigger: jsonb!
  tasks: [auto_playbook_task_input!]!
  dryrun: Boolean!
}

input autooptimize_create {
  account_id: uuid!
  category: String!
  resource_filter: [autopilot_resource_filter]!
  auto_optimize_config: jsonb
  schedule: autopilot_schedule!
  notification: autopilot_notification!
  dryrun: Boolean!
  gitops: auto_optimize_gitops_config
  ticket_config: auto_optimize_ticket_config
}

input auto_runbook_skip_request {
  id: uuid!
  by_minutes: Int
}

input auto_runbook_update_status_request {
  id: uuid!
  status: String!
}

input TicketGroupingsWhereRequest {
  _and: [TicketGroupingsWhereRequest]
  _or: [TicketGroupingsWhereRequest]
  _not: TicketGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  ticket_type: QueryWhereStringRequest
  reference_id: QueryWhereStringRequest
  title: QueryWhereStringRequest
  platform: QueryWhereStringRequest
  status: QueryWhereStringRequest
  assignee: QueryWhereStringRequest
  created_by: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
}

input TraceGroupingWhereRequest {
  _and: [TraceGroupingWhereRequest]
  _or: [TraceGroupingWhereRequest]
  _not: TraceGroupingWhereRequest
  timestamp: QueryWhereDatetimeRequest
  workload_name: QueryWhereStringRequest
  workload_namespace: QueryWhereStringRequest
  workload_zone: QueryWhereStringRequest
  duration_ns: QueryWhereFloatRequest
  status_code: QueryWhereStringRequest
  span_name: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  destination_workload_namespace: QueryWhereStringRequest
  destination_name: QueryWhereStringRequest
  destination_workload_name: QueryWhereStringRequest
  destination_workload_zone: QueryWhereStringRequest
  http_status_code: QueryWhereStringRequest
  resource: QueryWhereStringRequest
  headers: QueryWhereStringRequest
  span_id: QueryWhereStringRequest
  parent_span_id: QueryWhereStringRequest
  trace_source: QueryWhereStringRequest
  trace_id: QueryWhereStringRequest
  error_count: QueryWhereFloatRequest
}

input RecommendationGroupingWhereRequest {
  _and: [RecommendationGroupingWhereRequest]
  _or: [RecommendationGroupingWhereRequest]
  _not: RecommendationGroupingWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  category: QueryWhereStringRequest
  rule_name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  resource_k8s_namespace: QueryWhereStringRequest
  resource_cloud_service: QueryWhereStringRequest
  resource_name: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
  estimated_savings: QueryWhereFloatRequest
  account_object_id: QueryWhereStringRequest
  recommendation: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  deleted_version: QueryWhereStringRequest
  deprecated_version: QueryWhereStringRequest
}

input auto_runbook_manual_run_request {
  id: uuid!
}

input RecommendationSecurityWhereRequest {
  _and: [RecommendationSecurityWhereRequest]
  _or: [RecommendationSecurityWhereRequest]
  _not: RecommendationSecurityWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  severity_weight: QueryWhereIntRequest
  status: QueryWhereStringRequest
  image: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  is_active: QueryWhereBooleanRequest
  workload_name: QueryWhereStringRequest
  workload_type: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  vulnerability_id: QueryWhereStringRequest
  package_id: QueryWhereStringRequest
}

input RecommendationSecurityGroupingsWhereRequest {
  _and: [RecommendationSecurityGroupingsWhereRequest]
  _or: [RecommendationSecurityGroupingsWhereRequest]
  _not: RecommendationSecurityGroupingsWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  severity_weight: QueryWhereIntRequest
  status: QueryWhereStringRequest
  image: QueryWhereStringRequest
  vulnerability_id: QueryWhereStringRequest
  package_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  is_active: QueryWhereBooleanRequest
  workload_name: QueryWhereStringRequest
  workload_type: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
}

input K8sClusterGroupingsWhereRequest {
  _and: [K8sClusterGroupingsWhereRequest]
  _or: [K8sClusterGroupingsWhereRequest]
  _not: K8sClusterGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
}

input autopilot_ms_teams_notification_config {
  enabled: Boolean!
  channel_id: String
  team_id: String
}

input PlaybookWhereRequest {
  _and: [PlaybookWhereRequest]
  _or: [PlaybookWhereRequest]
  _not: PlaybookWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  trigger: QueryWhereStringRequest
  status: QueryWhereStringRequest
  resource_filter: QueryWhereStringRequest
  id: QueryWhereStringRequest
}

input notification_rule_upsert_input {
  id: uuid
  name: String!
  description: String
  source: String!
  cluster: String
  account_id: uuid
  namespace: String
  workload: String
  aggregation_key: String
  expires_at: timestamp
  is_suppressed: Boolean!
  is_active: Boolean
  delivery_mode: String
  frequency: String
  severity: String
  mappings: [notification_rule_mapping_input]
}

input notification_rule_input {
  id: uuid
  name: String!
  description: String
  source: String!
  cluster: String!
  namespace: String
  workload: String
  is_supressed: Boolean
  is_active: Boolean
}

input notification_rule_mapping_input {
  installation_id: uuid
  platform: String!
  channels: jsonb!
}

input autooptimize_update {
  id: uuid!
  account_id: uuid!
  category: String!
  resource_filter: [autopilot_resource_filter]!
  auto_optimize_config: jsonb
  schedule: autopilot_schedule!
  notification: autopilot_notification!
  dryrun: Boolean!
  gitops: auto_optimize_gitops_config
  ticket_config: auto_optimize_ticket_config
}

input PlaybookGroupWhereRequest {
  _and: [PlaybookGroupWhereRequest]
  _or: [PlaybookGroupWhereRequest]
  _not: PlaybookGroupWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  trigger: QueryWhereStringRequest
  status: QueryWhereStringRequest
  resource_filter: QueryWhereStringRequest
  id: QueryWhereStringRequest
}

input ProviderConfig {
  name: String
}

input MonitoringWhereRequest {
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  creation_time: QueryWhereStringRequest
}

input auto_runbook_action_insert_one_input {
  id: uuid
  action_name: String!
  description: String!
  status: String
  library_id: uuid!
  account_id: uuid!
  configs: jsonb!
  base_action_configs: jsonb!
  account_type: String
}

input SLOListRequest {
  cloud_account_id: String!
  workload_id: [String]
  workload_name: [String]
  namespace: [String]
}

input SLOCreateRequest {
  cloud_account_id: String!
  workload_id: String!
  workload_name: String!
  namespace: String!
  config: [SLOConfigCreateRequest]
}

input SLOConfigCreateRequest {
  name: String!
  threshold: Float
  goal: Float
  enabled: Boolean!
}

input SLOUpdateRequest {
  cloud_account_id: String!
  workload_id: String!
  workload_name: String!
  namespace: String!
  config: [SLOConfigUpdateRequest]
}

input SLOConfigUpdateRequest {
  id: uuid!
  name: String!
  threshold: Float
  goal: Float
  enabled: Boolean!
}

input AWSCloudFormationInput {
  account_name: String!
  cloud_provider: String!
  account_type: String!
  account_access: String
  ssm_access: Boolean
}

input CloudMetricGroupingsWhereRequest {
  _and: [CloudMetricGroupingsWhereRequest]
  _or: [CloudMetricGroupingsWhereRequest]
  _not: CloudMetricGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  region_name: QueryWhereStringRequest
  service_name: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  metric: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
}

input autopilot_google_chat_notification_config {
  enabled: Boolean!
  channel_id: String
}

input auto_runbook_action_publish_input {
  id: uuid!
  account_id: uuid!
}

input runbook_action_status_input {
  ids: [uuid!]
  account_id: uuid!
  status: String!
}

input auto_optimize_gitops_config {
  enabled: Boolean
  repository_name: String
}

input auto_runbook_task_manual_run_request {
  id: uuid!
}

input RecommendationSecurityCisGroupingsWhereRequest {
  _and: [RecommendationSecurityCisGroupingsWhereRequest]
  _or: [RecommendationSecurityCisGroupingsWhereRequest]
  _not: RecommendationSecurityCisGroupingsWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  severity_weight: QueryWhereIntRequest
  rule_id: QueryWhereStringRequest
  rule_name: QueryWhereStringRequest
  rule_description: QueryWhereStringRequest
  status: QueryWhereStringRequest
}

input K8sWorkloadWhereRequest {
  _and: [K8sWorkloadWhereRequest]
  _or: [K8sWorkloadWhereRequest]
  _not: K8sWorkloadWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  external_id: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  total_pods: QueryWhereIntRequest
  ready_pods: QueryWhereIntRequest
  name: QueryWhereStringRequest
  kind: QueryWhereStringRequest
  creation_time: QueryWhereDatetimeRequest
  last_seen: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  workload_fqdn: QueryWhereStringRequest
  labels: QueryWhereStringRequest
}

input K8sWorkloadGroupingsWhereRequest {
  _and: [K8sWorkloadGroupingsWhereRequest]
  _or: [K8sWorkloadGroupingsWhereRequest]
  _not: K8sWorkloadGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  external_id: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  name: QueryWhereStringRequest
  kind: QueryWhereStringRequest
  workload_fqdn: QueryWhereStringRequest
  labels: QueryWhereStringRequest
}

input K8sNamespaceWhereRequest {
  _and: [K8sNamespaceWhereRequest]
  _or: [K8sNamespaceWhereRequest]
  _not: K8sNamespaceWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  workload_count: QueryWhereIntRequest
  pod_count: QueryWhereIntRequest
  creation_time: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input K8sNamespaceGroupingsWhereRequest {
  _and: [K8sNamespaceGroupingsWhereRequest]
  _or: [K8sNamespaceGroupingsWhereRequest]
  _not: K8sNamespaceGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  creation_time: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input K8sPodsWhereRequest {
  _and: [K8sPodsWhereRequest]
  _or: [K8sPodsWhereRequest]
  _not: K8sPodsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  external_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  workload_type: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  status: QueryWhereStringRequest
  node_name: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  restart_count: QueryWhereIntRequest
  creation_time: QueryWhereDatetimeRequest
  last_seen: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  pod_fqdn: QueryWhereStringRequest
  labels: QueryWhereStringRequest
}

input K8sMetricsGroupingsWhereRequest {
  _and: [K8sMetricsGroupingsWhereRequest]
  _or: [K8sMetricsGroupingsWhereRequest]
  _not: K8sMetricsGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  workload_type: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  namespace_name: QueryWhereStringRequest
  pod_name: QueryWhereStringRequest
  node_name: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
  workload_fqdn: QueryWhereStringRequest
  pod_fqdn: QueryWhereStringRequest
}

input auth_k8saccount_group_roles_upsert_one_input {
  group_id: String!
  k8saccount_namespace_roles: [k8saccount_namespace_role_input]!
}

input k8saccount_namespace_role_input {
  account_id: String!
  role: String!
  namespace: String!
}

input auth_k8saccount_user_roles_upsert_one_input {
  user_id: String!
  k8saccount_namespace_roles: [k8saccount_namespace_role_input]!
}

input auth_account_group_roles_upsert_one_input {
  group_id: String!
  account_roles: [auth_account_role_input]!
}

input auth_account_role_input {
  account_id: String!
  role: String!
}

input auth_account_user_roles_upsert_one_input {
  user_id: String!
  account_roles: [auth_account_role_input]!
}

input auth_tenant_group_roles_upsert_one_input {
  group_id: String!
  role: String!
}

input auth_tenant_user_roles_upsert_one_input {
  user_id: String
  username: String
  role: String!
}

input auth_k8saccount_namespace_group_roles_upsert_one_input {
  group_id: String!
  k8saccount_namespace_roles: [k8saccount_namespace_role_input]!
}

input RecommendationWhereRequest {
  _and: [RecommendationWhereRequest]
  _or: [RecommendationWhereRequest]
  _not: RecommendationWhereRequest
  id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  recommendation_action: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  estimated_savings: QueryWhereFloatRequest
  status: QueryWhereStringRequest
  category: QueryWhereStringRequest
  rule_name: QueryWhereStringRequest
  is_dismissed: QueryWhereBooleanRequest
  account_object_id: QueryWhereStringRequest
  updated_by: QueryWhereStringRequest
  resource_k8s_namespace: QueryWhereStringRequest
  resource_name: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  resource_cloud_service: QueryWhereStringRequest
  recommendation: QueryWhereStringRequest
  deleted_version: QueryWhereStringRequest
  deprecated_version: QueryWhereStringRequest
  is_primary_recommendation: QueryWhereBooleanRequest
}

input RecommendationMissConfigGroupingWhereRequest {
  _and: [RecommendationMissConfigGroupingWhereRequest]
  _or: [RecommendationMissConfigGroupingWhereRequest]
  _not: RecommendationMissConfigGroupingWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  category: QueryWhereStringRequest
  rule_name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  missconfig_category: QueryWhereStringRequest
  missconfig_message: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  resource_k8s_namespace: QueryWhereStringRequest
  resource_k8s_container: QueryWhereStringRequest
  resource_name: QueryWhereStringRequest
  estimated_savings: QueryWhereFloatRequest
  account_object_id: QueryWhereStringRequest
}

input RecommendationMissConfigWhereRequest {
  _and: [RecommendationMissConfigWhereRequest]
  _or: [RecommendationMissConfigWhereRequest]
  _not: RecommendationMissConfigWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  category: QueryWhereStringRequest
  rule_name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  missconfig_category: QueryWhereStringRequest
  missconfig_message: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  resource_k8s_namespace: QueryWhereStringRequest
  resource_k8s_container: QueryWhereStringRequest
  resource_name: QueryWhereStringRequest
  estimated_savings: QueryWhereFloatRequest
  account_object_id: QueryWhereStringRequest
}

input generate_cluster_recommendations_input {
  account: String!
  tenant: String!
  buffer_percentage: Int
  number_of_recommendations: Int
  min_nodes: Int
  min_cpu_per_node: Int
  min_memory_per_node: Int
  preferred_instance_groups: [String!]!
  graviton: Boolean!
}

input autopilot_pv_rightsize_config {
  threshold: Int!
  change_by_pct: Int!
}

input event_resolve_input {
  account_id: String!
  event_id: String!
  data: jsonb
  provider: String
  provider_config: ProviderConfig
}

input auto_optimize_workload_input {
  account_id: uuid!
  resource_filter: [autopilot_resource_filter]!
  status: String
}

input auto_optimize_update_status_request {
  id: uuid!
  status: String!
  account_id: uuid!
}

input TraceHeatMapWhereRequest {
  _and: [TraceWhereRequest]
  _or: [TraceWhereRequest]
  _not: TraceWhereRequest
  timestamp: QueryWhereDatetimeRequest
  account_id: QueryWhereStringRequest
  trace_id: QueryWhereStringRequest
}

input auto_optimize_skip_request {
  id: uuid!
  by_minutes: Int
}

input AgentRegenerateTokenInput {
  account_id: String!
  agent_type: String
}

input CreateApprovalInput {
  account_id: uuid!
  minimum_approval: Int
  reviewers: [uuid]
  reviewees: [uuid]
}

input UpdateApprovalInput {
  id: uuid!
  account_id: uuid!
  minimum_approval: Int
  reviewers: [uuid]
  reviewees: [uuid]
}

input AutopilotApprovalUpdateInput {
  approval_id: uuid!
  account_id: uuid!
  status: String!
  reviewer_comments: String
}

input ApplicationRequest {
  name: String!
  namespace: String!
  kind: String!
}

input ApplicationMetricsRequest {
  account_id: String!
  applications: [ApplicationRequest]
  start_at: Datetime
  end_at: Datetime
}

input NudgebeeAIGetPrometheusQueryRequest {
  account_id: String!
  query: String!
  user_id: String
}

input AIGetPrometheusQueryRequest {
  account_id: String!
  query: String!
  user_id: String
  async: Boolean
}

input AIGetLokiQueryRequest {
  account_id: String!
  query: String!
  user_id: String
  async: Boolean
}

input AiFeedbackCreateRequest {
  session_id: String!
  module: String!
  question: String!
  llm_response: String!
  user_corrected_response: String!
  additional_notes: String!
  conversation_id: String!
  cloud_account_id: String!
  useful: Boolean!
}

input GetInvestigateQueryRequest {
  account_id: String!
  query: String!
  user_id: String
  conversation_id: String
  session_id: String
  async: Boolean!
  config: AIConfigInput
}

input AIGetESDslQueryRequest {
  account_id: String!
  query: String!
  user_id: String
  async: Boolean
}

input auto_pilot_policy_delete_input {
  id: uuid!
  account_id: uuid!
}

input GetFeedbackWhereRequest {
  _and: [GetFeedbackWhereRequest]
  _or: [GetFeedbackWhereRequest]
  _not: GetFeedbackWhereRequest
  cloud_account_id: QueryWhereStringRequest
  session_id: QueryWhereStringRequest
  module: QueryWhereStringRequest
  useful: QueryWhereBooleanRequest
  question: QueryWhereStringRequest
  user_id: QueryWhereStringRequest
}

input InsightRequest {
  account_id: String!
}

input SloReportObservationWhereRequest {
  _and: [SloReportObservationWhereRequest]
  _or: [SloReportObservationWhereRequest]
  _not: SloReportObservationWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
  workload_namespace: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
}

input SaveLLMConversationRequest {
  conversation_id: String!
}

input ListAgentRequest {
  account_id: String!
}

input ListToolRequest {
  account_id: String!
}

input AIListModelsRequest {
  account_id: String!
}

input AIGetModelConfigRequest {
  account_id: String!
  conversation_id: String
}

input AIFollowupRequest {
  account_id: String!
  query: String!
  user_id: String
  conversation_id: String!
  message_id: String!
  agent_id: String!
  async: Boolean!
  config: AIConfigInput
}

input AIConfigInput {
  llm_provider: String
  llm_model_name: String
}

input ApplicationDeploymentCompareRequest {
  applications: [ApplicationRequest]
  account_id: String!
}

input CreateAgentRequest {
  account_id: String!
  agent: AgentRequest!
  override_agent: Boolean
}

input AgentRequest {
  name: String
  description: String
  config: jsonb
  system_prompt: String
  system_prompt_variables: [String]
  tools: [String]
  rags: [RagDataInput]
}

input CreateToolRequest {
  account_id: String!
  tool: ToolRequest!
}

input ToolRequest {
  name: String!
  description: String!
  runbook_action_id: String
  schema: jsonb
  executor_type: String
  config: jsonb
}

input DeleteAgentRequest {
  account_id: String!
  name: String!
}

input DeleteToolRequest {
  account_id: String!
  name: String!
}

input CreateIntegrationConfigRequest {
  integration_id: String
  account_ids: [String]!
  integration_name: String!
  integration_config_name: String!
  integration_config_values: [IntegrationConfigValueInput]
  tags: jsonb
  skip_validation: Boolean
  source: String
}

input IntegrationConfigValueInput {
  name: String!
  value: String!
  is_encrypted: Boolean
}

input DeleteIntegrationConfigRequest {
  integration_name: String!
  integration_config_name: String!
  integration_config_status: String
  source: String
}

input IntegrationTestConnectionRequest {
  integration_id: String!
}

input IntegrationTestConnectionConfigRequest {
  integration_name: String!
  account_ids: [String]!
  integration_config_values: [IntegrationConfigValueInput]!
  source: String
}

input AnomalyTemplateListRequest {
  account_id: String
}

input TriggerAnomalyExecuteRequest {
  account_id: String!
}

input ListAnomalyWhereRequest {
  account_id: QueryWhereStringRequest
  is_anomaly: QueryWhereBooleanRequest
  namespace: QueryWhereStringRequest
  anomaly_type: QueryWhereStringRequest
  config_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
}

input GetAutopilot {
  account_id: String!
  event_ids: [String]!
}

input AlertActionListRequest {
  cloud_account_id: String!
  query: String!
  source: String
  alert_type: String
}

input IntegrationSchemaRequest {
  integration_name: String!
  source: String!
}

input IntegrationAutogenOptionsRequest {
  autogen_func: String!
  form_values: jsonb!
}

input DeleteLLMConversationRequest {
  conversation_id: String!
}

input DeleteLlmConversationByIdRequest {
  conversation_id: uuid!
}

input AiGetConversationV3Request {
  account_id: uuid!
  conversation_id: uuid
  session_id: String
  since: timestamptz
}

input RagDataInput {
  data: jsonb!
  format: String
  filename: String
}

input AgentStatusInput {
  id: uuid!
  status: String!
}

input UpdateAgentRequest {
  account_id: String!
  agent: AgentRequestUpdateStruct!
}

input AgentRequestUpdateStruct {
  id: uuid!
  name: String
  description: String
  system_prompt: String
  system_prompt_variables: [String!]
  tools: [String!]
  config: jsonb
  status: String
}

input ListAnomalyV3WhereRequest {
  account_id: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  anomaly_type: QueryWhereStringRequest
  name: QueryWhereStringRequest
}

input AIGetConversationSuggestionRequest {
  conversation_id: uuid!
  account_id: uuid!
  user_id: uuid!
  message_id: uuid!
}

input ResourceGroupingsWhereRequest {
  _and: [ResourceGroupingsWhereRequest]
  _or: [ResourceGroupingsWhereRequest]
  _not: ResourceGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  resource_service_name: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  resource_name: QueryWhereStringRequest
  resource_status: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  resource_region: QueryWhereStringRequest
  resource_arn: QueryWhereStringRequest
  spend_date: QueryWhereDatetimeRequest
  recommendation_rule_name: QueryWhereStringRequest
  recommendation_category: QueryWhereStringRequest
  recommendation_status: QueryWhereStringRequest
  recommendation_severity: QueryWhereStringRequest
  resource_tags: QueryWhereStringRequest
}

input LLMRagGroupingWhereRequest {
  _and: [LLMRagGroupingWhereRequest]
  _or: [LLMRagGroupingWhereRequest]
  _not: LLMRagGroupingWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  agent_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  data: QueryWhereStringRequest
  data_format: QueryWhereStringRequest
  data_filename: QueryWhereStringRequest
  created_by: QueryWhereStringRequest
  updated_by: QueryWhereStringRequest
}

input auto_runbook_action_delete_one_input {
  id: uuid!
  account_id: uuid!
}

input ApplicationProfileConvertRequest {
  account_id: String!
  base64_profile: String!
}

input ApplicationProfileRequest {
  account_id: String!
  namespace: String!
  pod_name: String!
  profile_type: String
  application_language: String
  profile_duration: Int
  profile_tool: String
  lang: String
  output_type: String
}

input ApplicationProfileGetRequest {
  account_id: String!
  profile_id: String!
}

input auto_runbook_task_approval_request_body {
  task_id: uuid!
  status: String!
  account_id: uuid!
}

input ApplicationProfileWhereRequest {
  _and: [ApplicationProfileWhereRequest]
  _or: [ApplicationProfileWhereRequest]
  _not: ApplicationProfileWhereRequest
  namespace: QueryWhereStringRequest
  pod_name: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
}

input UpdateToolRequest {
  account_id: String!
  tool: UpdateToolRequestBody!
}

input UpdateToolRequestBody {
  id: String!
  name: String!
  description: String
  runbook_action_id: String
  schema: jsonb
  executor_type: String
  config: jsonb
  status: String
}

input TicketGetCommentsActionInput {
  object: TicketGetCommentsObjectInput!
}

input TicketGetCommentsObjectInput {
  ticket_id: String!
  account_id: String!
  source: String!
  integration_id: String!
}

input TicketAddCommentActionInput {
  object: TicketAddCommentObjectInput
}

input TicketAddCommentObjectInput {
  ticket_id: String!
  tenant: String
  account_id: String!
  source: String!
  integration_id: String
  comment: String!
}

input CreateAgentRagInput {
  account_id: String!
  agent: String!
  data: String!
  format: String
  file_name: String
}

input TenantAttributeRequest {
  name: String!
  value: String!
}

input CreateFunctionInput {
  name: String!
  description: String!
  prompt: String!
  variables: [String]
  variable_defaults: jsonb
  status: String
  version: Int
}

input AIStopInvestigationRequest {
  account_id: String!
  conversation_id: String!
  user_id: String
}

input auto_runbook_custom_action_update_input {
  id: uuid
  action_name: String!
  description: String!
  status: String
  library_id: uuid!
  account_id: uuid!
  configs: jsonb!
  base_action_configs: jsonb!
}

input SortField {
  column_name: String!
  order: String!
}

input FetchLogRequest {
  account_id: String!
  log_provider: String
  log_provider_source: String
  query: String!
  start_time: Float!
  end_time: Float!
  limit: Int
  offset: Int
  sort_fields: [SortField]
  step_interval: Int
  query_request: jsonb
  request: jsonb
}

input FetchLogLabelRequest {
  account_id: String!
  log_provider: String
  request: jsonb
  start_time: Float
  end_time: Float
  fetch_index: Boolean
}

input FetchLogLabelValuesRequest {
  account_id: String!
  label_name: String!
  log_provider: String
  request: jsonb
  start_time: Float
  end_time: Float
}

input UserTokenCreateRequest {
  name: String!
}

input UserTokenDeleteRequest {
  name: String!
}

input TraceServiceMapRequest {
  account_id: String!
  workload_name: String
  workload_namespace: String
  start_time: String
  end_time: String
  label_filter: [TraceServiceMapLabelFilter]
}

input DefaultProviderRequest {
  account_id: String!
  provider_type: String!
}

input FetchMetricsListRequest {
  account_id: String!
  metric_provider: String
  metric_provider_source: String
  start_time: Float
  end_time: Float
  request: jsonb
}

input UserHistoryInput {
  data: String!
  account_id: String!
  module: String!
  duration: Float!
  status: String!
}

input AIGetConversationUsageMetricsRequest {
  account_id: String!
  conversation_id: String!
  user_id: String
}

input AIGetConversationTimeAggregatesRequest {
  account_id: String!
  user_id: String
  start_date: String!
  end_date: String!
  sources: [String!]
  event_scoped: Boolean
}

input TraceServiceMapLabelFilter {
  key: String!
  value: String!
  operator: String!
}

input TracesV3Input {
  account_id: String!
  provider_type: String
  provider_source: String
  query: String
  start_time: Float!
  end_time: Float!
  limit: Int
  offset: Int
  sort_fields: [SortFieldInput!]
  request: jsonb
  query_request: QueryRequestInput
}

input SortFieldInput {
  column_name: String!
  order: String!
}

input QueryWhereClauseInput {
  _binary: QueryWhereClauseInput
  _and: [QueryWhereClauseInput!]
  _or: [QueryWhereClauseInput!]
  _not: QueryWhereClauseInput
  string: QueryWhereStringRequest
  int: QueryWhereIntRequest
  float: QueryWhereFloatRequest
  datetime: QueryWhereDatetimeRequest
  boolean: QueryWhereBooleanRequest
}

input QueryRequestInput {
  table: String
  columns: [QueryColumnInput!]
  where: jsonb
  group_by: [String!]
  having: jsonb
  limit: Int
  offset: Int
  order_by: [QueryOrderByInput!]
}

input QueryColumnInput {
  name: String
  expr: String
  args: [String!]
}

input QueryOrderByInput {
  column: String
  order: String
}

input TracesV3LabelValuesRequest {
  account_id: String!
  provider_type: String
  provider_source: String
  label: String
  start_time: Float
  end_time: Float
  query_request: QueryRequestInput
}

input CreateExtensionAgentDetails {
  agent_name: String!
  prompt: String
  tools: [String]
}

input CreateExtensionAgentRequest {
  account_id: String!
  agent: CreateExtensionAgentDetails
}

input AiDeleteFunctionRequest {
  account_id: String!
  function_id: String!
}

input FetchMetricLabelsRequest {
  account_id: String!
  metric_provider: String
  start_time: Float
  end_time: Float
  request: jsonb
  metric: String!
}

input FetchMetricsLabelValueRequest {
  account_id: String!
  metric_provider: String
  start_time: Float
  end_time: Float
  request: jsonb
  label: String!
}

input UpdateFunctionInput {
  name: String!
  description: String!
  prompt: String!
  variables: [String]
  variable_defaults: jsonb
  status: String
  version: Int
}

input FetchMetricsRequest {
  account_id: String!
  queries: jsonb
  start_time: Float
  end_time: Float
  step_interval: Int
  instant: Boolean
  request: jsonb
  metric_provider: String
  metric_provider_source: String
  labels: jsonb
  query_items: jsonb
}

input UpdateAgentExtensionRequest {
  account_id: String!
  agent: UpdateAgentExtensionDetails
}

input UpdateAgentExtensionDetails {
  agent_name: String!
  prompt: String
  tools: [String]
}

input AIBudgetStatusRequest {
  account_id: String!
}

input AIBudgetConfigListRequest {
  entity_type: String
  entity_id: String
  module: String
}

input AIBudgetConfigUpsertRequest {
  entity_type: String!
  entity_id: String!
  module: String!
  budget_disabled: Boolean
  monthly_cost_limit: Float
  monthly_cost_enabled: Boolean
  monthly_count_limit: Int
  monthly_count_enabled: Boolean
  daily_cost_limit: Float
  daily_cost_enabled: Boolean
  daily_count_limit: Int
  daily_count_enabled: Boolean
}

input AIBudgetConfigDeleteRequest {
  id: String!
}

input WorkflowTaskDefinitionListRequest {
  name: String
  limit: Int
  offset: Int
}

input WorkflowListRequest {
  account_id: String!
  name: String
  tags: String
  limit: Int
  status: String
  last_execution_status: String
  type: String
  created_by: String
  next_page_token: String
}

input WorkflowGetRequest {
  account_id: String!
  id: String!
}

input WorkflowCountRequest {
  account_id: String!
  status: String
  trigger_type: String
}

input WorkflowExecutionCountRequest {
  account_id: String!
  start_date: timestamp
  end_date: timestamp
  status: String
  trigger_type: String
  workflow_id: String
}

input WorkflowCreateRequest {
  account_id: String!
  workflow: WorkflowRequest!
}

input WorkflowRequest {
  definition: WorkflowDefinitionRequest!
  tags: jsonb
  name: String!
  status: String
  created_from_session_id: String
}

input WorkflowDefinitionRequest {
  version: String
  inputs: [WorkflowDefinitionInputRequest]
  triggers: [WorkflowDefinitionTriggerRequest]
  tasks: [WorkflowDefinitionTaskRequest]
  hooks: [WorkflowDefinitionHookRequest]
  output: jsonb
  retry_policy: WorkflowDefinitionRetryPolicyRequest
  timeout: String
  layout: WorkflowDefinitionLayoutRequest
}

input WorkflowDefinitionLayoutRequest {
  viewport: WorkflowViewportRequest
}

input WorkflowViewportRequest {
  x: Float!
  y: Float!
  zoom: Float!
}

input WorkflowTaskLayoutRequest {
  x: Float!
  y: Float!
}

input WorkflowDefinitionInputRequest {
  id: String!
  description: String
  type: String
  default: jsonb
  required: Boolean
}

input WorkflowDefinitionTriggerRequest {
  type: String!
  params: jsonb
  layout: WorkflowTaskLayoutRequest
}

input WorkflowDefinitionTaskRequest {
  id: String!
  type: String!
  params: jsonb
  tasks: [WorkflowDefinitionTaskRequest]
  set_state: jsonb
  set_vars: jsonb
  depends_on: [String!]
  if: String
  matrix: jsonb
  failure_policy: WorkflowDefinitionFailurePolicyRequest
  timeout: String
  hooks: WorkflowDefinitionHookRequest
  disabled: Boolean
  _prev_edges: jsonb
  layout: WorkflowTaskLayoutRequest
}

input WorkflowDefinitionRetryPolicyRequest {
  initial_interval: String
  backoff_coefficient: Float
  maximum_interval: String
  maximum_attempts: Int
  non_retryable_error_types: [String]
}

input WorkflowDefinitionHookRequest {
  success: [WorkflowDefinitionHookActionRequest]
  failure: [WorkflowDefinitionHookActionRequest]
  always: [WorkflowDefinitionHookActionRequest]
}

input WorkflowDefinitionHookActionRequest {
  type: String!
  params: jsonb
}

input WorkflowTriggerRequest {
  account_id: String!
  id: String!
  inputs: jsonb
  event_id: String
  use_draft_definition: Boolean
}

input WorkflowDryrunRequest {
  account_id: String!
  definition: WorkflowDefinitionRequest!
  inputs: jsonb
  name: String
}

input WorkflowExecutionListRequest {
  account_id: String!
  id: String!
  limit: Int
  next_page_token: String
  status: String
  trigger_type: String
}

input WorkflowExecutionListForEventRequest {
  account_id: String!
  event_id: String!
}

input WorkflowExecutionGetRequest {
  account_id: String!
  id: String!
  workflow_id: String!
}

input TraceHeatMapInput {
  account_id: String!
  trace_id: String!
  start_time: Float
  end_time: Float
  provider_type: String
  provider_source: String
}

input WorkflowUpdateRequest {
  account_id: String!
  workflow: WorkflowRequest!
  id: String!
}

input FetchLogQueryRequest {
  account_id: String!
  query_request: jsonb
  log_provider: String
  log_provider_source: String
  start_time: bigint
  end_time: bigint
}

input WorkflowDeleteRequest {
  account_id: String!
  id: String!
}

input WorkflowListCallersRequest {
  account_id: String!
  id: String!
}

input EventTimelineInput {
  event_id: String!
}

input kg_get_node_input {
  node_id: String!
}

input kg_get_edge_input {
  edge_id: String!
}

input kg_get_filter_options_input {
  account_ids: [String]
  node_types: [String]
  labels: jsonb
  label_keys: [String]
  attributes: jsonb
  attribute_keys: [String]
  node_ids: [String]
  levels: Int
}

input kg_get_complete_graph_input {
  sources: [String]
  account_ids: [String]
  node_types: [String]
  labels: jsonb
  attributes: jsonb
  node_ids: [String]
  levels: Int
  subgraph: Boolean
}

input kg_search_nodes_input {
  name: String
  name_pattern: String
  namespace: String
  cluster: String
  node_types: [String]
  source: String
  labels: jsonb
  account_ids: [String]
  limit: Int
}

input kg_traverse_input {
  node_ids: [String]
  name: String
  name_pattern: String
  namespace: String
  cluster: String
  search_node_types: [String]
  direction: String!
  max_depth: Int
  relationship_types: [String]
  node_types: [String]
  exclude_node_types: [String]
  max_nodes: Int
}

input kg_upsert_tenant_filter_input {
  account_ids: [String!]!
  flow_sources: [String!]!
}

input kg_get_filter_values_input {
  filter_type: String!
  filter_key: String!
}

input ConfigSaveInput {
  """
  Optional. When omitted (or empty), the config is saved at the tenant level
  and is visible to every account in the tenant. When provided, the config is
  account-scoped and overrides any tenant-level config with the same key for
  that account at workflow execution time.
  """
  account_id: String
  config: ConfigSaveInputObject!
}

input ConfigSaveInputObject {
  id: String
  key: String
  value: String
  type: String
  labels: jsonb
  metadata: jsonb
  tenant_id: String
  account_id: String
}

input GetConfigInput {
  """Optional. Omit/empty for tenant-level lookup."""
  account_id: String
  key: String!
  decrypt: Boolean
}

input ConfigListRequest {
  """
  Optional. When omitted (or empty), only tenant-level configs are returned.
  When provided, tenant-level + that-account-level configs are merged with
  account-level rows winning on key collision (the effective view a workflow
  running under that account would see).
  """
  account_id: String
  labels: jsonb
  decrypt: Boolean
}

input ConfigDeleteInput {
  """Optional. Omit/empty to delete the tenant-level row."""
  account_id: String
  key: String!
}

input EventUpdateRequest {
  event_id: String!
  urgency: String!
}

input EventFilterValuesRequest {
  account_id: String
  filter_types: [String!]!
  label_key: String
  start_time: timestamptz
  end_time: timestamptz
  limit: Int
}

input LogGroupRequest {
  account_id: String!
  log_provider: String
  log_provider_source: String
  start_time: Float!
  end_time: Float!
  request: jsonb
}

input kg_get_node_neighbors_input {
  node_id: uuid!
}

input AIGenerateWorkflowRequest {
  query: String!
  conversation_id: String
  session_id: String
  account_id: String!
  user_id: String
  message_id: String
  agent_id: String
  async: Boolean
  config: jsonb
  source: String
}

input auto_optimize_ticket_config {
  enabled: Boolean
  configuration_id: String
  assignee: String
  project_key: String
  source: String
  severity: String
  description: String
  additional_fields: jsonb
  ticket_type: String
  platform: String
}

input KnowledgebaseInput {
  name: String!
  description: String
  data: String!
  format: String!
  file_name: String!
}

input KnowledgebaseUpdateInput {
  id: String!
  name: String
  description: String
  data: String
  format: String
  file_name: String
}

input CreateKBRequest {
  account_id: String!
  knowledgebase: KnowledgebaseInput!
}

input GetKBRequest {
  account_id: String!
  id: String!
}

input ListKBRequest {
  account_id: String!
}

input UpdateKBRequest {
  account_id: String!
  knowledgebase: KnowledgebaseUpdateInput!
}

input DeleteKBRequest {
  account_id: String!
  id: String!
}

input ListAgentKBsRequest {
  account_id: String!
  agent_id: String!
}

input MapKBToAgentRequest {
  account_id: String!
  kb_id: String!
  agent_id: String!
}

input UnmapKBFromAgentRequest {
  account_id: String!
  kb_id: String!
  agent_id: String!
}

input ListAgentsWithKBCountsRequest {
  account_id: String!
}

input ListKBAgentMappingsRequest {
  account_id: String!
}

input ListKBAgentsRequest {
  account_id: String!
  kb_id: String!
}

input GlobalContextInput {
  name: String!
  description: String
  data: String!
  format: String!
  file_name: String!
}

input GlobalContextUpdateInput {
  id: String!
  name: String
  description: String
  data: String
  format: String
  file_name: String
}

input CreateGCRequest {
  account_id: String!
  global_context: GlobalContextInput!
}

input GetGCRequest {
  account_id: String!
  id: String!
}

input ListGCRequest {
  account_id: String!
}

input UpdateGCRequest {
  account_id: String!
  global_context: GlobalContextUpdateInput!
}

input DeleteGCRequest {
  account_id: String!
  id: String!
}

input WorkflowDefinitionFailurePolicyRequest {
  action: String
  retry: WorkflowDefinitionRetryPolicyRequest
}

input ExportRecommendationRequest {
  account_id: String!
  category: String
  rule_name: String
  namespace: String
  workload_type: String
  workload_name: String
  status: [String]
  format: String!
}

input ListAIMemoryRequest {
  account_id: String!
  conversation_id: String
  message_id: String
  limit: Int
  offset: Int
  memory_type: String
  query: String
}

input QueryDatabasePerformanceRequest {
  account_id: String!
  database_identifier: String!
  region: String!
  start_time: timestamp
  end_time: timestamp
  granularity_seconds: Int
  include_top_queries: Boolean
  include_wait_events: Boolean
  include_top_users: Boolean
  include_top_hosts: Boolean
  top_n: Int
}

input WorkflowRetriggerRequest {
  account_id: String!
  workflow_id: String!
  execution_id: String!
  inputs: jsonb
}

input WorkflowCompleteApprovalRequest {
  account_id: String!
  workflow_id: String!
  execution_id: String!
  task_id: String!
  status: String!
  comments: String
}

input WorkflowCancelRequest {
  account_id: String!
  id: String!
  execution_id: String!
}

input ListAIReferencesRequest {
  account_id: String!
  conversation_id: String
  message_id: String
  agent_id: String
  limit: Int
  offset: Int
}

input AITriggerInvestigationRequest {
  account_id: String!
  query: String!
  user_id: String
  conversation_id: String
  session_id: String
  source: String
  async: Boolean!
  config: AIConfigInput
  capabilities: AIConfigCapabilitiesInput
  client_tools: [AIConfigClientToolInput]
  images: [AIImageAttachmentInput]
}

input AIImageAttachmentInput {
  data: String
  url: String
  mime_type: String
}

input AIConfigClientToolInput {
  name: String!
  description: String!
  input: AIConfigClientToolSchemaInput
}

input AIConfigClientToolSchemaInput {
  type: String!
  properties: jsonb
  required: [String]
}

input AIConfigCapabilitiesInput {
  disabled_tools: [String]
}

input AISubmitClientToolCallRequest {
  account_id: String!
  conversation_id: String!
  agent_id: String!
  message_id: String!
  async: Boolean!
  results: [AISubmitClientToolCallResult]
}

input AISubmitClientToolCallResult {
  tool_id: String!
  result: String
  status: String
}

input MetricsQueryUtilisationRequest {
  account_id: String!
  metric_provider: String
  metric_provider_source: String
  start_time: Float
  end_time: Float
  request: jsonb!
}

input AwsOnboardStatusInput {
  external_id: String!
}

input AwsEventBridgeOnboardInput {
  account_id: String!
}

input AzureEventGridOnboardInput {
  account_id: String!
}

input CheckGcpMonitoringPermissionInput {
  account_id: String!
}

input SetupGcpMonitoringWebhookInput {
  account_id: String!
  webhook_url: String!
}

input GcpPubSubOnboardInput {
  account_id: String!
}

input NotificationRulesWhereRequest {
  _and: [NotificationRulesWhereRequest]
  _or: [NotificationRulesWhereRequest]
  _not: NotificationRulesWhereRequest
  id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  source: QueryWhereStringRequest
  cluster: QueryWhereStringRequest
  aggregation_key: QueryWhereStringRequest
  workload: QueryWhereStringRequest
  name: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  is_suppressed: QueryWhereBooleanRequest
  severity: QueryWhereStringRequest
  delivery_mode: QueryWhereStringRequest
  frequency: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  created_by_display_name: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  expires_at: QueryWhereDatetimeRequest
}

input UserGroupsWhereRequest {
  _and: [UserGroupsWhereRequest]
  _or: [UserGroupsWhereRequest]
  _not: UserGroupsWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  owner: QueryWhereStringRequest
  owner_display_name: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

input IntegrationWhereRequest {
  _and: [IntegrationWhereRequest]
  _or: [IntegrationWhereRequest]
  _not: IntegrationWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  type: QueryWhereStringRequest
  source: QueryWhereStringRequest
  status: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  created_by: QueryWhereStringRequest
  updated_by: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  created_by_display_name: QueryWhereStringRequest
  updated_by_display_name: QueryWhereStringRequest
  config_value_name: QueryWhereStringRequest
  config_value_value: QueryWhereStringRequest
}

input CloudAccountWhereRequest {
  _and: [CloudAccountWhereRequest]
  _or: [CloudAccountWhereRequest]
  _not: CloudAccountWhereRequest
  account_name: QueryWhereStringRequest
  account_number: QueryWhereStringRequest
  id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  created_by: QueryWhereStringRequest
  created_by_name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  cloud_provider: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

input AgentHealthWhereRequest {
  _and: [AgentHealthWhereRequest]
  _or: [AgentHealthWhereRequest]
  _not: AgentHealthWhereRequest
  cloud_account_id: QueryWhereStringRequest
  type: QueryWhereStringRequest
  status: QueryWhereStringRequest
  k8s_provider: QueryWhereStringRequest
}

input ValidateCloudCredentialsInput {
  cloud_provider: String!
  tenant_id: String
  client_id: String
  client_secret: String
  subscription_id: String
  credentials_json: String
  project_id: String
  billing_project_id: String
  billing_dataset_id: String
  billing_table_id: String
}

input UserTenantRolesWhereRequest {
  _and: [UserTenantRolesWhereRequest]
  _or: [UserTenantRolesWhereRequest]
  _not: UserTenantRolesWhereRequest
  username: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  entity_id: QueryWhereStringRequest
  entity_type: QueryWhereStringRequest
  role: QueryWhereStringRequest
}

input UsersByTenantWhereRequest {
  _and: [UsersByTenantWhereRequest]
  _or: [UsersByTenantWhereRequest]
  _not: UsersByTenantWhereRequest
  id: QueryWhereStringRequest
  display_name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  username: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

input UserSuperAdminRoleWhereRequest {
  user_id: QueryWhereStringRequest
}

input UserAccountIdsByTenantWhereRequest {
  tenant: QueryWhereStringRequest
}

input UserDetailsWhereRequest {
  id: QueryWhereStringRequest
  username: QueryWhereStringRequest
}

input UserByProviderAccountWhereRequest {
  account_id: QueryWhereStringRequest
  provider: QueryWhereStringRequest
}

input EventRulesWhereRequest {
  _and: [EventRulesWhereRequest]
  _or: [EventRulesWhereRequest]
  _not: EventRulesWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  alert: QueryWhereStringRequest
  expr: QueryWhereStringRequest
  duration: QueryWhereStringRequest
  source: QueryWhereStringRequest
  category: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  enabled: QueryWhereBooleanRequest
  created_by: QueryWhereStringRequest
  updated_by: QueryWhereStringRequest
  is_editable: QueryWhereBooleanRequest
  name: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input EventRulesGroupingsWhereRequest {
  _and: [EventRulesGroupingsWhereRequest]
  _or: [EventRulesGroupingsWhereRequest]
  _not: EventRulesGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  category: QueryWhereStringRequest
  source: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  enabled: QueryWhereBooleanRequest
  alert: QueryWhereStringRequest
}

input SloConfigWhereRequest {
  _and: [SloConfigWhereRequest]
  _or: [SloConfigWhereRequest]
  _not: SloConfigWhereRequest
  tenant_id: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  description: QueryWhereStringRequest
  method: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  workload_namespace: QueryWhereStringRequest
  enabled: QueryWhereBooleanRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  window: QueryWhereFloatRequest
  goal: QueryWhereFloatRequest
  threshold: QueryWhereFloatRequest
}

input SloReportWhereRequest {
  _and: [SloReportWhereRequest]
  _or: [SloReportWhereRequest]
  _not: SloReportWhereRequest
  tenant_id: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  config_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  workload_namespace: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  timestamp: QueryWhereDatetimeRequest
}

input SloReportGroupingsWhereRequest {
  _and: [SloReportGroupingsWhereRequest]
  _or: [SloReportGroupingsWhereRequest]
  _not: SloReportGroupingsWhereRequest
  tenant_id: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  workload_namespace: QueryWhereStringRequest
  status: QueryWhereStringRequest
  config_id: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
}

input InsightWhereRequest {
  _and: [InsightWhereRequest]
  _or: [InsightWhereRequest]
  _not: InsightWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  title: QueryWhereStringRequest
  type: QueryWhereStringRequest
  source: QueryWhereStringRequest
  unique_id: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input AgentPlaybookWhereRequest {
  _and: [AgentPlaybookWhereRequest]
  _or: [AgentPlaybookWhereRequest]
  _not: AgentPlaybookWhereRequest
  tenant_id: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  source: QueryWhereStringRequest
  processor: QueryWhereStringRequest
  alert_name: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input TicketsWhereRequest {
  _and: [TicketsWhereRequest]
  _or: [TicketsWhereRequest]
  _not: TicketsWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  created_by: QueryWhereStringRequest
  reference_id: QueryWhereStringRequest
  ticket_type: QueryWhereStringRequest
  status: QueryWhereStringRequest
  ticket_id: QueryWhereStringRequest
  assignee: QueryWhereStringRequest
  integration_id: QueryWhereStringRequest
  severity: QueryWhereStringRequest
  title: QueryWhereStringRequest
  source: QueryWhereStringRequest
  platform: QueryWhereStringRequest
  project_key: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input AutoPilotWhereRequest {
  _and: [AutoPilotWhereRequest]
  _or: [AutoPilotWhereRequest]
  _not: AutoPilotWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  category: QueryWhereStringRequest
}

input AutoPilotGroupingsWhereRequest {
  _and: [AutoPilotGroupingsWhereRequest]
  _or: [AutoPilotGroupingsWhereRequest]
  _not: AutoPilotGroupingsWhereRequest
  id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  category: QueryWhereStringRequest
  name: QueryWhereStringRequest
}

input UpgradePlanAuditWhereRequest {
  _and: [UpgradePlanAuditWhereRequest]
  _or: [UpgradePlanAuditWhereRequest]
  _not: UpgradePlanAuditWhereRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  plan_id: QueryWhereStringRequest
  step_id: QueryWhereStringRequest
  task_id: QueryWhereStringRequest
  field: QueryWhereStringRequest
  action: QueryWhereStringRequest
  actioned_by: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
}

input recommendation_rule_list_input {
  rule_name: String
  category: String
  recommendation_id: String
}

input AiGetWorspaceFile {
  account_id: String!
  conversation_id: String!
  path: String!
  download: Boolean
}

input cloud_account_update_input {
  id: uuid!
  status: String
  account_name: String
  data: jsonb
}

input cloud_account_attr_object {
  cloud_account_id: uuid!
  name: String!
  value: String!
}

input cloud_account_attrs_upsert_input {
  objects: [cloud_account_attr_object!]!
}

input messaging_platform_list_input {
  platform: String
}

input messaging_platform_update_input {
  id: uuid!
  channels: jsonb!
}

input messaging_platform_delete_input {
  id: uuid!
}

input featureflag_upsert_input {
  feature_id: String!
  status: String!
  account_id: String
}

input application_group_mapping_item {
  namespace_name: String!
  workload_name: String!
  workload_kind: String!
  account_id: String!
  cloud_resource_id: String
}

input cloud_resource_attribute_item {
  resource_id: String!
  account_id: String!
  name: String!
  value: String
  labels: String
}

input AIGetRcaFormatRequest {
  account_id: String!
}

input AISaveRcaFormatRequest {
  account_id: String!
  format: String
}

type WorkflowTemplateType {
  id: String!
  tenant_id: String
  account_id: String
  name: String!
  description: String
  category: String
  icon: String
  definition: WorkflowDefinition!
  template_variables: [TemplateVariableType]
  tags: jsonb
  is_system: Boolean
  status: String
  created_by: String
  created_by_user: WorkflowUser
  updated_by: String
  updated_by_user: WorkflowUser
  created_at: timestamp
  updated_at: timestamp
}

type TemplateVariableType {
  id: String!
  input_ref: String
  display_name: String
  help_text: String
  placeholder: String
  validation: String
  required: Boolean
  group: String
  type: String
  options: [String]
}

type WorkflowTemplateListResponse {
  total_count: Int
  templates: [WorkflowTemplateType]
  next_page_token: String
}

type EventGetTriageRuleEventsOutput {
  events: [TriageRuleEventOutput]
  total: Int
  limit: Int
  offset: Int
}

type TriageRuleEventOutput {
  id: String
  account_id: String
  title: String
  subject_name: String
  subject_namespace: String
  subject_type: String
  priority: String
  status: String
  nb_status: String
  starts_at: String
  classified_at: String
  classification: String
}

type skip_runbook_response {
  status: String!
}

type cloud_accounts_insert_one_output {
  id: uuid!
  access_key: String
  access_secret: String
}

type cloud_account_update_output {
  affected_rows: Int!
}

type cloud_account_attrs_upsert_output {
  affected_rows: Int!
}

type MessagingPlatformItem {
  id: uuid!
  username: String
  team_name: String
  created_at: String
  team_id: String
  channels: jsonb
  platform: String
}

type messaging_platform_list_output {
  data: [MessagingPlatformItem!]!
}

type messaging_platform_update_output {
  affected_rows: Int!
}

type messaging_platform_delete_output {
  id: uuid!
}

type jira_configurations_insert_one_output {
  data: jira_configuration_data!
}

type ticket_integration_create_config_output {
  id: uuid!
}

type ticket_test_connection_output {
  success: Boolean!
  message: String
  tool: String
  projects_count: Int
  error: String
}

type tickets_insert_one_output {
  data: ticket_insert_data_resp!
}

type DeleteByPkResponse {
  id: String!
}

type AlertRulesQueryResponse {
  count: Int!
  alert_rules: [AlertRulesSummary!]!
}

type AlertRulesSummary {
  id: String!
  title: String!
  description: String!
  status: String!
  state: String!
  label: jsonb
  source: String
  updated_at: String
  interval: String
  created_by: String
  updated_by: String
  evaluation_period: String
  alert_activated_at: String
}

type AlertQueryResponse {
  count: Int!
  alerts: [AlertSummary!]!
}

type AlertSummary {
  id: String!
  rule_id: String!
  title: String!
  state: String!
  label: jsonb
  alert_activated_at: String
}

type users_insert_one_output {
  status: String!
  message: String
  id: String
  tenant_id: String
}

type user_tenant_role {
  entity_id: String
  entity_type: String
  role: String
}

type user_tenant_roles_output {
  roles: [user_tenant_role!]!
  tenant_name: String!
}

type user_sync_roles_output {
  added: Int!
  removed: Int!
}

type user_onboard_output {
  id: String
  status: String!
  message: String
}

type user_update_accessed_output {
  updated: Int!
}

type user_create_auth_output {
  id: String!
  name: String!
  user_status: String!
  user_id: String!
}

type user_update_status_output {
  id: String!
}

type user_delete_auth_output {
  id: String!
}

type user_update_default_tenant_output {
  updated: Int!
}

type tenant_insert_one_output {
  id: uuid!
}

type tenant_list_all_output {
  id: uuid!
  name: String!
}

type aws_account_onboard_output {
  url: String!
}

type AwsOrgOnboardOutput {
  verification_token: String!
  stackset_template_url: String!
  stackset_launch_url: String!
  sns_topic_arn: String!
  stackset_parameters: jsonb
}

type AwsOrgStatusOutput {
  org_name: String!
  org_status: String!
  member_accounts: [OrgMemberStatus]
}

type OrgMemberStatus {
  account_id: String!
  account_number: String!
  account_name: String!
  status: String!
  created_at: String
}

type AwsOrgRefreshTokenOutput {
  verification_token: String!
}

type AwsOnboardStatusOutput {
  status: String!
  account_id: String
  account_name: String
  account_number: String
  is_reconnected: Boolean
}

type AwsEventBridgeOnboardOutput {
  url: String!
  external_id: String!
}

type AzureEventGridOnboardOutput {
  url: String!
  external_id: String!
  webhook_url: String!
}

type CheckGcpMonitoringPermissionOutput {
  has_permission: Boolean!
  error_detail: String
}

type SetupGcpMonitoringWebhookOutput {
  channel_name: String
}

type GcpPubSubOnboardOutput {
  deployment_manager_url: String!
  external_id: String!
  pubsub_project_id: String!
  subscription_name: String!
  template_yaml_url: String!
}

type ValidateCloudCredentialsOutput {
  success: Boolean!
  provider: String!
  missingPermissions: [String!]
  permissionDetails: [PermissionStatusOutput!]!
  errorMessage: String
}

type PermissionStatusOutput {
  permission: String!
  hasAccess: Boolean!
  errorDetail: String
}

input AzureListSubscriptionsInput {
  tenant_id: String!
  client_id: String!
  client_secret: String!
}

type AzureSubscriptionOutput {
  subscription_id: String!
  display_name: String!
  state: String!
}

type AzureListSubscriptionsOutput {
  subscriptions: [AzureSubscriptionOutput!]!
}

input AzureBulkOnboardSubInput {
  subscription_id: String!
  display_name: String
}

input AzureBulkOnboardInput {
  account_name: String!
  tenant_id: String!
  client_id: String!
  client_secret: String!
  subscriptions: [AzureBulkOnboardSubInput!]!
}

type AzureBulkOnboardAccountResultOutput {
  subscription_id: String!
  account_id: String!
  status: String!
  error: String
}

type AzureBulkOnboardOutput {
  accounts: [AzureBulkOnboardAccountResultOutput!]!
  parent_id: String!
}

input GcpListProjectsInput {
  credentials_json: String!
}

type GcpProjectOutput {
  project_id: String!
  name: String!
  state: String!
}

type GcpListProjectsOutput {
  projects: [GcpProjectOutput!]!
}

input GcpBulkOnboardInput {
  account_name: String!
  credentials_json: String!
  project_ids: [String!]!
  billing_project_id: String
  billing_dataset_id: String
  billing_table_id: String
}

type BulkOnboardAccountResultOutput {
  project_id: String!
  account_id: String!
  status: String!
  error: String
}

type GcpBulkOnboardOutput {
  accounts: [BulkOnboardAccountResultOutput!]!
  parent_id: String!
}

type get_openai_query_recommendations_output {
  get_result: String!
}

type get_query_recommendations_output {
  data: query_recommendation_object!
}

type get_query_profile_stat_output {
  data: [jsonb]!
}

type query_recommendation_object {
  recommendation: String!
}

type apply_recommendation_output {
  data: [jsonb]!
}

type resource_enhance_monitoring_output {
  message: String
}

type autopilot_insert_one_output {
  id: uuid!
}

type recommendation_response {
  data: jsonb!
}

type metrics_response {
  data: jsonb!
}

type DwQueryGroupingsResponse {
  rows: [DwQueryGroupingsRowResponse]
}

type DwQueryGroupingsRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  database_name: String
  db_username: String
  query_remote_ip: String
  query_type: String
  query_status: String
  warehouse_name: String
  query_normalized: String
  query_normalized_md5: String
  query_text: String
  query_started_at: Datetime
  avg_query_exec_duration_micro: Float
  max_query_exec_duration_micro: Float
  sum_query_exec_duration_micro: Float
  avg_bill: Float
  max_bill: Float
  sum_bill: Float
  avg_bytes_spilled_locally: Float
  max_bytes_spilled_locally: Float
  sum_bytes_spilled_locally: Float
  avg_bytes_spilled_remotely: Float
  max_bytes_spilled_remotely: Float
  sum_bytes_spilled_remotely: Float
  avg_bytes_scanned: Float
  max_bytes_scanned: Float
  sum_bytes_scanned: Float
  avg_partitions_scanned: Float
  max_partitions_scanned: Float
  sum_partitions_scanned: Float
  avg_query_planning_duration_micro: Float
  max_query_planning_duration_micro: Float
  sum_query_planning_duration_micro: Float
  avg_query_queue_duration_micro: Float
  max_query_queue_duration_micro: Float
  sum_query_queue_duration_micro: Float
  avg_query_returned_bytes: Float
  max_query_returned_bytes: Float
  sum_query_returned_bytes: Float
  avg_query_returned_rows: Float
  max_query_returned_rows: Float
  sum_query_returned_rows: Float
  avg_rpu: Float
  max_rpu: Float
  sum_rpu: Float
  max_query_started_at: Datetime
  min_query_started_at: Datetime
  query_count: Int
  db_username_list: [String]
  query_remote_ip_list: [String]
  database_name_list: [String]
}

type K8sPodGroupingsResponse {
  rows: [K8sPodGroupingsRowResponse]
}

type K8sPodGroupingsRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  external_id: String
  name: String
  workload_type: String
  namespace: String
  status: String
  node_name: String
  is_active: Boolean
  pod_fqdn: String
  count: Int
  workload_name: String
}

type MetricGroupingsResponse {
  rows: [MetricGroupingsRowResponse]
}

type MetricGroupingsRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  metric: String
  timestamp: Datetime
  count_value: Int
  sum_value: Float
  avg_value: Float
  min_value: Float
  max_value: Float
}

type EventGroupingsResponse {
  rows: [EventGroupingsRowResponse]
}

type EventGroupingsRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  cluster: String
  status: String
  service_key: String
  subject_node: String
  subject_namespace: String
  subject_name: String
  subject_owner: String
  subject_type: String
  priority: String
  category: String
  finding_type: String
  aggregation_key: String
  source: String
  principal: String
  title: String
  created_at: Datetime
  max_created_at: Datetime
  min_created_at: Datetime
  event_count: Float
  count_subject_name: Int
  count_aggregation_key: Int
  distinct_status: Json
  distinct_priority: Json
  distinct_aggregation_key: Json
  distinct_subject_name: Json
  distinct_subject_namespace: Json
  count_priority_high: Int
  count_priority_medium: Int
  count_priority_low: Int
  count_priority_debug: Int
  count_priority_info: Int
  count_application_issues: Int
  count_node_issues: Int
  count_pod_issues: Int
  labels: String
  fingerprint: String
  latest_event_id: String
  computed_score: Int
  computed_priority: String
  score_factors: Json
  score_confidence: Float
  max_computed_score: Int
  count_priority_p0: Int
  count_priority_p1: Int
  count_priority_p2: Int
  count_priority_p3: Int
  latest_computed_score: Int
  latest_score_factors: Json
  latest_score_confidence: Float
  latest_computed_priority: String
  latest_nb_status: String
  latest_title: String
  nb_status: String
  nb_status_changed_at: Datetime
  nb_status_changed_by: String
  count_new_issues: Int
  count_recurring_issues: Int
  fingerprint_first_seen_at: Datetime
  fingerprint_event_count: Int
  is_new_issue: Boolean
}

type auto_playbook_insert_one_output {
  id: uuid
  error: String
}

type DwQueriesResponse {
  rows: [DwQueriesRowResponse]
}

type DwQueriesRowResponse {
  id: String
  tenant_id: String
  account_id: String
  resource_id: String
  database_name: String
  db_username: String
  query_type: String
  query_exec_duration_micro: Int
  bill_total_duration_micro: Int
  bill_interval_from: Datetime
  bill_interval_to: Datetime
  created_at: Datetime
  bill: Float
  rpu: Float
  query_text: String
  query_planning_duration_micro: Int
  query_error_message: String
  query_returned_rows: Int
  query_returned_bytes: Int
  query_usage_limit: String
  query_transaction_id: String
  query_session_id: String
  query_status: String
  query_started_at: Datetime
  query_ended_at: Datetime
  query_id: String
  query_queue_duration_micro: Int
  query_normalized: String
  query_normalized_md5: String
  queue_provision_time: Float
  queue_repair_time: Float
  queue_overload_time: Float
  partitions_scanned: Float
  bytes_scanned: Float
  bytes_spilled_locally: Float
  bytes_spilled_remotely: Float
  transaction_block_time: Float
  query_remote_ip: String
  query_md5: String
  warehouse_name: String
  query_result_cache_hit: Boolean
  tags: Json
}

type EventsResponse {
  rows: [EventsRowResponse]
}

type EventFilterValuesResponse {
  filters: [EventFilterResult!]!
  account_id: String
}

type EventFilterResult {
  filter_type: String!
  values: [EventFilterValueItem!]!
  total: Int!
}

type EventFilterValueItem {
  value: String!
  count: Int
}

type EventsRowResponse {
  id: String
  created_at: Datetime
  updated_at: Datetime
  finding_id: String
  title: String
  description: String
  source: String
  aggregation_key: String
  failure: String
  finding_type: String
  category: String
  priority: String
  subject_type: String
  subject_name: String
  subject_owner: String
  subject_namespace: String
  subject_node: String
  service_key: String
  cluster: String
  ends_at: Datetime
  starts_at: Datetime
  fingerprint: String
  evidences: String
  tenant_id: String
  account_id: String
  resource_id: String
  status: String
  principal: String
  labels: String
  urgency: String
  computed_score: Int
  computed_priority: String
  score_factors: Json
  score_confidence: Float
  nb_status: String
  snoozed_until: Datetime
  nb_status_changed_at: Datetime
  nb_status_changed_by: String
  pr_url: String
  pr_title: String
  fingerprint_first_seen_at: Datetime
  is_new_issue: Boolean
}

type SpendsResponse {
  rows: [SpendsRowResponse]
}

type SpendsRowResponse {
  id: String
  date: Datetime
  amount: Float
  unit: String
  business_unit: String
  tenant: String
  cloud_account: String
  cloud_resource_id: String
  exclude_aggregate: Boolean
  resource_service_name: String
  resource_region: String
  resource_type: String
  tags: Json
}

type SpendGroupingsResponse {
  rows: [SpendGroupingsRowResponse]
}

type SpendGroupingsRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  resource_service_name: String
  resource_region: String
  resource_type: String
  spend_date: Datetime
  spend_amount: Float
  spend_count: Float
  resource_count: Float
  account_count: Float
  currency_type: String
}

type OpenAIResponse {
  data: jsonb!
}

type AuditResponse {
  rows: [AuditRowResponse]
}

type AuditRowResponse {
  id: String
  tenant_id: String
  account_id: String
  user_id: String
  event_time: Datetime
  event_category: String
  event_type: String
  event_prev_state: String
  event_state: String
  event_actor: String
  event_target: String
  event_action: String
  event_status: String
  transaction_id: String
  event_attr: Json
}

type AuditGroupingResponse {
  rows: [AuditGroupingRowResponse]
}

type AuditGroupingRowResponse {
  tenant_id: String
  account_id: String
  user_id: String
  event_time: Datetime
  event_category: String
  event_type: String
  event_actor: String
  event_target: String
  event_action: String
  event_status: String
  transaction_id: String
  count: Int
}

type response_data {
  insert_tickets_one: tickets_create
}

type tickets_create {
  id: uuid!
}

type insert_jira_configurations_one {
  id: String
}

type jira_configuration_data {
  insert_jira_configurations_one: insert_jira_configurations_one_resp!
}

type insert_jira_configurations_one_resp {
  id: uuid!
}

type ticket_data {
  insert_tickets_one: insert_ticket_one_resp!
}

type insert_ticket_one_resp {
  id: uuid
  error: String
  action: String
  message: String
  ticket_id: String
  url: String
}

type ticket_insert_data_resp {
  insert_tickets_one: insert_ticket_one_resp!
}

type NBVersionResponse {
  agent_version_latest: String!
}

type notification_channel_list_resp {
  data: jsonb
  error: jsonb
}

type notification_send_test_resp {
  success: Boolean
  platform: String
  error: String
}

type notification_user_list_resp {
  data: jsonb
  error: jsonb
}

type disable_runbook_response {
  status: String!
}

type update_runbook_status_response {
  status: String!
}

type AlertRuleResponse {
  response: Boolean!
}

type auto_optimize_recommendation_output {
  recommendation: [uuid!]
}

type security_scan_image_output {
  data: [jsonb]!
}

type tenant_user_roles_upsert_one_output {
  status: String!
  message: String!
}

type tenant_group_roles_upsert_one_output {
  status: String!
  message: String!
}

type account_user_roles_upsert_one_output {
  status: String!
  message: String!
}

type account_group_roles_upsert_one_output {
  status: String!
  message: String!
}

type TracesResponse {
  rows: [TraceRowResponse]
}

type TraceRowResponse {
  trace_id: String
  timestamp: Datetime
  workload_name: String
  workload_namespace: String
  duration_ns: Float
  status_code: String
  span_name: String
  resource: String
  account_id: String
  destination_workload_name: String
  destination_workload_namespace: String
  destination_name: String
  headers: String
  http_status_code: String
  request_payload: String
  http_response: String
  span_id: String
  parent_span_id: String
  trace_source: String
  spanattributes: String
}

type auto_runbook_insert_one_output {
  id: uuid
  error: String
}

type auto_optimize_insert_one_output {
  id: uuid!
}

type auto_runbook_skip_response {
  message: String!
}

type auto_runbook_update_status_response {
  status: String!
}

type TicketGroupingsResponse {
  rows: [TicketGroupingsRowResponse]
}

type TicketGroupingsRowResponse {
  tenant_id: String
  account_id: String
  ticket_type: String
  reference_id: String
  title: String
  platform: String
  status: String
  assignee: String
  created_by: String
  severity: String
  count: Int
}

type TracesGroupResponse {
  rows: [TraceRowGroupResponse]
}

type TraceRowGroupResponse {
  timestamp: Datetime
  workload_name: String
  workload_namespace: String
  workload_zone: String
  duration_ns: Float
  status_code: String
  span_name: String
  resource: String
  account_id: String
  destination_workload_namespace: String
  destination_name: String
  destination_workload_name: String
  destination_workload_zone: String
  http_status_code: String
  headers: String
  request_payload: String
  span_id: String
  parent_span_id: String
  trace_source: String
  trace_id: String
  count: Int
  http_response: String
  error_count: Float
  p99_latency: Float
  p50_latency: Float
  p95_latency: Float
  max_latency: Float
}

type RecommendationGroupingResponse {
  rows: [RecommendationGroupingRowResponse]
}

type RecommendationGroupingRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  category: String
  rule_name: String
  status: String
  timestamp: Datetime
  resource_type: String
  resource_k8s_namespace: String
  resource_cloud_service: String
  resource_name: String
  count: Int
  sum_estimated_savings: Float
  severity: String
  account_object_id: String
}

type auto_runbook_manual_run_response {
  status: String!
}

type RecommendationSecurityResponse {
  rows: [RecommendationSecurityRowResponse]
}

type RecommendationSecurityRowResponse {
  id: String
  tenant_id: String
  account_id: String
  severity: String
  severity_weight: Int
  status: String
  image: String
  vulnerability_id: String
  package_id: String
  created_at: Datetime
  updated_at: Datetime
  is_active: Boolean
  workload_name: String
  workload_type: String
  namespace: String
  recommendation: Json
}

type RecommendationSecurityGroupingsResponse {
  rows: [RecommendationSecurityGroupingsRowResponse]
}

type RecommendationSecurityGroupingsRowResponse {
  id: String
  tenant_id: String
  account_id: String
  severity: String
  severity_weight: Int
  status: String
  image: String
  vulnerability_id: String
  package_id: String
  created_at: Datetime
  is_active: Boolean
  workload_name: String
  workload_type: String
  namespace: String
  count: Int
  count_severity_critical: Int
  count_severity_high: Int
  count_severity_medium: Int
  count_severity_low: Int
  count_severity_info: Int
  count_workload_name: Int
  count_image: Int
  count_vulnerability_id: Int
  count_package_id: Int
}

type K8sClusterGroupingsResponse {
  rows: [K8sClusterGroupingsRowResponse]
}

type K8sClusterGroupingsRowResponse {
  tenant_id: String
  account_id: String
  node_count: Int
  node_spot_count: Int
  node_cpu_capacity: Float
  node_cpu_allocatable: Float
  node_memory_capacity: Float
  node_memory_allocatable: Float
  workload_type_counts: String
  pod_status_counts: String
}

type PlaybookResponse {
  rows: [PlaybookRowResponse]
}

type PlaybookRowResponse {
  id: String
  resource: String
  tenant_id: String
  account_id: String
  name: String
  created_at: String
  username: String
  updated_by: String
  status: String
  last_executed_time: String
  tasks: String
  trigger: String
  updated_username: String
  updated_user_displayname: String
  display_name: String
  resource_filter: String
  attributes: String
  notification: jsonb
}

type notification_rule_mapping_output {
  id: uuid
  error: String
}

type PlaybookGroupResponse {
  rows: [PlaybookGroupRowResponse]
}

type PlaybookGroupRowResponse {
  count: Float
}

type MonitoringResponse {
  rows: [MonitoringRowResponse]
}

type MonitoringRowResponse {
  name: String
  account_name: String
  account_id: String
  namespace: String
  workload_id: String
  ready_pods: Int
  total_pods: Int
  event_count: Int
  pod_error_count: Int
  application_error_count: Int
  creation_time: String
  failed_slo_count: Int
  total_slo_count: Int
}

type ticket_create_meta_response {
  data: jsonb!
}

type ticket_field_values_response {
  data: jsonb!
}

type recommendation_job_create_output {
  data: [jsonb]!
}

type MonitoringEventsResponse {
  rows: [MonitoringEventsRowResponse]
}

type MonitoringEventsRowResponse {
  name: String
  cloud_account_id: String
  namespace: String
  event_count: Int
  tenant_id: String
}

type MonitoringRecommendationsResponse {
  rows: [MonitoringRecommendationsRowResponse]
}

type MonitoringRecommendationsRowResponse {
  workload_name: String
  account_id: String
  namespace: String
  tenant_id: String
  recommendation_count: Int
}

type auto_runbook_action_insert_one_output {
  id: uuid!
}

type SLOListResponse {
  cloud_account_id: String!
  workload_id: String!
  workload_name: String!
  namespace: String!
  config: [SLOConfigResponse]
}

type SLOConfigResponse {
  id: String!
  name: String!
  threshold: Float!
  enabled: Boolean!
  goal: String
}

type SLOCreateResponse {
  success: Boolean!
}

type SLOUpdateResponse {
  success: Boolean!
}

type SLOResponse {
  data: SLOCreateResponse!
}

type SLOConfigListResponse {
  data: SLOListResponse!
}

type SLOUpdateConfigResponse {
  data: SLOUpdateResponse!
}

type AWSCloudFormationOutput {
  url: String!
  bucket_name: String!
  external_id: String!
  auto_detection_enabled: Boolean!
}

input CloudUpdateCloudformationPermissionsInput {
  account_id: String!
}

type CloudUpdateCloudformationPermissionsOutput {
  url: String
  stack_name: String
  template_version: String
  latest_version: String
  needs_update: Boolean
}

type CloudMetricGroupingsResponse {
  rows: [CloudMetricGroupingsRowResponse]
}

type CloudMetricGroupingsRowResponse {
  tenant_id: String
  account_id: String
  region_name: String
  service_name: String
  resource_id: String
  metric: String
  timestamp: Datetime
  count_value: Int
  sum_value: Float
  avg_value: Float
  min_value: Float
  max_value: Float
}

type auto_runbook_action_status_output {
  status: String!
}

type runbook_action_status_output {
  status: String!
}

type auto_runbook_task_manual_run_response {
  status: String!
}

type RecommendationSecurityCisGroupingsResponse {
  rows: [RecommendationSecurityCisGroupingRowResponse]
}

type RecommendationSecurityCisGroupingRowResponse {
  id: String
  tenant_id: String
  account_id: String
  severity: String
  severity_weight: Int
  rule_id: String
  rule_name: String
  rule_description: String
  count: Int
  updated_at: Datetime
  status: String
}

type K8sWorkloadResponse {
  rows: [K8sWorkloadRowResponse]
}

type K8sWorkloadRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  external_id: String
  namespace: String
  is_active: String
  total_pods: String
  ready_pods: String
  name: String
  kind: String
  creation_time: Datetime
  last_seen: Datetime
  labels: Json
  meta: Json
  updated_at: Datetime
  workload_fqdn: String
}

type K8sWorkloadGroupingsResponse {
  rows: [K8sWorkloadGroupingRowResponse]
}

type K8sWorkloadGroupingRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  external_id: String
  namespace: String
  is_active: Boolean
  name: String
  kind: String
  workload_fqdn: String
  count: Int
  deployment_count: Int
  statefulset_count: Int
  daemonset_count: Int
  replicaset_count: Int
  job_count: Int
  cronjob_count: Int
  rollout_count: Int
}

type K8sNamespaceResponse {
  rows: [K8sNamespaceRowResponse]
}

type K8sNamespaceRowResponse {
  tenant_id: String
  account_id: String
  name: String
  is_active: Boolean
  workload_count: Int
  pod_count: Int
  creation_time: Datetime
  updated_at: Datetime
}

type K8sNamespaceGroupingsResponse {
  rows: [K8sNamespaceGroupingRowResponse]
}

type K8sNamespaceGroupingRowResponse {
  tenant_id: String
  account_id: String
  name: String
  is_active: Boolean
  count: Int
}

type K8sPodsResponse {
  rows: [K8sPodsRowResponse]
}

type K8sPodsRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  external_id: String
  name: String
  workload_type: String
  workload_name: String
  namespace: String
  status: String
  node_name: String
  is_active: Boolean
  restart_count: Json
  creation_time: Datetime
  last_seen: Datetime
  updated_at: Datetime
  pod_fqdn: String
  labels: Json
  meta: Json
}

type K8sMetricsGroupingsResponse {
  rows: [K8sMetricsGroupingsRowResponse]
}

type K8sMetricsGroupingsRowResponse {
  tenant_id: String
  account_id: String
  workload_type: String
  workload_name: String
  namespace_name: String
  pod_name: String
  node_name: String
  pod_fqdn: String
  workload_fqdn: String
  timestamp: Datetime
  cost: Float
  avg_efficiency: Float
  max_efficiency: Float
  avg_cpu_used: Float
  max_cpu_used: Float
  avg_memory_used: Float
  max_memory_used: Float
  avg_cpu_request: Float
  max_cpu_request: Float
  avg_memory_request: Float
  max_memory_request: Float
  avg_cpu_efficiency: Float
  max_cpu_efficiency: Float
  avg_ram_efficiency: Float
  max_ram_efficiency: Float
  sum_ingress: Float
  sum_egress: Float
}

type auth_manage_group_users_output {
  status: String!
  message: String!
}

type auth_k8saccount_namespace_group_roles_upsert_one_output {
  status: String!
  message: String!
}

type auth_k8saccount_namespace_user_roles_upsert_one_output {
  status: String!
  message: String!
}

type auth_account_group_roles_upsert_one_output {
  status: String!
  message: String!
}

type auth_account_user_roles_upsert_one_output {
  status: String!
  message: String!
}

type auth_tenant_group_roles_upsert_one_output {
  status: String!
  message: String!
}

type auth_tenant_user_roles_upsert_one_output {
  status: String!
  message: String!
}

type RecommendationResponse {
  rows: [RecommendationRowResponse]
}

type RecommendationRowResponse {
  id: String
  created_at: Datetime
  updated_at: Datetime
  tenant_id: String
  account_id: String
  resource_id: String
  recommendation: Json
  recommendation_action: String
  note: String
  severity: String
  estimated_savings: Float
  status: String
  category: String
  rule_name: String
  dismissed_reason: String
  is_dismissed: Boolean
  account_object_id: String
  updated_by: String
  resource_k8s_namespace: String
  resource_meta: Json
  resource_name: String
  resource_type: String
  resource_cloud_service: String
  resource_is_active: Boolean
  resource_cloud_provider: String
  resource_arn: String
  resource_region: String
  resource_status: String
  is_primary_recommendation: Boolean
  finops_score: Int
  finops_band: String
  finops_score_breakdown: Json
}

type generate_cluster_recommendations_output {
  data: jsonb!
}

type RecommendationMissConfigGroupingResponse {
  rows: [RecommendationMissConfigGroupingRowResponse]
}

type RecommendationMissConfigGroupingRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  category: String
  rule_name: String
  status: String
  created_at: Datetime
  updated_at: Datetime
  missconfig_category: String
  missconfig_message: String
  resource_type: String
  resource_k8s_namespace: String
  resource_k8s_container: String
  resource_name: String
  estimated_savings: String
  account_object_id: String
  count: Int
  sum_estimated_savings: Float
}

type RecommendationMissConfigResponse {
  rows: [RecommendationMissConfigRowResponse]
}

type RecommendationMissConfigRowResponse {
  tenant_id: String
  account_id: String
  resource_id: String
  category: String
  rule_name: String
  status: String
  created_at: Datetime
  updated_at: Datetime
  missconfig_category: String
  missconfig_message: String
  resource_type: String
  resource_k8s_namespace: String
  resource_k8s_container: String
  resource_name: String
  estimated_savings: String
  account_object_id: String
}

type event_resolve_output {
  data: [jsonb]!
}

type auto_optimize_update_status_response {
  status: String!
}

type AIResponse {
  data: jsonb!
}

type TracesHeatMapResponse {
  rows: [TraceHeatMapRowResponse]
}

type TraceHeatMapRowResponse {
  timestamp: Datetime
  duration_ns: Float
  parent_span_id: String
  span_id: String
  resource_attributes: String
  status_code: String
  span_name: String
  resource: String
  account_id: String
  trace_id: String
  span_attributes: String
  service_name: String
  events_name: String
  events_attributes: String
}

type auto_optimize_skip_response {
  message: String!
}

type AgentRegenerateTokenOutput {
  account_id: String!
  access_key: String!
  access_secret: String!
}

type CreateApprovalOutput {
  id: uuid
}

type UpdateApprovalOutput {
  id: uuid
}

type AutopilotApprovalUpdateOutput {
  id: uuid!
}

type ApplicationMetricsOutput {
  data: [ApplicationMetrics!]
}

type ApplicationMetrics {
  application_id: String!
  name: String!
  namespace: String!
  container: String
  max_cpu_request: Float
  max_memory_request: Float
  max_cpu_limit: Float
  max_memory_limit: Float
  latency: Float
  latency_p99: Float
  cpu_p99: Float
  cpu_p50: Float
  cpu_max: Float
  memory_max: Float
  memory_p99: Float
  memory_p50: Float
  log_failure_count: Float
  total_request_count: Float
  failure_request_count: Float
  bad_data_count: Float
  good_data_count: Float
  valid_data_count: Float
  oom_kill_limit: Float
}

type ApplicationDeploymentCompareOutput {
  data: ApplicationDeploymentMetrics
}

type ApplicationDeploymentMetrics {
  account_id: String
  name: String
  namespace: String
  last_deployment_date_time: timestamp
  previous_stats: ApplicationMetrics
  current_stats: ApplicationMetrics
}

type NudgebeeAIGetPrometheusQueryResponse {
  data: NudgebeeAIGetPrometheusQuery!
}

type NudgebeeAIGetPrometheusQuery {
  response: [String!]!
  query: String!
  agent_step_response: [String!]!
  chain_name: String
}

type AIGetPrometheusQueryResponse {
  data: AIGetPrometheusQuery!
}

type AIGetPrometheusQuery {
  response: [String!]!
  query: String!
  agent_step_response: [String!]!
  chain_name: String!
  conversation_id: String
  message_id: String
  session_id: String
}

type AIGetLokiQueryResponse {
  data: AIGetPrometheusQuery!
}

type GenerateFeedbackResponse {
  data: FeedbackResponse!
}

type FeedbackResponse {
  success: Boolean!
}

type AIGetESDslQueryResponse {
  data: AIGetPrometheusQuery!
}

type auto_pilot_policy_delete_output {
  id: uuid!
}

type GetFeedbackResponse {
  rows: [AiFeedbackResponse]
}

type AiFeedbackResponse {
  id: String
  module: String
  useful: Boolean
  additional_notes: String
  updated_at: String
  created_at: String
  session_id: String
  cloud_account_id: String
  question: String
  llm_response: String
  user_corrected_response: String
  conversation_id: String
  user_id: String
}

type InsightResponse {
  data: [InsightDetails!]!
}

type InsightDetails {
  title: String!
  source: String!
  applications: [InsightApplication]
}

type SloReportObservationResponse {
  rows: [SloReportObservationRowResponse]
}

type SloReportObservationRowResponse {
  tenant_id: String
  account_id: String
  timestamp: Datetime
  workload_namespace: String
  workload_name: String
  config_name: String
  total_good_events: String
  total_bad_events: String
  total_events: String
  status: String
}

type SaveLLMConversationResponse {
  data: SaveResponse!
}

type SaveResponse {
  success: Boolean!
}

type K8sVersionResponse {
  version: String!
  release_date: String!
}

type VersionDetails {
  version: String!
  release_date: String!
}

type ListAgentResponse {
  data: jsonb!
}

type ListToolResponse {
  data: jsonb
  errors: jsonb
}

type AIListModelsResponse {
  data: jsonb
  errors: jsonb
}

type AIGetModelConfigResponse {
  data: jsonb
  errors: jsonb
}

type AIFollowupResponse {
  data: AIFollowupResponseData!
}

type AIFollowupResponseData {
  response: [String!]!
  chain_name: String!
  conversation_id: String
  message_id: String
}

type InsightApplication {
  name: String!
  namespace: String!
}

type CreateAgentResponse {
  data: jsonb
  errors: jsonb
}

type CreateToolResponse {
  data: jsonb
  errors: jsonb
}

type DeleteAgentResponse {
  data: jsonb
  errors: jsonb
}

type DeleteToolResponse {
  data: jsonb
  errors: jsonb
}

type IntegrationConfigValueResponse {
  name: String!
  value: String!
}

type CreateIntegrationConfigResponse {
  id: String!
  name: String!
  configs: [IntegrationConfigValueResponse]
  tags: jsonb
  schema: jsonb
}

type DeleteIntegrationConfigResponse {
  status: String!
}

type IntegrationTestConnectionResponse {
  success: Boolean!
  message: String
  error: String
}

type AnomalyTemplateListResponse {
  data: [AnomalyTemplateResponse!]
}

type TriggerAnomalyExecuteResponse {
  status: String!
  message: String!
}

type AnomalyTemplateResponse {
  anomaly_type: String!
  buffer_percentage: Float!
  change_operator: String!
  title: String!
  description: String!
}

type ListAnomalyResponse {
  rows: AnomalyResponse!
}

type AnomalyInsight {
  timestamp: String!
  value: Float!
  baseline_value: Float!
  deviation_absolute: Float!
  deviation_percent: Float!
  severity: String!
  anomaly_score: Float!
  comparison_window: String!
}

type AnomalyResponse {
  anomaly_type: String!
  config_id: String
  current_value: String!
  updated_at: String!
  evaluated_at: String
  is_anomaly: Boolean!
  name: String!
  namespace: String!
  reference_value: String!
  id: String!
  account_id: String!
  insights: [AnomalyInsight]
}

type GetAutopiloteOutput {
  runbooks: [jsonb]!
}

type AlertActionListResponse {
  actions: [AlertAction]
}

type AlertAction {
  actions: jsonb!
}

type IntegrationSchemaResponse {
  data: jsonb!
}

type IntegrationAutogenOption {
  label: String!
  value: String!
}

type IntegrationAutogenOptionsResponse {
  options: [IntegrationAutogenOption!]!
  message: String
}

type DeleteLLMConversationResponse {
  data: SaveResponse!
}

type DeleteResponse {
  success: Boolean!
}

type DeleteLlmConversationByIdResponse {
  success: Boolean!
}

type DeleteLlmConversationByIdOutput {
  data: SaveResponse
}

type AiGetConversationV3Response {
  conversation: AiConversationShell
  messages: [AiConversationMessage!]!
  agents: [AiConversationAgent!]!
  tool_calls: [AiConversationToolCall!]!
  cursor: timestamptz!
}

type AiConversationShell {
  id: String!
  session_id: String!
  account_id: String!
  tenant_id: String!
  user_id: String
  user_display_name: String
  created_at: timestamptz!
  updated_at: timestamptz!
  source: String
  context: String
  status: String
  title: String
}

type AiConversationMessage {
  id: String!
  user_id: String
  user_display_name: String
  created_at: timestamptz!
  updated_at: timestamptz!
  message: String!
  message_type: String
  response: String
  role: String
  status: String
  parent_agent_id: String
  message_config: String
  ack_message: String
  attachments: [AiMessageAttachment!]
}

type AiMessageAttachment {
  id: String!
  mime_type: String!
  size_bytes: Int!
  description: String
  created_at: timestamptz!
  data: String
}

type AiConversationAgent {
  id: String!
  message_id: String!
  agent_name: String
  response: String
  response_summary: String
  query: String
  thought: String
  parent_agent_id: String
  status: String
  references: String
  created_at: timestamptz!
  updated_at: timestamptz!
}

type AiConversationToolCall {
  id: String!
  agent_id: String!
  tool_name: String!
  parameters: String
  response: String
  thought: String
  tool_type: String
  child_agent_id: String
  references: String
  tool_id: String
  status: String
  created_at: timestamptz!
  updated_at: timestamptz!
}

type AnomalyGroupingsResponse {
  rows: [AnomalyGroupingResponse]!
}

type AnomalyGroupingResponse {
  count: Int
}

type LicenseResponse {
  license: jsonb!
}

type AgentStatusOutput {
  status: String!
  success: Boolean!
}

type UpdateAgentResponse {
  data: jsonb
  errors: jsonb
}

type ListAnomalyV3Response {
  rows: AnomalyV3Response!
}

type AnomalyV3Response {
  anomaly_count: Int
  anomaly_type: String!
  name: String!
  namespace: String!
  count: Int
  evaluated_at: String
}

type AIGetConversationSuggestionResponse {
  data: jsonb
  errors: jsonb
}

type ResourceGroupingsResponse {
  rows: [ResourceGroupingsRowResponse]
}

type ResourceGroupingsRowResponse {
  tenant_id: String
  account_id: String
  resource_service_name: String
  resource_id: String
  resource_name: String
  resource_status: String
  resource_type: String
  resource_region: String
  resource_arn: String
  resource_tags: String
  spend_date: Datetime
  recommendation_rule_name: String
  recommendation_category: String
  recommendation_status: String
  recommendation_severity: String
  count_resource: Int
  sum_spend_amount: Float
  count_recommendation: Int
  sum_recommendation_estimated_savings: Float
}

type auto_runbook_action_delete_one_output {
  id: uuid!
}

type ApplicationProfileConvertResponse {
  svg_profile: String!
}

type ApplicationProfileConvertDataResponse {
  data: ApplicationProfileConvertResponse!
}

type ApplicationProfileResponse {
  rows: [ApplicationProfile]
}

type auto_runbook_task_approval_response {
  id: String!
}

type ApplicationProfileDataResponse {
  data: GetApplicationProfileResponse
}

type ApplicationProfile {
  pod_name: String
  workload_name: String
  namespace: String
  created_by: String
  profile: jsonb
  source: String
  created_at: Datetime
  updated_at: Datetime
  profile_type: String
  profile_duration: Float
  profile_language: String
  profile_tool: String
  output_type: String
}

type GetApplicationProfileResponse {
  profile_task_id: String
  account_id: String
  status: String
  error_message: String
  base64_profile: jsonb
}

type UpdateToolResponse {
  data: jsonb
  errors: jsonb
}

type TicketComments {
  ticket_id: String!
  error: String
  comments: [Comment]
}

type Comment {
  author: String!
  comment: String!
  created_at: String!
  updated_at: String
}

type CreateAgentRagOutput {
  data: jsonb
}

type LLMRagGroupingResponse {
  rows: [LLMRagGroupingRowResponse!]!
}

type LLMRagGroupingRowResponse {
  tenant_id: String
  account_id: String
  agent_id: String
  created_at: Datetime
  updated_at: Datetime
  data: String
  data_format: String
  data_filename: String
  created_by: String
  updated_by: String
  count: Int!
}

type TenantAttributeResponse {
  id: String!
  name: String!
  created_at: Datetime!
  updated_at: Datetime!
  value: String!
  tenant_id: String!
}

type CreateFunctionResponse {
  success: Boolean!
  message: String!
  function: LLMFunctionCreateResponse
}

type LLMFunctionCreateResponse {
  id: String!
  name: String!
  description: String!
  prompt: String!
  variables: [String!]
  variable_defaults: jsonb
  status: String!
  version: Int
  account_id: String!
  tenant_id: String!
  created_by: String
  updated_by: String
  created_at: Datetime
  updated_at: Datetime
}

type FunctionResponse {
  data: CreateFunctionResponse!
}

type AIStopInvestigationResponse {
  data: jsonb!
}

type auto_runbook_custom_action_update_output {
  id: uuid!
}

type FetchLogResponse {
  timestamp: String!
  message: String!
  severity: String!
  labels: jsonb!
}

type OutputLogLabel {
  label: String!
  attributes: jsonb
}

type OutputLogLabelValue {
  value: String!
  attributes: jsonb
}

type UserTokenCreateResponse {
  name: String!
  token: String!
}

type UserTokenDeleteResponse {
  name: String!
}

type UserAuthTokenResponse {
  tokens: [UserAuthToken]
}

type UserAuthToken {
  id: String
  name: String
  provider: String
  status: String
  created_at: timestamp
  accessed_at: timestamp
}

type ServiceApplicationId {
  name: String!
  kind: String
  namespace: String
}

type Instance {
  Id: ServiceApplicationId
  IsFailed: Boolean
}

type Link {
  Id: String!
  Status: Int
  Stats: [String!]
  Weight: float8
  Latency: float8
  RequestCount: float8
  FailureCount: float8
  Protocol: String
  BytesSent: float8
  BytesReceived: float8
  DrillDown: LinkDrillDown
}

type ServiceApplication {
  Id: ServiceApplicationId!
  Category: ServiceCategory
  Labels: jsonb
  Status: Int
  Indicators: [String]
  Upstreams: [Link]
  Downstreams: [Link]
  Instances: [Instance]
  Type: [String]
  DesiredInstances: Int
  FailedInstances: Int
  OOMKills: Int
  Restarts: Int
  CPUThrottlingTime: float8
  VolumeSize: float8
  VolumeUsed: float8
  IsHealthy: Boolean
  HealthReason: String
}

type ServiceMap {
  labels: [String]
  applications: [ServiceApplication]
  generated_at: timestamp
}

type UpgradePlanResponse {
  id: String
  created_at: timestamp
  updated_at: timestamp
  current_version: String
  target_version: String
  owner: String
  k8s_provider: String
  account_id: String
  tenant_id: String
  status: String
  steps: jsonb
}

type ServiceMapResponse {
  data: ServiceMap
}

type ServiceCategory {
  category: String
}

type LinkTimeRange {
  start_time: String
  end_time: String
}

type LinkFilterHints {
  source_service: String
  target_service: String
  span_attribute_filters: jsonb
  protocol: String
}

type LinkDrillDown {
  time_range: LinkTimeRange
  error_types: [jsonb]
  http_status_codes: [jsonb]
  sample_trace_ids: [String]
  failed_trace_ids: [String]
  operations: [jsonb]
  filter_hints: LinkFilterHints
}

type ProviderCapabilities {
  supports_log_groups: Boolean!
  supports_auto_query: Boolean!
  supports_raw_query: Boolean!
  supports_heatmap: Boolean!
  supports_trace_grouping: Boolean!
  supports_service_map: Boolean!
  supports_cross_zone_communication: Boolean!
  supported_operators: [String]
  supported_operator_descriptors: [OperatorDescriptor!]
}

type OperatorDescriptor {
  token: String!
  chip_label: String
  line_label: String
  kinds: [String!]!
}

type AvailableProvider {
  provider: String!
  supported_operators: [String]
  supported_operator_descriptors: [OperatorDescriptor!]
}

type DefaultProviderResponse {
  provider: String!
  integration_source: String
  default_index: String
  capabilities: ProviderCapabilities
  available_providers: [AvailableProvider!]
}

input ListProviderCapabilitiesRequest {
  account_id: String!
}

type ProviderCapabilityEntry {
  provider: String!
  provider_type: String!
  capabilities: ProviderCapabilities!
}

type OutputMetrics {
  metric: String!
  attributes: jsonb
}

type task_response {
  id: String
  step_id: String
  sequence: String
  title: String
  owner: String
  status: String
}

type health_check_response {
  account_id: String
  nodes: jsonb
  workloads: jsonb
  services: jsonb
  persistentVolumes: jsonb
  load_balancers: jsonb
  node_groups: jsonb
  helm_compatibility: jsonb
}

type AIGetConversationUsageMetricsResponse {
  data: jsonb!
}

type AIGetConversationTimeAggregatesResponse {
  data: jsonb!
}

type UserHistoryOutput {
  status: String!
}

type TracesOutputResponse {
  timestamp: String
  trace_id: String
  span_id: String
  parent_span_id: String
  trace_state: String
  span_name: String
  span_kind: String
  service_name: String
  resource_attributes: OTelResourceAttributes
  span_attributes: jsonb
  duration_ns: bigint
  status_code: String
  status_message: String
  events_timestamp: [String!]
  events_name: [String!]
  events_attributes: [jsonb!]
  links_traceId: [String!]
  links_span_id: [String!]
  links_trace_state: [String!]
  links_attributes: [jsonb!]
  workload_name: String
  workload_namespace: String
  resource: String
  destination_name: String
  destination_workload_name: String
  destination_workload_namespace: String
  headers: String
  http_status_code: String
  request_payload: String
  http_response: String
  query_type: String
  trace_ids: [String!]
  start_time: String
  end_time: String
  start_time_unix_nano: String
  end_time_unix_nano: String
  trace_source: String
  span_attributes_json: jsonb
  service: String
  operation: String
  attributes: jsonb
  tag_filters: jsonb
  status: jsonb
}

type OTelResourceAttributes {
  host_id: String
  host_name: String
  service_name: String
  cloud_account_id: String
  cloud_availability_zone: String
  cloud_region: String
  container_id: String
}

type TracesV3CountResponse {
  count: Int!
}

type TracesV3LabelValuesResponse {
  label: String!
  values: [String]
}

type TraceGroupingValues {
  count: Int!
  error_count: Int!
  workload_name: String!
  workload_namespace: String!
  destination_workload_name: String!
  destination_workload_namespace: String!
  destination_workload_zone: String
  resource: String!
  duration_ns: Float!
  p99_latency: Float!
  p95_latency: Float!
  http_status_code: String!
  span_name: String!
  max_latency: Float!
}

type CreateAgentExtensionResponse {
  data: jsonb
  err: jsonb
}

type AiDeleteFunctionResponse {
  data: jsonb
}

type OutputMetricLabels {
  label: String!
  attributes: jsonb
}

type OutputMetricsLabelValues {
  value: String!
  attributes: jsonb
}

type UpgradeExecuteCommandResponse {
  success: Boolean
  output: String
  error: String
}

type FunctionUpdateResponse {
  data: jsonb!
}

type TracesGroupV3CountResponse {
  count: Int!
}

type OutputMetricQuery {
  results: [jsonb]!
}

type LogGroupOutput {
  groups: [LogGroup!]!
}

type LogGroup {
  sample: String!
  namespace: String!
  workload: String!
  container: String!
  container_id: String!
  pattern_hash: String!
  level: String!
  count: Float!
  timestamps: [Float!]!
  values: [Float!]!
}

type UpdateAgentExtensionResponse {
  data: jsonb
  err: jsonb
}

type AILimitInfo {
  enabled: Boolean!
  limit: Float!
  usage: Float!
  remaining: Float!
  limit_source: String!
}

type AICountLimitInfo {
  enabled: Boolean!
  limit: Int!
  usage: Int!
  remaining: Int!
  limit_source: String!
}

type AIEntityBudgetStatus {
  budget_disabled: Boolean!
  disabled_by: String
  disabled_at: String
  monthly_cost: AILimitInfo!
  daily_cost: AILimitInfo!
  monthly_count: AICountLimitInfo!
  daily_count: AICountLimitInfo!
}

type AIModuleBudgetStatus {
  tenant: AIEntityBudgetStatus!
  account: AIEntityBudgetStatus!
}

type AIBudgetStatusResponse {
  data: AIBudgetStatusData
  err: jsonb
}

type AIBudgetStatusData {
  tenant_id: String!
  account_id: String!
  period: String!
  today: String!
  investigation: AIModuleBudgetStatus!
  user_investigation: AIModuleBudgetStatus!
}

type AIBudgetConfigListResponse {
  data: jsonb
  errors: jsonb
}

type AIBudgetConfigUpsertResponse {
  data: jsonb
  errors: jsonb
}

type AIBudgetConfigDeleteResponse {
  data: jsonb
  errors: jsonb
}

type AIBudgetSystemDefaultsResponse {
  data: jsonb
  errors: jsonb
}

type WorkflowTaskDefinitionResponse {
  name: String!
  description: String!
  input_schema: jsonb
  output_schema: jsonb
  aliases: [String!]
}

type WorkflowTaskDefinitionListResponse {
  tasks: [WorkflowTaskDefinitionResponse]
}

type MCPToolInfo {
  name: String!
  description: String
}

type WorkflowListMCPToolsResponse {
  tools: [MCPToolInfo]
}

type WorkflowListResponse {
  total_count: Int
  workflows: [Workflow]
  next_page_token: String
}

type WorkflowCountResponse {
  count: Int!
}

type WorkflowExecutionCountResponse {
  count: Int!
}

type WorkflowUser {
  id: String
  display_name: String
}

type Workflow {
  id: String!
  tenant_id: String!
  account_id: String!
  definition: WorkflowDefinition!
  tags: jsonb
  status: String
  last_execution_status: String
  last_execution_time: timestamp
  name: String!
  created_by: String
  created_by_user: WorkflowUser
  updated_by: String
  updated_by_user: WorkflowUser
  created_at: timestamp
  updated_at: timestamp
  created_from_session_id: String
}

type WorkflowDefinition {
  version: String
  inputs: [WorkflowDefinitionInput]
  triggers: [WorkflowDefinitionTrigger]
  tasks: [WorkflowDefinitionTask]
  hooks: [WorkflowDefinitionHook]
  output: jsonb
  retry_policy: WorkflowDefinitionRetryPolicy
  timeout: String
  layout: WorkflowDefinitionLayout
}

type WorkflowDefinitionLayout {
  viewport: WorkflowViewport
}

type WorkflowViewport {
  x: Float!
  y: Float!
  zoom: Float!
}

type WorkflowTaskLayout {
  x: Float!
  y: Float!
}

type WorkflowDefinitionInput {
  id: String!
  description: String
  type: String
  default: String
}

type WorkflowDefinitionTrigger {
  type: String!
  params: jsonb
  layout: WorkflowTaskLayout
}

type WorkflowDefinitionTask {
  id: String!
  type: String!
  params: jsonb
  tasks: [WorkflowDefinitionTask]
  outputs: jsonb
  depends_on: [String!]
  if: String
  matrix: String
  retry_policy: WorkflowDefinitionRetryPolicy
  timeout: String
  hooks: WorkflowDefinitionHook
  set_state: jsonb
  set_vars: jsonb
  failure_policy: WorkflowDefinitionFailurePolicyResponse
  disabled: Boolean
  _prev_edges: jsonb
  layout: WorkflowTaskLayout
}

type WorkflowDefinitionRetryPolicy {
  initial_interval: String
  backoff_coefficient: Float
  maximum_interval: String
  maximum_attempts: Int
  non_retryable_error_types: [String]
}

type WorkflowDefinitionHook {
  success: [WorkflowDefinitionHookAction]
  failure: [WorkflowDefinitionHookAction]
  always: [WorkflowDefinitionHookAction]
}

type WorkflowDefinitionHookAction {
  type: String!
  params: jsonb
}

type WorkflowCreateResponse {
  id: String!
  token: String
}

type WorkflowTriggerResponse {
  id: String!
  execution_id: String!
}

type WorkflowExecutionListResponse {
  next_page_token: String
  executions: [WorkflowExecutionSummary!]
}

type WorkflowExecutionGetResponse {
  workflow_id: String!
  id: String!
  parent_workflow_id: String
  triggered_by: String
  status: String
  start_time: timestamp
  close_time: timestamp
  inputs: jsonb
  workflow_result: jsonb
  error: String
  tasks: [WorkflowExecutionTaskResponse]
}

type WorkflowExecutionTaskResponse {
  id: String!
  type: String!
  status: String!
  start_time: timestamp
  end_time: timestamp
  input: jsonb
  output: jsonb
  error: String
  attempt: Int
  children: jsonb
}

type TraceHeatMapOutput {
  span_name: String
  timestamp: String
  resource_attributes: jsonb
  status_code: String
  duration_ns: Float
  span_attributes: jsonb
  trace_id: String
  span_id: String
  service_name: String
  events_attributes: jsonb
  events_name: [String]
}

type WorkflowExecutionSummary {
  workflow_id: String!
  id: String!
  status: String!
  start_time: timestamp
  close_time: timestamp
  triggered_by: String
  trigger_type: String
  parent_workflow_id: String
  workflow_name: String
}

type WorkflowUpdateResponse {
  id: String
  tenant_id: String
  account_id: String
  name: String
  status: String
  last_execution_status: String
  definition: jsonb
  tags: jsonb
  created_by: String
  updated_by: String
  created_at: Datetime
  updated_at: Datetime
  trigger_details: jsonb
}

type flight_check_response {
  id: String
  plan_id: String
  account_id: String
  comparison: jsonb
  health_check: jsonb
  pre_flight_summary: jsonb
  status: String
}

type FetchLogQueryOutput {
  query: String!
}

type FetchMetricQueryOutput {
  results: jsonb!
}

type WorkflowDeleteResponse {
  message: String!
}

type WorkflowListCallersResponse {
  callers: [WorkflowCaller!]!
}

type WorkflowCaller {
  id: String!
  name: String!
  status: String!
}

type WorkflowPauseResponse {
  data: jsonb
}

type WorkflowResumeResponse {
  data: jsonb
}

type EventTimelineOutput {
  event_id: String!
  timeline: [EventTimeline]
}

type EventTimeline {
  timestamp: timestamp
  ref_type: String
  ref_id: String
  action: String
  summary: String
  metadata: jsonb
}

type EventGetTriageOutput {
  event_id: String!
  is_duplicate: Boolean!
  duplicate_info: TriageDuplicateInfo
  correlated_events: [TriageCorrelatedEvent]
  historical_stats: TriageHistoricalStats
  hourly_trend: [TriageHourlyBucket]
  correlation_count: Int!
}

type TriageDuplicateInfo {
  first_event_id: String!
  occurrence_number: Int!
  duplicate_chain: [TriageDuplicateEvent]
  total_occurrences: Int!
}

type TriageDuplicateEvent {
  event_id: String!
  first_event_id: String!
  occurrence_number: Int!
  created_at: timestamp!
  event_starts_at: timestamp!
  event_state: String!
}

type TriageCorrelatedEvent {
  correlated_event_id: String!
  correlation_type: String!
  correlation_score: Float!
  correlation_reason: String!
  time_offset_minutes: Int!
  dependency_distance: Int!
  correlated_title: String!
  correlated_fingerprint: String!
  correlated_starts_at: timestamp!
  correlated_state: String!
  correlated_finding_type: String
  subject_name: String
  subject_namespace: String
  subject_owner: String
  subject_owner_kind: String
}

type TriageHistoricalStats {
  total_events: Int!
  firing_count: Int!
  resolved_count: Int!
  closed_count: Int!
  resolution_rate: Float!
  closure_rate: Float!
  noise_level: Float!
  avg_duration_hours: Float!
  first_seen_at: timestamp
  last_seen_at: timestamp
}

type TriageHourlyBucket {
  hour: timestamp!
  firing_count: Int!
  resolved_count: Int!
  closed_count: Int!
}

type EventGetTriageRulesOutput {
  rules: [TriageRule]!
}

type TriageRule {
  id: String!
  tenant_id: String
  account_id: String
  rule_type: String!
  match_source: String
  match_alertname: String
  match_namespace: String
  match_service: String
  match_fingerprint: String
  match_labels: String
  match_priority: String
  match_finding_type: String
  match_occurrence_greater_than: Int
  action: String!
  action_value: String
  priority: Int!
  is_editable: Boolean!
  can_override: Boolean!
  override_rule_id: String
  enabled: Boolean!
  effective_from: timestamp
  effective_until: timestamp
  name: String
  description: String
  reason: String
  created_by: String
  updated_by: String
  created_at: timestamp!
  updated_at: timestamp!
  match_count: Int!
  last_matched_at: timestamp
  apply_to_existing: Boolean
  is_system_rule: Boolean
  is_overridden: Boolean
}

type EventGetDuplicatesOutput {
  event_id: String!
  is_duplicate: Boolean!
  duplicate_chain: [TriageDuplicateEvent]
  total_occurrences: Int!
  first_event_id: String
  occurrence_number: Int
}

type EventGetDuplicateSuggestionsOutput {
  suggestions: [DuplicateSuggestion]!
}

type DuplicateSuggestion {
  event_id: String!
  title: String!
  starts_at: timestamp!
  occurrence_number: Int!
  is_first: Boolean!
}

type EventGetCorrelationsOutput {
  event_id: String!
  correlated_events: [TriageCorrelatedEvent]
  correlation_count: Int!
}

type EventClassification {
  id: String!
  event_id: String!
  cloud_account_id: String!
  tenant_id: String!
  classification: String!
  original_priority: String
  corrected_priority: String
  priority_direction: String
  reason_code: String!
  reason_text: String
  apply_scope: String!
  apply_until: timestamp
  linked_event_id: String
  classified_by: String!
  classified_at: timestamp!
  original_score: Int
  feature_snapshot: String
}

type ClassifyPreviewResponse {
  current_event: CurrentEventPreview!
  existing_events: ExistingEventsPreview!
  future_events: FutureEventsPreview!
  rule_to_create: TriageRulePreview
}

type CurrentEventPreview {
  id: String!
  title: String!
  new_status: String!
}

type ExistingEventsPreview {
  count: Int!
  sample_titles: [String]
  will_be_updated: Boolean!
}

type FutureEventsPreview {
  rule_applies: Boolean!
  scope_description: String!
}

type TriageRulePreview {
  rule_type: String!
  match_criteria: String!
  action: String!
  expires_at: timestamp
}

type ClassifyEventResponse {
  success: Boolean!
  classification_id: String!
  rule_created: Boolean!
  rule_id: String
  rule_expires_at: timestamp
  bulk_operation: BulkOperationResponse
}

type BulkOperationResponse {
  job_id: String!
  events_to_update: Int!
  status: String!
}

type CreateTriageRuleResponse {
  success: Boolean!
  rule: TriageRule
  bulk_operation: BulkOperationResponse
  error: String
}

type DeleteTriageRuleResponse {
  success: Boolean!
  error: String
}

type ToggleSystemRuleOverrideResponse {
  success: Boolean!
  error: String
  is_overridden: Boolean
}

type UpdateTriageRuleResponse {
  success: Boolean!
  rule: TriageRule
  bulk_operation: BulkOperationResponse
  error: String
}

type EventPreviewTriageRuleOutput {
  matching_events_count: Int!
  sample_events: [RulePreviewSampleEvent]!
  new_status: String!
}

type RulePreviewSampleEvent {
  id: String!
  title: String!
  namespace: String
  service: String
}

type UpdateNBStatusResponse {
  success: Boolean!
  prev_status: String!
  new_status: String!
}

type GetBulkOperationStatusResponse {
  job_id: String!
  status: String!
  total_events: Int!
  processed_events: Int!
  completed_at: timestamp
  error_message: String
}

type EventBackfillTriageOutput {
  status: String!
  total_events: Int!
  duplicates_detected: Int!
  correlations_created: Int!
  errors: Int!
  duration_seconds: Float!
}

type EventDeduplicateCorrelationsOutput {
  status: String!
  cloud_account_id: String!
}

type kg_get_node_output {
  data: jsonb
}

type kg_get_edge_output {
  data: jsonb
}

type kg_get_complete_graph_output {
  data: kg_graph
}

type kg_search_nodes_output {
  nodes: [kg_search_node_result]
  total_count: Int
}

type kg_search_node_result {
  id: String!
  node_type: String!
  name: String
  namespace: String
  cluster: String
  source: String
  cloud_account_id: String
  labels: jsonb
  properties: jsonb
}

type kg_traverse_output {
  data: kg_graph
  seed_node_ids: [String]
  truncated: Boolean
  total_discovered: Int
}

type kg_graph {
  nodes: [jsonb]
  edges: [jsonb]
  tenant_id: String
  generated_at: timestamp
}

type kg_get_filter_options_output {
  data: kg_filter_options
}

type kg_filter_options {
  account_ids: [String]
  node_types: [String]
  label_keys: [String]
  attribute_keys: [String]
  last_sync_time: timestamptz
  node_id_map: jsonb
  node_count: Int
}

type kg_get_filter_values_output {
  data: kg_filter_values
}

type kg_filter_values {
  filter_type: String!
  filter_key: String!
  values: [String]
}

type kg_get_tenant_filter_output {
  exists: Boolean!
  id: String
  account_ids: [String!]!
  flow_sources: [String!]!
  enabled: Boolean!
}

type kg_upsert_tenant_filter_output {
  id: String!
  removed_accounts: [String!]!
  removed_flow_sources: [String!]!
  message: String!
}

type ConfigSaveOutput {
  id: String!
}

type GetConfigResponse {
  config: jsonb
}

type ConfigListResponse {
  data: [Config]!
}

type Config {
  id: String!
  key: String!
  value: String!
  type: String!
  labels: jsonb
  metadata: jsonb
  tenant_id: String
  account_id: String
  created_at: timestamp
  updated_at: timestamp
  created_by: String
  updated_by: String
}

type ConfigDeleteOutput {
  message: String!
}

type kg_get_node_neighbors_output {
  data: kg_graph
}

type AIGenerateWorkflowResponse {
  data: AIGenerateWorkflowData!
}

type AIGenerateWorkflowData {
  response: [String!]!
  query: String!
  agent_step_response: [String!]!
  chain_name: String!
  conversation_id: String
  session_id: String
  message_id: String
  agent_id: String
  status: String!
  followup: AIFollowupResponse
}

type KnowledgebaseOutput {
  id: String!
  tenant_id: String!
  account_id: String!
  name: String!
  description: String
  data: String!
  data_format: String!
  data_filename: String!
  data_size_bytes: Float
  status: String!
  kb_type: String!
  kb_source: String
  integration_id: String
  created_by: String
  updated_by: String
  created_at: timestamp
  updated_at: timestamp
  document_count: Int
  last_loaded_at: timestamp
}

type CreateKBResponse {
  data: KnowledgebaseOutput
  errors: [Error]
}

type GetKBResponse {
  data: KnowledgebaseOutput
  errors: [Error]
}

type ListKBResponse {
  data: [KnowledgebaseOutput]
  errors: [Error]
}

type UpdateKBResponse {
  data: jsonb
  errors: [Error]
}

type DeleteKBResponse {
  data: jsonb
  errors: [Error]
}

type ListAgentKBsResponse {
  data: jsonb
  errors: [Error]
}

type MapKBToAgentResponse {
  data: jsonb
  errors: [Error]
}

type UnmapKBFromAgentResponse {
  data: jsonb
  errors: [Error]
}

type ListAgentsWithKBCountsResponse {
  data: jsonb
  errors: [Error]
}

type ListKBAgentMappingsResponse {
  data: jsonb
  errors: [Error]
}

type ListKBAgentsResponse {
  data: jsonb
  errors: [Error]
}

input GetKBLoadHistoryRequest {
  account_id: String!
  kb_id: String!
}

input RetriggerKBRequest {
  account_id: String!
  kb_id: String!
}

type KBLoadHistoryEntry {
  id: String!
  document_count: Int!
  expected_document_count: Int
  total_tokens: Float!
  embedding_provider: String
  embedding_model: String
  request_status: String!
  error_message: String
  trigger_type: String
  triggered_by: String
  load_duration_seconds: Float
  created_at: timestamp!
}

type GetKBLoadHistoryResponse {
  data: [KBLoadHistoryEntry]
  errors: [Error]
}

type RetriggerKBResponse {
  data: jsonb
  errors: [Error]
}

type GlobalContextOutput {
  id: String!
  tenant_id: String!
  account_id: String!
  name: String!
  description: String
  data: String!
  data_format: String!
  data_filename: String!
  data_size_bytes: Float
  status: String!
  created_by: String
  updated_by: String
  created_at: timestamp
  updated_at: timestamp
}

type CreateGCResponse {
  data: GlobalContextOutput
  errors: [Error]
}

type GetGCResponse {
  data: GlobalContextOutput
  errors: [Error]
}

type ListGCResponse {
  data: [GlobalContextOutput]
  errors: [Error]
}

type UpdateGCResponse {
  data: jsonb
  errors: [Error]
}

type DeleteGCResponse {
  data: jsonb
  errors: [Error]
}

type Error {
  message: String!
  code: String
}

type WorkflowValidateResponse {
  message: String
}

type WorkflowDryrunResponse {
  status: String!
  output: jsonb
  error: String
  dryrun_id: String
  execution_id: String
  tasks: [WorkflowExecutionTaskResponse]
}

type ExportRecommendationResponse {
  file_data: String!
  filename: String!
  content_type: String!
  record_count: Int
}

type WorkflowDefinitionFailurePolicyResponse {
  action: String
  retry: WorkflowDefinitionRetryPolicyResponse
}

type WorkflowDefinitionRetryPolicyResponse {
  initial_interval: String
  backoff_coefficient: Float
  maximum_interval: String
  maximum_attempts: Int
  non_retryable_error_types: [String]
}

type ListAIMemoryResponse {
  data: [AIMemoryResponse]
  errors: [Error]
}

type AIMemoryResponse {
  id: String!
  account_id: String!
  conversation_id: String
  message_id: String
  content: String
  memory_type: String
  created_at: timestamp
}

type PerformanceMetric {
  name: String
  unit: String
  timestamps: [bigint]
  values: [Float]
}

type PerformanceQuery {
  query_id: String
  query_text: String
  database_load: Float
  execution_count: bigint
  total_duration: Float
  avg_duration: Float
  min_duration: Float
  max_duration: Float
  avg_cpu_time: Float
  avg_rows_processed: bigint
  cache_hit_ratio: Float
}

type PerformanceWaitEvent {
  event_type: String
  event_name: String
  database_load: Float
  percentage: Float
  wait_count: bigint
  total_wait_time: Float
  avg_wait_time: Float
}

type PerformanceUser {
  user_name: String
  database_load: Float
  percentage: Float
}

type PerformanceHost {
  host_name: String
  database_load: Float
  percentage: Float
}

type QueryDatabasePerformanceResponse {
  database_identifier: String
  provider: String
  performance_enabled: Boolean
  load_metrics: [PerformanceMetric]
  resource_metrics: [PerformanceMetric]
  top_queries: [PerformanceQuery]
  wait_events: [PerformanceWaitEvent]
  top_users: [PerformanceUser]
  top_hosts: [PerformanceHost]
  metadata: jsonb
}

type WorkflowRetriggerResponse {
  id: String!
  execution_id: String!
}

type WorkflowCancelResponse {
  message: String
}

type WorkflowCompleteApprovalResponse {
  message: String
}

type ListAIReferencesResponse {
  data: [AIReferenceResponse]
  errors: [Error]
}

type AIReferenceResponse {
  id: String
  account_id: String
  conversation_id: String
  message_id: String
  agent_id: String
  reference_id: String
  type: String
  content: String
  created_at: timestamp
}

type AITriggerInvestigationResponse {
  data: AITriggerInvestigationDataResponse
}

type AISubmitClientToolCallResponse {
  data: AISubmitClientToolCallResponseData
}

type AISubmitClientToolCallResponseData {
  status: String
}

type AITriggerInvestigationDataResponse {
  response: [String!]!
  query: String!
  agent_step_response: [String!]!
  chain_name: String!
  conversation_id: String
  message_id: String
  session_id: String
}

type UserTenantRolesResponse {
  rows: [UserTenantRoleRow]
}

type UserTenantRoleRow {
  entity_id: String
  entity_type: String
  role: String
  tenant_id: String
  username: String
}

type UsersByTenantResponse {
  rows: [UserByTenantRow]
}

type UserByTenantRow {
  id: String
  display_name: String
  status: String
  username: String
  created_at: String
  tenant_id: String
  user_roles: Json
  user_groups: Json
  last_accessed_at: String
}

type ThresholdSuggestionOutput {
  available: Boolean!
  source: String!
  alert_definition: ThresholdAlertDefinition
  firing_analysis: ThresholdFiringAnalysis
  metric_history: ThresholdMetricHistory
  suggestion: ThresholdSuggestionDetail
  alert_quality: ThresholdAlertQualityScore
  error: String
}

type ThresholdAlertDefinition {
  metric_name: String!
  metric_namespace: String!
  operator: String!
  current_threshold: Float!
  aggregation: String!
  period: Int!
  evaluation_periods: Int!
  alarm_name: String!
  alarm_arn: String
}

type ThresholdFiringAnalysis {
  total_occurrences: Int!
  time_range_days: Int!
  avg_firings_per_day: Float!
  metric_values_at_firing: [Float]
}

type ThresholdMetricHistory {
  timestamps: [bigint]
  values: [Float]
  start_time: String!
  end_time: String!
  step: Int!
}

type ThresholdSuggestionDetail {
  suggested_threshold: Float!
  reason: String!
  confidence: String!
  metric_p50: Float!
  metric_p90: Float!
  metric_p95: Float!
  metric_p99: Float!
  metric_median: Float
  metric_mad: Float
  estimated_reduction: Float!
  method: String
  recommendation_type: String
  suggested_duration: Int
  duration_reason: String
}

type ThresholdSuggestionListOutput {
  suggestions: [ThresholdSuggestionListItem!]!
  total: Int!
}

type ThresholdSuggestionListItem {
  id: String!
  alert_rule_key: String!
  fingerprint: String!
  cloud_account_id: String!
  source: String!
  alert_name: String
  metric_name: String
  metric_namespace: String
  current_threshold: Float
  operator: String
  suggested_threshold: Float
  reason: String
  confidence: String
  estimated_reduction: Float
  method: String
  recommendation_type: String
  computed_at: String
  event_aggregation_key: String
  firing_analysis: jsonb
  alert_quality: jsonb
  metric_stats: jsonb
  query_metadata: jsonb
}

type ThresholdAlertQualityScore {
  flapping_rate: Float!
  mean_time_to_close: Float!
  firing_frequency: Float!
  resolution_rate: Float!
  engagement_rate: Float!
  transient_rate: Float!
  duration_p90: Float!
  instant_rate: Float!
  classification: String!
  recommendation: String!
}

type UsersByTenantAggregation {
  id: String
  display_name: String
  status: String
  username: String
  created_at: String
  tenant_id: String
  count: Int
}

type UsersByTenantAggregationResponse {
  rows: [UsersByTenantAggregation!]!
  execution_time: Int
}

type NotificationRulesResponse {
  rows: [NotificationRule!]!
}

type NotificationRule {
  id: String
  account_id: String
  source: String
  created_at: Datetime
  cluster: String
  description: String
  aggregation_key: String
  expires_at: Datetime
  workload: String
  name: String
  namespace: String
  is_suppressed: Boolean!
  created_by: String
  severity: String
  delivery_mode: String
  frequency: String
  tenant_id: String
  created_by_display_name: String
  notification_rule_mappings: jsonb
}

type NotificationRulesAggregationResponse {
  rows: [NotificationRulesAggregation!]!
}

type NotificationRulesAggregation {
  id: String
  account_id: String
  source: String
  created_at: Datetime
  cluster: String
  name: String
  namespace: String
  is_suppressed: Boolean
  severity: String
  delivery_mode: String
  tenant_id: String
  count: Int
}

type UserGroupsResponse {
  rows: [UserGroup]
}

type UserGroup {
  id: String
  name: String
  description: String
  owner: String
  created_at: String
  tenant_id: String
  group_roles: Json
  owner_display_name: String
  member_count: Int
}

type UserGroupsAggregationResponse {
  rows: [UserGroupsAggregation!]!
}

type UserGroupsAggregation {
  id: String
  name: String
  description: String
  owner: String
  created_at: String
  tenant_id: String
  count: Int
}

type IntegrationResponse {
  rows: [Integration!]!
}

type Integration {
  id: String
  name: String
  type: String
  source: String
  status: String
  labels: jsonb
  created_at: Datetime
  updated_at: Datetime
  created_by: String
  updated_by: String
  tenant_id: String
  created_by_display_name: String
  updated_by_display_name: String
  integrations_cloud_accounts: jsonb
  integration_config_values: jsonb
}

type IntegrationAggregationResponse {
  rows: [IntegrationAggregation!]!
}

type IntegrationAggregation {
  id: String
  name: String
  type: String
  source: String
  status: String
  created_at: Datetime
  tenant_id: String
  count: Int
}

type CloudAccountResponse {
  rows: [CloudAccount!]!
}

type CloudAccount {
  account_name: String
  account_number: String
  id: String
  created_at: Datetime
  created_by: String
  created_by_name: String
  status: String
  cloud_provider: String
  tenant_id: String
  cloud_account_attrs: jsonb
  account_type: String
  account_access: jsonb
  synced_at: String
  agent_synced_at: String
  sync_status: String
  agents: jsonb
  data: jsonb
}

type CloudAccountAggregationResponse {
  rows: [CloudAccountAggregation!]!
}

type CloudAccountAggregation {
  id: String
  account_name: String
  account_number: String
  status: String
  cloud_provider: String
  created_at: Datetime
  created_by: String
  tenant_id: String
  count: Int
}

type UserSuperAdminRoleResponse {
  rows: [UserSuperAdminRoleRow]
}

type UserSuperAdminRoleRow {
  role: String
}

type UserAccountIdsByTenantResponse {
  rows: [UserAccountIdsByTenantRow]
}

type UserAccountIdsByTenantRow {
  id: String
}

type TenantAttributesResponse {
  rows: [TenantAttributeRow]
}

type TenantAttributeRow {
  id: String
  name: String
  value: String
  tenant_id: String
}

type UserDetailsResponse {
  rows: [UserDetailsRow]
}

type UserDetailsRow {
  id: String
  display_name: String
  username: String
  status: String
  created_at: String
  updated_at: String
  user_roles: String
  user_auths: String
  tenants: String
  groups: String
  user_attrs: String
}

type UserByProviderAccountResponse {
  rows: [UserByProviderAccountRow]
}

type UserByProviderAccountRow {
  auth_id: String
  id: String
  display_name: String
  username: String
  status: String
  created_at: String
  updated_at: String
  account_id: String
  provider: String
  user_roles: String
  user_auths: String
  tenants: String
  groups: String
}

type AgentHealthResponse {
  rows: [AgentHealth!]!
}

type AgentHealth {
  cloud_account_id: String
  tenant_id: String
  type: String
  version: String
  status_message: String
  status: String
  last_connected_at: Datetime
  k8s_version: String
  k8s_provider: String
  connection_status: jsonb
}

type EventRulesResponse {
  rows: [EventRulesRowResponse]
}

type EventRulesRowResponse {
  id: String
  created_at: Datetime
  updated_at: Datetime
  account_id: String
  tenant_id: String
  alert: String
  annotations: jsonb
  expr: String
  duration: String
  labels: jsonb
  source: String
  category: String
  severity: String
  enabled: Boolean
  created_by: String
  updated_by: String
  is_editable: Boolean
  group: String
  name: String
  namespace: String
  alert_type: String
  metric_provider: String
  metric_provider_source: String
  provider_config: jsonb
  external_rule_id: String
}

type EventRulesGroupingsResponse {
  rows: [EventRulesGroupingsRowResponse]
}

type EventRulesGroupingsRowResponse {
  tenant_id: String
  account_id: String
  category: String
  source: String
  severity: String
  enabled: Boolean
  alert: String
  count: Int
}

type SloConfigResponse {
  rows: [SloConfigRowResponse]
}

type SloConfigRowResponse {
  id: String
  name: String
  description: String
  schedule: String
  created_by: String
  updated_by: String
  filter_good_query: String
  filter_bad_query: String
  threshold: Float
  created_at: Datetime
  updated_at: Datetime
  method: String
  histogram_query: String
  cloud_account_id: String
  tenant_id: String
  window: Float
  workload_name: String
  workload_namespace: String
  goal: Float
  enabled: Boolean
}

type SloReportResponse {
  rows: [SloReportRowResponse]
}

type SloReportRowResponse {
  id: String
  created_at: Datetime
  updated_at: Datetime
  config_id: String
  status: String
  cloud_account_id: String
  tenant_id: String
  workload_name: String
  workload_namespace: String
  error_budget_burn_rate: Float
  events_count: Float
  good_events_count: Float
  bad_events_count: Float
  sli_measurement: Float
  slo_config: jsonb
}

type SloReportGroupingsResponse {
  rows: [SloReportGroupingsRowResponse]
}

type SloReportGroupingsRowResponse {
  tenant_id: String
  cloud_account_id: String
  workload_name: String
  workload_namespace: String
  status: String
  config_id: String
  timestamp: Datetime
  count: Int
}

type InsightV2Response {
  rows: [InsightV2RowResponse]
}

type InsightV2RowResponse {
  id: String
  created_at: Datetime
  updated_at: Datetime
  title: String
  type: String
  source: String
  account_id: String
  tenant_id: String
  unique_id: String
  resource_id: String
  status: String
  rule: jsonb
  severity: String
  applications: jsonb
}

type AgentPlaybookResponse {
  rows: [AgentPlaybookRowResponse]
}

type AgentPlaybookRowResponse {
  id: String
  tenant_id: String
  cloud_account_id: String
  trigger_params: jsonb
  action_params: jsonb
  created_at: Datetime
  updated_at: Datetime
  source: String
  processor: String
  alert_name: String
}

type TicketsResponse {
  rows: [TicketsRowResponse]
}

type TicketsRowResponse {
  id: String
  created_at: Datetime
  updated_at: Datetime
  created_by: String
  tenant_id: String
  reference_id: String
  ticket_type: String
  status: String
  message: String
  ticket_id: String
  assignee: String
  integration_id: String
  url: String
  severity: String
  description: String
  title: String
  source: String
  platform: String
  account_id: String
  project_key: String
  created_by_display_name: String
}

type AutoPilotResponse {
  rows: [AutoPilotRowResponse]
}

type AutoPilotRowResponse {
  id: String
  name: String
  account_id: String
  tenant_id: String
  rule: jsonb
  status: String
  category: String
  notification: jsonb
  auto_optimize_resource_maps: jsonb
  schedule_time: String
  next_schedule_time: String
  last_executed_time: String
  created_by: String
  creation_date: String
  start_at: String
  end_at: String
  attributes: jsonb
  username: String
  display_name: String
  updated_by_display_name: String
  account_name: String
}

type AutoPilotGroupingsResponse {
  rows: [AutoPilotGroupingsRowResponse]
}

type AutoPilotGroupingsRowResponse {
  account_id: String
  status: String
  category: String
  count: Int
}

type UpgradePlanAuditResponse {
  rows: [UpgradePlanAuditRowResponse]
}

type UpgradePlanAuditRowResponse {
  id: String
  created_at: Datetime
  tenant_id: String
  plan_id: String
  step_id: String
  task_id: String
  field: String
  action: String
  old_value: String
  new_value: String
  actioned_by: String
  account_id: String
  user_actioned_by: jsonb
}

type recommendation_rule_list_item {
  rule_name: String!
  category: String!
  title: String!
  description: String
  service_name: String
  recommendations: jsonb
  mitigations: jsonb
  compliances: jsonb
  references: jsonb
}

type recommendation_rule_list_output {
  data: [recommendation_rule_list_item!]!
}

type tenant_update_name_output {
  status: String!
  message: String!
}

type tenant_attribute_delete_output {
  status: String!
  affected_rows: Int!
}

type featureflag_upsert_output {
  status: String!
  message: String!
}

type usergroup_create_output {
  id: String!
}

type usergroup_update_output {
  status: String!
  message: String!
}

type user_update_profile_output {
  status: String!
  message: String!
}

type integration_update_status_by_pk_output {
  id: String!
}

type notification_rule_delete_output {
  id: String!
}

type notification_channel_mapping_create_output {
  id: String!
  account_id: String
  platform: String
  team_id: String
  channel_id: String
  created_by: String
  created_at: String
}

type notification_channel_mapping_delete_output {
  id: String!
}

type notification_channel_mapping_update_output {
  id: String!
  account_id: String
  team_id: String
  channel_id: String
}

type application_group_create_output {
  id: String!
}

type application_group_update_output {
  id: String!
}

type cloud_resource_attributes_upsert_output {
  affected_rows: Int!
}

type tenant_onboarding_delete_by_username_output {
  affected_rows: Int!
}

type tenant_onboarding_insert_output {
  id: String!
}

type tenant_onboarding_update_status_output {
  id: String!
}

type tenant_onboarding_record {
  id: String!
  verification_status: String
  verification_token_expiration: String
  username: String
  tenant_name: String
  user_displayname: String
}

type AIGetRcaFormatResponse {
  data: AIGetRcaFormatResponseData
  errors: jsonb
}

type AISaveRcaFormatResponse {
  data: AIGetRcaFormatResponseData
  errors: jsonb
}

type AIGetRcaFormatResponseData {
  is_default: Boolean
  format: String
}

type AISaveRcaFormatResponseData {
  is_default: Boolean
  format: String
}

type Query {
  users_list_status_types: [user_status_types_list_item!]!
}

type user_status_types_list_item {
  value: String!
}

input roles_list_input {
  filter: String
}

type Query {
  roles_list(
    object: roles_list_input
  ): [roles_list_item!]!
}

type roles_list_item {
  display_name: String
  value: String!
}

input user_list_tenants_input {
  username: String!
}

type Query {
  users_list_tenants(
    object: user_list_tenants_input!
  ): [user_list_tenants_item!]!
}

type user_list_tenants_item {
  name: String!
}

input check_group_name_exists_input {
  name: String!
}

type Query {
  usergroups_check_name_exists(
    object: check_group_name_exists_input!
  ): [check_group_name_exists_item!]!
}

type check_group_name_exists_item {
  id: String!
  name: String!
}

type Query {
  event_get_recurrence_info(
    event_id: String!
  ): event_get_recurrence_info_output!
}

type event_get_recurrence_info_output {
  data: [event_recurrence_info_item!]!
}

type event_recurrence_info_item {
  event_id: String!
  first_event_id: String!
  previous_event_id: String!
  occurrence_number: Int!
}

type Query {
  billing_list(
    limit: Int
    offset: Int
  ): billing_list_output!
}

type billing_list_output {
  billing: [billing_list_item!]!
  total_count: billing_action_aggregate_count!
}

type billing_list_item {
  id: String!
  amount_due: Float
  last_billed_amount: Float
  last_billed_date: String
  tier: String
  created_at: String
  updated_at: String
}

type billing_action_aggregate_count {
  aggregate: billing_action_count_fields!
}

type billing_action_count_fields {
  count: Int!
}

input billing_usage_cost_list_input {
  start_date: String!
  end_date: String!
  limit: Int
  offset: Int
}

type Query {
  billing_list_usage_costs(
    start_date: String!
    end_date: String!
    limit: Int
    offset: Int
  ): billing_usage_cost_list_output!
}

type billing_usage_cost_list_output {
  billing_usage_cost: [billing_usage_cost_item!]!
  billing_usage_cost_aggregate: billing_action_aggregate_count!
}

type billing_usage_cost_item {
  billing_date: String
  cost_per_unit: Float
  created_at: String
  id: String!
  name: String
  service_name: String
  total_cost: Float
  units: Int
  updated_at: String
  account_id: String
  cloud_account: billing_cloud_account_ref
}

type billing_cloud_account_ref {
  account_name: String
}

type Query {
  billing_aggregate: billing_infographics_output!
}

type billing_infographics_output {
  total_amount_due: billing_action_aggregate_sum!
  total_billed_amount: billing_action_aggregate_sum!
}

type billing_action_aggregate_sum {
  aggregate: billing_action_sum_fields!
}

type billing_action_sum_fields {
  sum: billing_action_sum_values!
}

type billing_action_sum_values {
  amount_due: Float
  last_billed_amount: Float
}

type Query {
  k8s_nodes_v2(
    where: K8sNodesWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): K8sNodesResponse
}

type Query {
  k8s_nodes_groupings_v2(
    where: K8sNodesGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): K8sNodesGroupingsResponse
}

type Query {
  cloud_resource_v2(
    where: CloudResourcesWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): CloudResourcesResponse
}

input ResourceDetailsWhereRequest {
  _and: [ResourceDetailsWhereRequest]
  _or: [ResourceDetailsWhereRequest]
  _not: ResourceDetailsWhereRequest
  id: QueryWhereStringRequest
  account: QueryWhereStringRequest
  tenant: QueryWhereStringRequest
  status: QueryWhereStringRequest
  spend_date: QueryWhereDatetimeRequest
}

type ResourceDetailsResponse {
  rows: [ResourceDetailsRowResponse]
}

type ResourceDetailsRowResponse {
  id: String
  name: String
  arn: String
  type: String
  status: String
  meta: Json
  tags: Json
  account: String
  region: String
  service_name: String
  first_seen: Datetime
  last_seen: Datetime
  created_at: Datetime
  updated_at: Datetime
  resource_created_on: Datetime
  account_name: String
  cloud_provider: String
  account_synced_at: Datetime
  account_type: String
  sync_status: String
  spend_amount: Float
  recommendation_count: Int
  recommendation_estimated_savings: Float
  critical_recommendation_count: Int
}

type Query {
  resource_details_v2(
    where: ResourceDetailsWhereRequest
    limit: Int
    offset: Int
    columns: [String!]
  ): ResourceDetailsResponse
}

type Query {
  cloud_resource_attributes_v2(
    where: CloudResourceAttributesWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): CloudResourceAttributesResponse
}

type Query {
  cloud_resource_groupings_v2(
    where: CloudResourceGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    group_by: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): CloudResourceGroupingsResponse
}

input K8sNodesWhereRequest {
  _and: [K8sNodesWhereRequest]
  _or: [K8sNodesWhereRequest]
  _not: K8sNodesWhereRequest
  cloud_account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  node_creation_time: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  node_type: QueryWhereStringRequest
  node_flavor: QueryWhereStringRequest
  node_region: QueryWhereStringRequest
  node_zone: QueryWhereStringRequest
  cloud_resource_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

input K8sNodesGroupingsWhereRequest {
  _and: [K8sNodesGroupingsWhereRequest]
  _or: [K8sNodesGroupingsWhereRequest]
  _not: K8sNodesGroupingsWhereRequest
  cloud_account_id: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  node_type: QueryWhereStringRequest
  node_flavor: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
}

input CloudResourcesWhereRequest {
  _and: [CloudResourcesWhereRequest]
  _or: [CloudResourcesWhereRequest]
  _not: CloudResourcesWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  account: QueryWhereStringRequest
  tenant: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  type: QueryWhereStringRequest
  service_name: QueryWhereStringRequest
  is_active: QueryWhereBooleanRequest
  status: QueryWhereStringRequest
  region: QueryWhereStringRequest
  meta: QueryWhereStringRequest
  tags: QueryWhereStringRequest
}

input CloudResourceGroupingsWhereRequest {
  _and: [CloudResourceGroupingsWhereRequest]
  _or: [CloudResourceGroupingsWhereRequest]
  _not: CloudResourceGroupingsWhereRequest
  account_id: QueryWhereStringRequest
  service_name: QueryWhereStringRequest
  type: QueryWhereStringRequest
  status: QueryWhereStringRequest
  region: QueryWhereStringRequest
  meta: QueryWhereStringRequest
  tags: QueryWhereStringRequest
}

input CloudResourceAttributesWhereRequest {
  _and: [CloudResourceAttributesWhereRequest]
  _or: [CloudResourceAttributesWhereRequest]
  _not: CloudResourceAttributesWhereRequest
  resource_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  name: QueryWhereStringRequest
  value: QueryWhereStringRequest
}

type K8sNodesResponse {
  rows: [K8sNodesRowResponse]
}

type K8sNodesRowResponse {
  name: String
  is_active: Boolean
  node_creation_time: Datetime
  updated_at: Datetime
  conditions: Json
  node_type: String
  node_flavor: String
  node_region: String
  node_zone: String
  memory_capacity: Float
  cpu_capacity: Float
  memory_allocatable: Float
  cpu_allocatable: Float
  memory_limits: Float
  cpu_limits: Float
  cloud_resource_id: String
  cloud_account_id: String
  external_ip: String
  internal_ip: String
  labels: Json
  taints: Json
  cost: Float
  meta: Json
  pod_count: Int
}

type K8sNodesGroupingsResponse {
  rows: [K8sNodesGroupingsRowResponse]
}

type K8sNodesGroupingsRowResponse {
  cloud_account_id: String
  is_active: Boolean
  node_type: String
  node_flavor: String
  count: Int
}

type CloudResourcesResponse {
  rows: [CloudResourcesRowResponse]
}

type CloudResourcesRowResponse {
  id: String
  name: String
  arn: String
  type: String
  status: String
  is_active: Boolean
  meta: Json
  tags: Json
  account: String
  namespace: String
  service_name: String
  region: String
  cloud_provider: String
  external_resource_id: String
  resource_id: String
  first_seen: Datetime
  last_seen: Datetime
  created_at: Datetime
  updated_at: Datetime
  resource_created_on: Datetime
  account_name: String
}

type CloudResourceAttributesResponse {
  rows: [CloudResourceAttributesRowResponse]
}

type CloudResourceAttributesRowResponse {
  id: String
  name: String
  value: String
  labels: Json
  resource_id: String
  account_id: String
  namespace: String
  created_at: Datetime
  last_seen_at: Datetime
  resource_uuid: String
  resource_arn: String
  resource_name: String
  resource_type: String
  resource_meta: Json
  resource_status: String
  resource_created_at: Datetime
  resource_updated_at: Datetime
}

type CloudResourceGroupingsResponse {
  rows: [CloudResourceGroupingsRowResponse]
}

type CloudResourceGroupingsRowResponse {
  account_id: String
  service_name: String
  type: String
  status: String
  region: String
  count: Int
}

type Query {
  notification_channel_account_mapping_v2(
    where: NotificationChannelAccountMappingWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): NotificationChannelAccountMappingResponse
}

input NotificationChannelAccountMappingWhereRequest {
  _and: [NotificationChannelAccountMappingWhereRequest]
  _or: [NotificationChannelAccountMappingWhereRequest]
  _not: NotificationChannelAccountMappingWhereRequest
  id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  platform: QueryWhereStringRequest
  team_id: QueryWhereStringRequest
  channel_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
}

type NotificationChannelAccountMappingResponse {
  rows: [NotificationChannelAccountMappingRowResponse]
}

type NotificationChannelAccountMappingRowResponse {
  id: String
  account_id: String
  platform: String
  team_id: String
  channel_id: String
  channel_metadata: Json
  created_at: Datetime
  updated_at: Datetime
  created_by: String
  account_name: String
  cloud_provider: String
  created_by_display_name: String
}

type Query {
  applications_list_groups(
    where: ApplicationGroupWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): ApplicationGroupResponse
}

type Query {
  applications_aggregate_groups(
    where: ApplicationGroupGroupingsWhereRequest
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): ApplicationGroupGroupingsResponse
}

type Query {
  applications_list_group_mappings(
    where: ApplicationGroupMappingWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): ApplicationGroupMappingResponse
}

type Query {
  applications_aggregate_group_mappings(
    where: ApplicationGroupMappingGroupingsWhereRequest
    columns: [String!]
    column_transformations: [QueryColumnTransformationRequest!]
    group_by: [String!]
  ): ApplicationGroupMappingGroupingsResponse
}

input ApplicationGroupWhereRequest {
  _and: [ApplicationGroupWhereRequest]
  _or: [ApplicationGroupWhereRequest]
  _not: ApplicationGroupWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

input ApplicationGroupGroupingsWhereRequest {
  _and: [ApplicationGroupGroupingsWhereRequest]
  _or: [ApplicationGroupGroupingsWhereRequest]
  _not: ApplicationGroupGroupingsWhereRequest
  name: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

input ApplicationGroupMappingWhereRequest {
  _and: [ApplicationGroupMappingWhereRequest]
  _or: [ApplicationGroupMappingWhereRequest]
  _not: ApplicationGroupMappingWhereRequest
  id: QueryWhereStringRequest
  group_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  namespace_name: QueryWhereStringRequest
  workload_name: QueryWhereStringRequest
  workload_kind: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

input ApplicationGroupMappingGroupingsWhereRequest {
  _and: [ApplicationGroupMappingGroupingsWhereRequest]
  _or: [ApplicationGroupMappingGroupingsWhereRequest]
  _not: ApplicationGroupMappingGroupingsWhereRequest
  group_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

type ApplicationGroupResponse {
  rows: [ApplicationGroupRowResponse]
}

type ApplicationGroupRowResponse {
  id: String
  name: String
  description: String
  created_at: Datetime
  updated_at: Datetime
  created_by: String
  updated_by: String
  created_by_display_name: String
  updated_by_display_name: String
}

type ApplicationGroupGroupingsResponse {
  rows: [ApplicationGroupGroupingsRowResponse]
}

type ApplicationGroupGroupingsRowResponse {
  count: Int
}

type ApplicationGroupMappingResponse {
  rows: [ApplicationGroupMappingRowResponse]
}

type ApplicationGroupMappingRowResponse {
  id: String
  group_id: String
  account_id: String
  namespace_name: String
  workload_name: String
  workload_kind: String
  cloud_resource_id: String
  account_name: String
  workload_is_active: Boolean
  workload_display_name: String
  workload_namespace: String
}

type ApplicationGroupMappingGroupingsResponse {
  rows: [ApplicationGroupMappingGroupingsRowResponse]
}

type ApplicationGroupMappingGroupingsRowResponse {
  group_id: String
  count: Int
}

type Query {
  autooptimize_list_tasks(
    where: AutoPilotTaskWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): AutoPilotTaskResponse
}

type Query {
  autooptimize_aggregate_tasks(
    where: AutoPilotTaskGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    group_by: [String!]
  ): AutoPilotTaskGroupingsResponse
}

type Query {
  autooptimize_list_approvals(
    where: AutoPilotApprovalsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): AutoPilotApprovalsResponse
}

type Query {
  autooptimize_aggregate_approvals(
    where: AutoPilotApprovalsGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    group_by: [String!]
  ): AutoPilotApprovalsGroupingsResponse
}

type Query {
  autooptimize_list_approval_policies(
    where: AutoPilotApprovalPolicyWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): AutoPilotApprovalPolicyResponse
}

type Query {
  recommendation_resolution_v2(
    where: RecommendationResolutionWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): RecommendationResolutionResponse
}

type Query {
  recommendation_resolution_groupings_v2(
    where: RecommendationResolutionGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    group_by: [String!]
  ): RecommendationResolutionGroupingsResponse
}

type Query {
  event_resolution_v2(
    where: EventResolutionWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): EventResolutionResponse
}

type Query {
  event_resolution_groupings_v2(
    where: EventResolutionGroupingsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    group_by: [String!]
  ): EventResolutionGroupingsResponse
}

type Query {
  ai_list_functions(
    where: LlmFunctionsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): LlmFunctionsResponse
}

type Query {
  ai_list_agent_installations(
    where: LlmAgentsInstallationWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
    columns: [String!]
  ): LlmAgentsInstallationResponse
}

input LlmAgentsInstallationWhereRequest {
  _and: [LlmAgentsInstallationWhereRequest]
  _or: [LlmAgentsInstallationWhereRequest]
  _not: LlmAgentsInstallationWhereRequest
  id: QueryWhereStringRequest
  agent_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
}

type LlmAgentsInstallationResponse {
  rows: [LlmAgentsInstallationRowResponse]
}

type LlmAgentsInstallationRowResponse {
  id: String
  agent_id: String
  account_id: String
  config: Json
  tools: Json
  additional_instructions: String
  created_at: Datetime
  created_by: String
  updated_at: Datetime
  updated_by: String
}

input AutoPilotTaskWhereRequest {
  _and: [AutoPilotTaskWhereRequest]
  _or: [AutoPilotTaskWhereRequest]
  _not: AutoPilotTaskWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  auto_pilot_id: QueryWhereStringRequest
  task_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  scheduled_time: QueryWhereDatetimeRequest
  recommendation_id: QueryWhereStringRequest
}

input AutoPilotTaskGroupingsWhereRequest {
  _and: [AutoPilotTaskGroupingsWhereRequest]
  _or: [AutoPilotTaskGroupingsWhereRequest]
  _not: AutoPilotTaskGroupingsWhereRequest
  account_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  scheduled_time: QueryWhereDatetimeRequest
  auto_pilot_id: QueryWhereStringRequest
  auto_pilot_category: QueryWhereStringRequest
  auto_pilot_account_id: QueryWhereStringRequest
}

input AutoPilotApprovalsWhereRequest {
  _and: [AutoPilotApprovalsWhereRequest]
  _or: [AutoPilotApprovalsWhereRequest]
  _not: AutoPilotApprovalsWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  autopilot_id: QueryWhereStringRequest
  reviewer_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  auto_pilot_type: QueryWhereStringRequest
}

input AutoPilotApprovalsGroupingsWhereRequest {
  _and: [AutoPilotApprovalsGroupingsWhereRequest]
  _or: [AutoPilotApprovalsGroupingsWhereRequest]
  _not: AutoPilotApprovalsGroupingsWhereRequest
  account_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  autopilot_id: QueryWhereStringRequest
}

input AutoPilotApprovalPolicyWhereRequest {
  _and: [AutoPilotApprovalPolicyWhereRequest]
  _or: [AutoPilotApprovalPolicyWhereRequest]
  _not: AutoPilotApprovalPolicyWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
}

input RecommendationResolutionWhereRequest {
  _and: [RecommendationResolutionWhereRequest]
  _or: [RecommendationResolutionWhereRequest]
  _not: RecommendationResolutionWhereRequest
  id: QueryWhereStringRequest
  recommendation_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  type: QueryWhereStringRequest
  resolver_type: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
}

input RecommendationResolutionGroupingsWhereRequest {
  _and: [RecommendationResolutionGroupingsWhereRequest]
  _or: [RecommendationResolutionGroupingsWhereRequest]
  _not: RecommendationResolutionGroupingsWhereRequest
  recommendation_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  type: QueryWhereStringRequest
  resolver_type: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
}

input EventResolutionWhereRequest {
  _and: [EventResolutionWhereRequest]
  _or: [EventResolutionWhereRequest]
  _not: EventResolutionWhereRequest
  id: QueryWhereStringRequest
  event_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  type: QueryWhereStringRequest
  resolver_type: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  event_cloud_account_id: QueryWhereStringRequest
}

input EventResolutionGroupingsWhereRequest {
  _and: [EventResolutionGroupingsWhereRequest]
  _or: [EventResolutionGroupingsWhereRequest]
  _not: EventResolutionGroupingsWhereRequest
  event_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  type: QueryWhereStringRequest
  resolver_type: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  event_cloud_account_id: QueryWhereStringRequest
}

input LlmFunctionsWhereRequest {
  _and: [LlmFunctionsWhereRequest]
  _or: [LlmFunctionsWhereRequest]
  _not: LlmFunctionsWhereRequest
  id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  status: QueryWhereStringRequest
}

type AutoPilotTaskResponse {
  rows: [AutoPilotTaskRowResponse]
}

type AutoPilotTaskRowResponse {
  id: String
  tenant_id: String
  account_id: String
  auto_pilot_id: String
  task_id: String
  name: String
  command: String
  reason: String
  status: String
  meta: Json
  resource_filter: Json
  recommendation_id: String
  scheduled_time: Datetime
  created_at: Datetime
  updated_at: Datetime
  auto_pilot_category: String
  auto_pilot_account_id: String
  auto_pilot_resource_maps: Json
  attributes: Json
}

type AutoPilotTaskGroupingsResponse {
  rows: [AutoPilotTaskGroupingsRowResponse]
}

type AutoPilotTaskGroupingsRowResponse {
  count: Int
}

type AutoPilotApprovalsResponse {
  rows: [AutoPilotApprovalsRowResponse]
}

type AutoPilotApprovalsRowResponse {
  id: String
  tenant_id: String
  account_id: String
  autopilot_id: String
  policy_id: String
  reviewer_id: String
  status: String
  auto_pilot_type: String
  reviewer_comments: String
  attributes: Json
  created_at: Datetime
  updated_at: Datetime
  approval_status_description: String
  reviewer_display_name: String
}

type AutoPilotApprovalsGroupingsResponse {
  rows: [AutoPilotApprovalsGroupingsRowResponse]
}

type AutoPilotApprovalsGroupingsRowResponse {
  count: Int
}

type AutoPilotApprovalPolicyResponse {
  rows: [AutoPilotApprovalPolicyRowResponse]
}

type AutoPilotApprovalPolicyRowResponse {
  id: String
  tenant_id: String
  account_id: String
  created_by: String
  updated_by: String
  policy_attributes: Json
  created_at: Datetime
  updated_at: Datetime
  account_name: String
  created_by_display_name: String
  updated_by_display_name: String
}

type RecommendationResolutionResponse {
  rows: [RecommendationResolutionRowResponse]
}

type RecommendationResolutionRowResponse {
  id: String
  recommendation_id: String
  type: String
  type_reference_id: String
  status: String
  status_message: String
  resolver_id: String
  resolver_type: String
  data: Json
  created_at: Datetime
  updated_at: Datetime
  tenant_id: String
  account_id: String
  rec_recommendation: String
  rec_rule_name: String
  rec_severity: String
  rec_status: String
  rec_recommendation_action: String
  rec_category: String
  rec_estimated_savings: Float
  rec_resource_name: String
  rec_resource_meta: Json
  resolver_display_name: String
}

type RecommendationResolutionGroupingsResponse {
  rows: [RecommendationResolutionGroupingsRowResponse]
}

type RecommendationResolutionGroupingsRowResponse {
  count: Int
  resolver_type: String
  type: String
  recommendation_id: String
}

type EventResolutionResponse {
  rows: [EventResolutionRowResponse]
}

type EventResolutionRowResponse {
  id: String
  event_id: String
  type: String
  type_reference_id: String
  status: String
  status_message: String
  resolver_id: String
  resolver_type: String
  data: Json
  created_at: Datetime
  updated_at: Datetime
  tenant_id: String
  account_id: String
  resolver_display_name: String
  event_subject_name: String
  event_subject_namespace: String
  event_cloud_account_id: String
  event_priority: String
  event_category: String
}

type EventResolutionGroupingsResponse {
  rows: [EventResolutionGroupingsRowResponse]
}

type EventResolutionGroupingsRowResponse {
  count: Int
}

type LlmFunctionsResponse {
  rows: [LlmFunctionsRowResponse]
}

type LlmFunctionsRowResponse {
  id: String
  tenant_id: String
  account_id: String
  name: String
  description: String
  prompt: String
  variables: Json
  variable_defaults: Json
  status: String
  version: Int
  created_by: String
  updated_by: String
  created_at: Datetime
  updated_at: Datetime
}

type Query {
  cloud_resource_details_v2(
    where: CloudResourceDetailsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): CloudResourceDetailsResponse!
}

input CloudResourceDetailsWhereRequest {
  _and: [CloudResourceDetailsWhereRequest]
  _or: [CloudResourceDetailsWhereRequest]
  _not: CloudResourceDetailsWhereRequest
  cloud_provider: QueryWhereStringRequest
  service_name: QueryWhereStringRequest
  service_type: QueryWhereStringRequest
  resource_type: QueryWhereStringRequest
  resource_region: QueryWhereStringRequest
  resource_cost: QueryWhereFloatRequest
  resource_capacity: QueryWhereFloatRequest
}

type CloudResourceDetailsResponse {
  rows: [CloudResourceDetailsRowResponse]
}

type CloudResourceDetailsRowResponse {
  id: Int
  cloud_provider: String
  service_name: String
  service_type: String
  resource_type: String
  resource_region: String
  resource_cost: Float
  resource_capacity: Float
  database_engine: String
  deployment_option: String
}

type Query {
  cloud_resources_list_v2(
    where: CloudResourcesListWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): CloudResourcesListResponse
}

input CloudResourcesListWhereRequest {
  _and: [CloudResourcesListWhereRequest]
  _or: [CloudResourcesListWhereRequest]
  _not: CloudResourcesListWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  resourse_id: QueryWhereStringRequest
  account: QueryWhereStringRequest
  tenant: QueryWhereStringRequest
  namespace: QueryWhereStringRequest
  type: QueryWhereStringRequest
  service_name: QueryWhereStringRequest
  status: QueryWhereStringRequest
  region: QueryWhereStringRequest
  meta: QueryWhereStringRequest
  tags: QueryWhereStringRequest
  metric: QueryWhereStringRequest
}

type CloudResourcesListResponse {
  rows: [CloudResourcesListRowResponse]
}

type CloudResourcesListRowResponse {
  id: String
  name: String
  resourse_id: String
  type: String
  status: String
  meta: Json
  tags: Json
  account: String
  tenant: String
  namespace: String
  service_name: String
  region: String
  created_at: Datetime
  resourse_created_on: Datetime
  spend_amount: Float
  latest_metric: String
  latest_metric_value: Float
  latest_metric_timestamp: Datetime
  total_count: Int
}

type Query {
  ai_list_conversations(
    where: LlmConversationListWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): LlmConversationListResponse!
}

input LlmConversationListWhereRequest {
  _and: [LlmConversationListWhereRequest]
  _or: [LlmConversationListWhereRequest]
  _not: LlmConversationListWhereRequest
  id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  source: QueryWhereStringRequest
  status: QueryWhereStringRequest
  title: QueryWhereStringRequest
  user_id: QueryWhereStringRequest
  user_username: QueryWhereStringRequest
  user_display_name: QueryWhereStringRequest
  is_saved: QueryWhereBooleanRequest
  message_search: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  session_id: QueryWhereStringRequest
  extract_event_ids_from_title: QueryWhereBooleanRequest
  event_status: QueryWhereStringRequest
}

type LlmConversationListResponse {
  rows: [LlmConversationListRowResponse]
}

type LlmConversationListRowResponse {
  id: String
  updated_at: Datetime
  status: String
  user_id: String
  session_id: String
  created_at: Datetime
  source: String
  title: String
  account_id: String
  user_display_name: String
  user_username: String
  for_status: Json
  is_saved: Boolean
  total_count: Int
}

type Query {
  ai_get_conversation_detail_polling(
    where: LlmConversationDetailWhereRequest
    limit: Int
    offset: Int
  ): LlmConversationDetailResponse!
}

input LlmConversationDetailWhereRequest {
  _and: [LlmConversationDetailWhereRequest]
  _or: [LlmConversationDetailWhereRequest]
  _not: LlmConversationDetailWhereRequest
  id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  session_id: QueryWhereStringRequest
  source: QueryWhereStringRequest
  status: QueryWhereStringRequest
}

type LlmConversationDetailResponse {
  rows: [LlmConversationDetailRowResponse]
}

type LlmConversationDetailRowResponse {
  id: String
  session_id: String
  account_id: String
  created_at: Datetime
  updated_at: Datetime
  source: String
  context: String
  status: String
  user_id: String
  title: String
  user_display_name: String
  messages: Json
}

type Query {
  ai_aggregate_conversations(
    where: LlmConversationGroupingsWhereRequest
  ): LlmConversationGroupingsResponse!
}

input LlmConversationGroupingsWhereRequest {
  _and: [LlmConversationGroupingsWhereRequest]
  _or: [LlmConversationGroupingsWhereRequest]
  _not: LlmConversationGroupingsWhereRequest
  id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  source: QueryWhereStringRequest
  status: QueryWhereStringRequest
  message_created_at: QueryWhereDatetimeRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  title: QueryWhereStringRequest
  extract_event_ids_from_title: QueryWhereBooleanRequest
  event_status: QueryWhereStringRequest
}

type LlmConversationGroupingsResponse {
  rows: [LlmConversationGroupingsRowResponse]
}

type LlmConversationGroupingsRowResponse {
  count: Int
}

type Query {
  resource_spend_trend_v2(
    where: ResourceSpendTrendWhereRequest
    order_by: [QuerySortByRequest!]
    column_transformations: [QueryColumnTransformationRequest!]
  ): ResourceSpendTrendResponse
}

input ResourceSpendTrendWhereRequest {
  _and: [ResourceSpendTrendWhereRequest]
  _or: [ResourceSpendTrendWhereRequest]
  _not: ResourceSpendTrendWhereRequest
  account_id: QueryWhereStringRequest
  resource_external_id: QueryWhereStringRequest
  spend_date: QueryWhereDatetimeRequest
  exclude_aggregate: QueryWhereBooleanRequest
}

type ResourceSpendTrendResponse {
  rows: [ResourceSpendTrendRowResponse]
}

type ResourceSpendTrendRowResponse {
  spend_date: Datetime
  spend_amount: Float
  spend_count: Int
  currency_type: String
  account_id: String
  tenant_id: String
  resource_external_id: String
}

type Query {
  knowledge_base_v2(
    where: KnowledgeBaseWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): KnowledgeBaseResponse
}

input KnowledgeBaseWhereRequest {
  _and: [KnowledgeBaseWhereRequest]
  _or: [KnowledgeBaseWhereRequest]
  _not: KnowledgeBaseWhereRequest
  id: QueryWhereStringRequest
  rule_name: QueryWhereStringRequest
  description: QueryWhereStringRequest
  impact: QueryWhereStringRequest
  diagnosis: QueryWhereStringRequest
  mitigation: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

type KnowledgeBaseResponse {
  rows: [KnowledgeBaseRowResponse]
}

type KnowledgeBaseRowResponse {
  id: String
  rule_name: String
  description: String
  impact: String
  diagnosis: String
  mitigation: String
  created_at: Datetime
  updated_at: Datetime
}

type Query {
  featureflags_list(
    where: FeatureFlagWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): FeatureFlagResponse
}

input FeatureFlagWhereRequest {
  _and: [FeatureFlagWhereRequest]
  _or: [FeatureFlagWhereRequest]
  _not: FeatureFlagWhereRequest
  id: QueryWhereStringRequest
  feature_id: QueryWhereStringRequest
  feature_module_id: QueryWhereStringRequest
  status: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
}

type FeatureFlagResponse {
  rows: [FeatureFlagRowResponse]
}

type FeatureFlagRowResponse {
  id: String
  feature_id: String
  feature_module_id: String
  status: String
  account_id: String
  tenant_id: String
  created_at: Datetime
}

type Query {
  users_list_history(
    where: UserHistoryWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): UserHistoryResponse
}

input UserHistoryWhereRequest {
  _and: [UserHistoryWhereRequest]
  _or: [UserHistoryWhereRequest]
  _not: UserHistoryWhereRequest
  id: QueryWhereStringRequest
  user_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
  account_id: QueryWhereStringRequest
  module: QueryWhereStringRequest
  data: QueryWhereStringRequest
  status: QueryWhereStringRequest
  duration: QueryWhereFloatRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

type UserHistoryResponse {
  rows: [UserHistoryRowResponse]
}

type UserHistoryRowResponse {
  id: String
  user_id: String
  tenant_id: String
  account_id: String
  module: String
  data: String
  meta: Json
  duration: Float
  status: String
  created_at: Datetime
  updated_at: Datetime
}

type Query {
  tenants_list(
    where: TenantWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): TenantResponse
}

input TenantWhereRequest {
  _and: [TenantWhereRequest]
  _or: [TenantWhereRequest]
  _not: TenantWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  type: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

type TenantResponse {
  rows: [TenantRowResponse]
}

type TenantRowResponse {
  id: String
  name: String
  type: String
  created_at: Datetime
  updated_at: Datetime
}

type Query {
  features_list(
    where: FeatureWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): FeatureResponse
}

input FeatureWhereRequest {
  _and: [FeatureWhereRequest]
  _or: [FeatureWhereRequest]
  _not: FeatureWhereRequest
  value: QueryWhereStringRequest
  description: QueryWhereStringRequest
}

type FeatureResponse {
  rows: [FeatureRowResponse]
}

type FeatureRowResponse {
  value: String
  description: String
}

type Query {
  tenant_by_user_v2(
    where: TenantByUserWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): TenantByUserResponse
}

input TenantByUserWhereRequest {
  _and: [TenantByUserWhereRequest]
  _or: [TenantByUserWhereRequest]
  _not: TenantByUserWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  username: QueryWhereStringRequest
}

type TenantByUserResponse {
  rows: [TenantByUserRowResponse]
}

type TenantByUserRowResponse {
  id: String
  name: String
  username: String
}

type Query {
  cloud_account_attrs_v2(
    where: CloudAccountAttrsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): CloudAccountAttrsResponse
}

input CloudAccountAttrsWhereRequest {
  _and: [CloudAccountAttrsWhereRequest]
  _or: [CloudAccountAttrsWhereRequest]
  _not: CloudAccountAttrsWhereRequest
  id: QueryWhereStringRequest
  name: QueryWhereStringRequest
  value: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
  tenant_id: QueryWhereStringRequest
}

type CloudAccountAttrsResponse {
  rows: [CloudAccountAttrsRowResponse]
}

type CloudAccountAttrsRowResponse {
  id: String
  name: String
  value: String
  cloud_account_id: String
  created_at: Datetime
  updated_at: Datetime
  tenant_id: String
}

type Query {
  usergroups_list_users(
    where: UsergroupUsersWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): UsergroupUsersResponse
}

input UsergroupUsersWhereRequest {
  _and: [UsergroupUsersWhereRequest]
  _or: [UsergroupUsersWhereRequest]
  _not: UsergroupUsersWhereRequest
  id: QueryWhereStringRequest
  group_id: QueryWhereStringRequest
  user_id: QueryWhereStringRequest
  display_name: QueryWhereStringRequest
  username: QueryWhereStringRequest
  status: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

type UsergroupUsersResponse {
  rows: [UsergroupUsersRowResponse]
}

type UsergroupUsersRowResponse {
  id: String
  group_id: String
  user_id: String
  display_name: String
  username: String
  status: String
  tenant_id: String
  user_roles: Json
  user_groups: Json
}

type Query {
  usergroups_aggregate_users(
    where: UsergroupUsersGroupingWhereRequest
  ): UsergroupUsersGroupingResponse
}

input UsergroupUsersGroupingWhereRequest {
  _and: [UsergroupUsersGroupingWhereRequest]
  _or: [UsergroupUsersGroupingWhereRequest]
  _not: UsergroupUsersGroupingWhereRequest
  id: QueryWhereStringRequest
  group_id: QueryWhereStringRequest
  tenant_id: QueryWhereStringRequest
}

type UsergroupUsersGroupingResponse {
  rows: [UsergroupUsersGroupingRowResponse]
}

type UsergroupUsersGroupingRowResponse {
  count: Int
}

type Query {
  users_get_auth_by_username(
    where: UserAuthByUsernameWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): UserAuthByUsernameResponse
}

input UserAuthByUsernameWhereRequest {
  _and: [UserAuthByUsernameWhereRequest]
  _or: [UserAuthByUsernameWhereRequest]
  _not: UserAuthByUsernameWhereRequest
  auth_id: QueryWhereStringRequest
  credential: QueryWhereStringRequest
  auth_tenant_id: QueryWhereStringRequest
  expires_at: QueryWhereDatetimeRequest
  auth_status: QueryWhereStringRequest
  provider: QueryWhereStringRequest
  user_id: QueryWhereStringRequest
  id: QueryWhereStringRequest
  display_name: QueryWhereStringRequest
  username: QueryWhereStringRequest
  user_status: QueryWhereStringRequest
  created_at: QueryWhereDatetimeRequest
  updated_at: QueryWhereDatetimeRequest
}

type UserAuthByUsernameResponse {
  rows: [UserAuthByUsernameRowResponse]
}

type UserAuthByUsernameRowResponse {
  auth_id: String
  credential: String
  auth_tenant_id: String
  expires_at: Datetime
  auth_status: String
  provider: String
  user_id: String
  id: String
  display_name: String
  username: String
  user_status: String
  created_at: Datetime
  updated_at: Datetime
  user_roles: Json
  user_attrs: Json
  auth_accounts: Json
  tenants: Json
}

type Query {
  anomaly_type_v2(
    where: AnomalyTypeWhereRequest
    limit: Int
    offset: Int
  ): AnomalyTypeResponse!
}

input AnomalyTypeWhereRequest {
  _and: [AnomalyTypeWhereRequest]
  _or: [AnomalyTypeWhereRequest]
  _not: AnomalyTypeWhereRequest
  value: QueryWhereStringRequest
  comment: QueryWhereStringRequest
}

type AnomalyTypeResponse {
  rows: [AnomalyTypeRowResponse]
}

type AnomalyTypeRowResponse {
  value: String
  comment: String
}

type Query {
  cloud_resource_metrics_v2(
    where: CloudResourceMetricsWhereRequest
    limit: Int
    offset: Int
    order_by: [QuerySortByRequest!]
  ): CloudResourceMetricsResponse!
}

input CloudResourceMetricsWhereRequest {
  _and: [CloudResourceMetricsWhereRequest]
  _or: [CloudResourceMetricsWhereRequest]
  _not: CloudResourceMetricsWhereRequest
  id: QueryWhereStringRequest
  metric: QueryWhereStringRequest
  timestamp: QueryWhereDatetimeRequest
  cloud_resource_id: QueryWhereStringRequest
  cloud_account_id: QueryWhereStringRequest
  resource_name: QueryWhereStringRequest
  resource_id: QueryWhereStringRequest
  service_name: QueryWhereStringRequest
}

type CloudResourceMetricsResponse {
  rows: [CloudResourceMetricsRowResponse]
}

type CloudResourceMetricsRowResponse {
  id: String
  metric: String
  value: Float
  timestamp: Datetime
  cloud_resource_id: String
  cloud_account_id: String
  resource_name: String
  resource_id: String
  service_name: String
}

type RelayForwardOutput {
  data: jsonb
}

input WebhookSubjectMappingsSyncRequest {
  source: String!
  account_id: String!
  days: Int
}

type WebhookSubjectMappingsSyncOutput {
  status: String!
  synced_count: Int!
}

scalar Datetime

scalar Json

