All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.splunk.inputs.SavedSearchesState Maven / Gradle / Ivy

// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

package com.pulumi.splunk.inputs;

import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.splunk.inputs.SavedSearchesAclArgs;
import java.lang.Boolean;
import java.lang.Double;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class SavedSearchesState extends com.pulumi.resources.ResourceArgs {

    public static final SavedSearchesState Empty = new SavedSearchesState();

    /**
     * The app/user context that is the namespace for the resource
     * 
     */
    @Import(name="acl")
    private @Nullable Output acl;

    /**
     * @return The app/user context that is the namespace for the resource
     * 
     */
    public Optional> acl() {
        return Optional.ofNullable(this.acl);
    }

    /**
     * Enable XSOAR alerting (Should by 1 (Enabled) or 0 (Disabled))
     * 
     */
    @Import(name="actionCreateXsoarIncident")
    private @Nullable Output actionCreateXsoarIncident;

    /**
     * @return Enable XSOAR alerting (Should by 1 (Enabled) or 0 (Disabled))
     * 
     */
    public Optional> actionCreateXsoarIncident() {
        return Optional.ofNullable(this.actionCreateXsoarIncident);
    }

    /**
     * XSOAR custom incident fields (should be a comma separated list)
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamCustomFields")
    private @Nullable Output actionCreateXsoarIncidentParamCustomFields;

    /**
     * @return XSOAR custom incident fields (should be a comma separated list)
     * 
     */
    public Optional> actionCreateXsoarIncidentParamCustomFields() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamCustomFields);
    }

    /**
     * XSOAR incident description
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamDetails")
    private @Nullable Output actionCreateXsoarIncidentParamDetails;

    /**
     * @return XSOAR incident description
     * 
     */
    public Optional> actionCreateXsoarIncidentParamDetails() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamDetails);
    }

    /**
     * XSOAR incident name
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamIncidentName")
    private @Nullable Output actionCreateXsoarIncidentParamIncidentName;

    /**
     * @return XSOAR incident name
     * 
     */
    public Optional> actionCreateXsoarIncidentParamIncidentName() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamIncidentName);
    }

    /**
     * XSOAR incident time
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamOccurred")
    private @Nullable Output actionCreateXsoarIncidentParamOccurred;

    /**
     * @return XSOAR incident time
     * 
     */
    public Optional> actionCreateXsoarIncidentParamOccurred() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamOccurred);
    }

    /**
     * Enable XSOAR alerting sending to all servers (Should by 1 (Enabled) or 0 (Disabled)
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamSendAllServers")
    private @Nullable Output actionCreateXsoarIncidentParamSendAllServers;

    /**
     * @return Enable XSOAR alerting sending to all servers (Should by 1 (Enabled) or 0 (Disabled)
     * 
     */
    public Optional> actionCreateXsoarIncidentParamSendAllServers() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamSendAllServers);
    }

    /**
     * XSOAR Server instance URL (Should start with https:// || http://)
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamServerUrl")
    private @Nullable Output actionCreateXsoarIncidentParamServerUrl;

    /**
     * @return XSOAR Server instance URL (Should start with https:// || http://)
     * 
     */
    public Optional> actionCreateXsoarIncidentParamServerUrl() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamServerUrl);
    }

    /**
     * XSOAR Severity (1 - Low, 2 - Medium, 3 - High, 4 - Critical)
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamSeverity")
    private @Nullable Output actionCreateXsoarIncidentParamSeverity;

    /**
     * @return XSOAR Severity (1 - Low, 2 - Medium, 3 - High, 4 - Critical)
     * 
     */
    public Optional> actionCreateXsoarIncidentParamSeverity() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamSeverity);
    }

    /**
     * XSOAR incident type
     * 
     */
    @Import(name="actionCreateXsoarIncidentParamType")
    private @Nullable Output actionCreateXsoarIncidentParamType;

    /**
     * @return XSOAR incident type
     * 
     */
    public Optional> actionCreateXsoarIncidentParamType() {
        return Optional.ofNullable(this.actionCreateXsoarIncidentParamType);
    }

    /**
     * The state of the email action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    @Import(name="actionEmail")
    private @Nullable Output actionEmail;

    /**
     * @return The state of the email action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    public Optional> actionEmail() {
        return Optional.ofNullable(this.actionEmail);
    }

    /**
     * The password to use when authenticating with the SMTP server. Normally this value is set when editing the email settings, however you can set a clear text password here and it is encrypted on the next platform restart.Defaults to empty string.
     * 
     */
    @Import(name="actionEmailAuthPassword")
    private @Nullable Output actionEmailAuthPassword;

    /**
     * @return The password to use when authenticating with the SMTP server. Normally this value is set when editing the email settings, however you can set a clear text password here and it is encrypted on the next platform restart.Defaults to empty string.
     * 
     */
    public Optional> actionEmailAuthPassword() {
        return Optional.ofNullable(this.actionEmailAuthPassword);
    }

    /**
     * The username to use when authenticating with the SMTP server. If this is empty string, no authentication is attempted. Defaults to empty stringNOTE: Your SMTP server might reject unauthenticated emails.
     * 
     */
    @Import(name="actionEmailAuthUsername")
    private @Nullable Output actionEmailAuthUsername;

    /**
     * @return The username to use when authenticating with the SMTP server. If this is empty string, no authentication is attempted. Defaults to empty stringNOTE: Your SMTP server might reject unauthenticated emails.
     * 
     */
    public Optional> actionEmailAuthUsername() {
        return Optional.ofNullable(this.actionEmailAuthUsername);
    }

    /**
     * BCC email address to use if action.email is enabled.
     * 
     */
    @Import(name="actionEmailBcc")
    private @Nullable Output actionEmailBcc;

    /**
     * @return BCC email address to use if action.email is enabled.
     * 
     */
    public Optional> actionEmailBcc() {
        return Optional.ofNullable(this.actionEmailBcc);
    }

    /**
     * CC email address to use if action.email is enabled.
     * 
     */
    @Import(name="actionEmailCc")
    private @Nullable Output actionEmailCc;

    /**
     * @return CC email address to use if action.email is enabled.
     * 
     */
    public Optional> actionEmailCc() {
        return Optional.ofNullable(this.actionEmailCc);
    }

    /**
     * The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    @Import(name="actionEmailCommand")
    private @Nullable Output actionEmailCommand;

    /**
     * @return The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    public Optional> actionEmailCommand() {
        return Optional.ofNullable(this.actionEmailCommand);
    }

    /**
     * Valid values: (table | plain | html | raw | csv)Specify the format of text in the email. This value also applies to any attachments.
     * 
     */
    @Import(name="actionEmailFormat")
    private @Nullable Output actionEmailFormat;

    /**
     * @return Valid values: (table | plain | html | raw | csv)Specify the format of text in the email. This value also applies to any attachments.
     * 
     */
    public Optional> actionEmailFormat() {
        return Optional.ofNullable(this.actionEmailFormat);
    }

    /**
     * Email address from which the email action originates.Defaults to splunk@$LOCALHOST or whatever value is set in alert_actions.conf.
     * 
     */
    @Import(name="actionEmailFrom")
    private @Nullable Output actionEmailFrom;

    /**
     * @return Email address from which the email action originates.Defaults to splunk@$LOCALHOST or whatever value is set in alert_actions.conf.
     * 
     */
    public Optional> actionEmailFrom() {
        return Optional.ofNullable(this.actionEmailFrom);
    }

    /**
     * Sets the hostname used in the web link (url) sent in email actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)
     * 
     */
    @Import(name="actionEmailHostname")
    private @Nullable Output actionEmailHostname;

    /**
     * @return Sets the hostname used in the web link (url) sent in email actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)
     * 
     */
    public Optional> actionEmailHostname() {
        return Optional.ofNullable(this.actionEmailHostname);
    }

    /**
     * Specify whether to include a link to the results. Defaults to 0.
     * 
     */
    @Import(name="actionEmailIncludeResultsLink")
    private @Nullable Output actionEmailIncludeResultsLink;

    /**
     * @return Specify whether to include a link to the results. Defaults to 0.
     * 
     */
    public Optional> actionEmailIncludeResultsLink() {
        return Optional.ofNullable(this.actionEmailIncludeResultsLink);
    }

    /**
     * Specify whether to include the search that caused an email to be sent. Defaults to 0.
     * 
     */
    @Import(name="actionEmailIncludeSearch")
    private @Nullable Output actionEmailIncludeSearch;

    /**
     * @return Specify whether to include the search that caused an email to be sent. Defaults to 0.
     * 
     */
    public Optional> actionEmailIncludeSearch() {
        return Optional.ofNullable(this.actionEmailIncludeSearch);
    }

    /**
     * Specify whether to show the trigger condition that caused the alert to fire. Defaults to 0.
     * 
     */
    @Import(name="actionEmailIncludeTrigger")
    private @Nullable Output actionEmailIncludeTrigger;

    /**
     * @return Specify whether to show the trigger condition that caused the alert to fire. Defaults to 0.
     * 
     */
    public Optional> actionEmailIncludeTrigger() {
        return Optional.ofNullable(this.actionEmailIncludeTrigger);
    }

    /**
     * Specify whether to show the time that the alert was fired. Defaults to 0.
     * 
     */
    @Import(name="actionEmailIncludeTriggerTime")
    private @Nullable Output actionEmailIncludeTriggerTime;

    /**
     * @return Specify whether to show the time that the alert was fired. Defaults to 0.
     * 
     */
    public Optional> actionEmailIncludeTriggerTime() {
        return Optional.ofNullable(this.actionEmailIncludeTriggerTime);
    }

    /**
     * Specify whether to show the title and a link to enable the user to edit the saved search. Defaults to 0.
     * 
     */
    @Import(name="actionEmailIncludeViewLink")
    private @Nullable Output actionEmailIncludeViewLink;

    /**
     * @return Specify whether to show the title and a link to enable the user to edit the saved search. Defaults to 0.
     * 
     */
    public Optional> actionEmailIncludeViewLink() {
        return Optional.ofNullable(this.actionEmailIncludeViewLink);
    }

    /**
     * Indicates whether the search results are contained in the body of the email.Results can be either inline or attached to an email.
     * 
     */
    @Import(name="actionEmailInline")
    private @Nullable Output actionEmailInline;

    /**
     * @return Indicates whether the search results are contained in the body of the email.Results can be either inline or attached to an email.
     * 
     */
    public Optional> actionEmailInline() {
        return Optional.ofNullable(this.actionEmailInline);
    }

    /**
     * Set the address of the MTA server to be used to send the emails.Defaults to <LOCALHOST> or whatever is set in alert_actions.conf.
     * 
     */
    @Import(name="actionEmailMailserver")
    private @Nullable Output actionEmailMailserver;

    /**
     * @return Set the address of the MTA server to be used to send the emails.Defaults to <LOCALHOST> or whatever is set in alert_actions.conf.
     * 
     */
    public Optional> actionEmailMailserver() {
        return Optional.ofNullable(this.actionEmailMailserver);
    }

    /**
     * Sets the global maximum number of search results to send when email.action is enabled. Defaults to 100.
     * 
     */
    @Import(name="actionEmailMaxResults")
    private @Nullable Output actionEmailMaxResults;

    /**
     * @return Sets the global maximum number of search results to send when email.action is enabled. Defaults to 100.
     * 
     */
    public Optional> actionEmailMaxResults() {
        return Optional.ofNullable(this.actionEmailMaxResults);
    }

    /**
     * Valid values are Integer[m|s|h|d].Specifies the maximum amount of time the execution of an email action takes before the action is aborted. Defaults to 5m.
     * 
     */
    @Import(name="actionEmailMaxTime")
    private @Nullable Output actionEmailMaxTime;

    /**
     * @return Valid values are Integer[m|s|h|d].Specifies the maximum amount of time the execution of an email action takes before the action is aborted. Defaults to 5m.
     * 
     */
    public Optional> actionEmailMaxTime() {
        return Optional.ofNullable(this.actionEmailMaxTime);
    }

    /**
     * Customize the message sent in the emailed alert. Defaults to: The alert condition for '$name$' was triggered.
     * 
     */
    @Import(name="actionEmailMessageAlert")
    private @Nullable Output actionEmailMessageAlert;

    /**
     * @return Customize the message sent in the emailed alert. Defaults to: The alert condition for '$name$' was triggered.
     * 
     */
    public Optional> actionEmailMessageAlert() {
        return Optional.ofNullable(this.actionEmailMessageAlert);
    }

    /**
     * Customize the message sent in the emailed report. Defaults to: The scheduled report '$name$' has run
     * 
     */
    @Import(name="actionEmailMessageReport")
    private @Nullable Output actionEmailMessageReport;

    /**
     * @return Customize the message sent in the emailed report. Defaults to: The scheduled report '$name$' has run
     * 
     */
    public Optional> actionEmailMessageReport() {
        return Optional.ofNullable(this.actionEmailMessageReport);
    }

    /**
     * The name of the view to deliver if sendpdf is enabled
     * 
     */
    @Import(name="actionEmailPdfview")
    private @Nullable Output actionEmailPdfview;

    /**
     * @return The name of the view to deliver if sendpdf is enabled
     * 
     */
    public Optional> actionEmailPdfview() {
        return Optional.ofNullable(this.actionEmailPdfview);
    }

    /**
     * Search string to preprocess results before emailing them. Defaults to empty string (no preprocessing).Usually the preprocessing consists of filtering out unwanted internal fields.
     * 
     */
    @Import(name="actionEmailPreprocessResults")
    private @Nullable Output actionEmailPreprocessResults;

    /**
     * @return Search string to preprocess results before emailing them. Defaults to empty string (no preprocessing).Usually the preprocessing consists of filtering out unwanted internal fields.
     * 
     */
    public Optional> actionEmailPreprocessResults() {
        return Optional.ofNullable(this.actionEmailPreprocessResults);
    }

    /**
     * Space-separated list. Specifies the set (and load order) of CID fonts for handling Simplified Chinese(gb), Traditional Chinese(cns), Japanese(jp), and Korean(kor) in Integrated PDF Rendering.If multiple fonts provide a glyph for a given character code, the glyph from the first font specified in the list is used.To skip loading any CID fonts, specify the empty string.Defaults to 'gb cns jp kor'
     * 
     */
    @Import(name="actionEmailReportCidFontList")
    private @Nullable Output actionEmailReportCidFontList;

    /**
     * @return Space-separated list. Specifies the set (and load order) of CID fonts for handling Simplified Chinese(gb), Traditional Chinese(cns), Japanese(jp), and Korean(kor) in Integrated PDF Rendering.If multiple fonts provide a glyph for a given character code, the glyph from the first font specified in the list is used.To skip loading any CID fonts, specify the empty string.Defaults to 'gb cns jp kor'
     * 
     */
    public Optional> actionEmailReportCidFontList() {
        return Optional.ofNullable(this.actionEmailReportCidFontList);
    }

    /**
     * Indicates whether to include the Splunk logo with the report.
     * 
     */
    @Import(name="actionEmailReportIncludeSplunkLogo")
    private @Nullable Output actionEmailReportIncludeSplunkLogo;

    /**
     * @return Indicates whether to include the Splunk logo with the report.
     * 
     */
    public Optional> actionEmailReportIncludeSplunkLogo() {
        return Optional.ofNullable(this.actionEmailReportIncludeSplunkLogo);
    }

    /**
     * Valid values: (portrait | landscape)Specifies the paper orientation: portrait or landscape. Defaults to portrait.
     * 
     */
    @Import(name="actionEmailReportPaperOrientation")
    private @Nullable Output actionEmailReportPaperOrientation;

    /**
     * @return Valid values: (portrait | landscape)Specifies the paper orientation: portrait or landscape. Defaults to portrait.
     * 
     */
    public Optional> actionEmailReportPaperOrientation() {
        return Optional.ofNullable(this.actionEmailReportPaperOrientation);
    }

    /**
     * Valid values: (letter | legal | ledger | a2 | a3 | a4 | a5)Specifies the paper size for PDFs. Defaults to letter.
     * 
     */
    @Import(name="actionEmailReportPaperSize")
    private @Nullable Output actionEmailReportPaperSize;

    /**
     * @return Valid values: (letter | legal | ledger | a2 | a3 | a4 | a5)Specifies the paper size for PDFs. Defaults to letter.
     * 
     */
    public Optional> actionEmailReportPaperSize() {
        return Optional.ofNullable(this.actionEmailReportPaperSize);
    }

    /**
     * No Supported
     * 
     */
    @Import(name="actionEmailReportServerEnabled")
    private @Nullable Output actionEmailReportServerEnabled;

    /**
     * @return No Supported
     * 
     */
    public Optional> actionEmailReportServerEnabled() {
        return Optional.ofNullable(this.actionEmailReportServerEnabled);
    }

    /**
     * Not supported.For a default locally installed report server, the URL is http://localhost:8091/
     * 
     */
    @Import(name="actionEmailReportServerUrl")
    private @Nullable Output actionEmailReportServerUrl;

    /**
     * @return Not supported.For a default locally installed report server, the URL is http://localhost:8091/
     * 
     */
    public Optional> actionEmailReportServerUrl() {
        return Optional.ofNullable(this.actionEmailReportServerUrl);
    }

    /**
     * Specify whether to send results as a CSV file. Defaults to 0.
     * 
     */
    @Import(name="actionEmailSendCsv")
    private @Nullable Output actionEmailSendCsv;

    /**
     * @return Specify whether to send results as a CSV file. Defaults to 0.
     * 
     */
    public Optional> actionEmailSendCsv() {
        return Optional.ofNullable(this.actionEmailSendCsv);
    }

    /**
     * Indicates whether to create and send the results as a PDF. Defaults to false.
     * 
     */
    @Import(name="actionEmailSendPdf")
    private @Nullable Output actionEmailSendPdf;

    /**
     * @return Indicates whether to create and send the results as a PDF. Defaults to false.
     * 
     */
    public Optional> actionEmailSendPdf() {
        return Optional.ofNullable(this.actionEmailSendPdf);
    }

    /**
     * Indicates whether to attach the search results in the email.Results can be either attached or inline. See action.email.inline.
     * 
     */
    @Import(name="actionEmailSendResults")
    private @Nullable Output actionEmailSendResults;

    /**
     * @return Indicates whether to attach the search results in the email.Results can be either attached or inline. See action.email.inline.
     * 
     */
    public Optional> actionEmailSendResults() {
        return Optional.ofNullable(this.actionEmailSendResults);
    }

    /**
     * Specifies an alternate email subject.Defaults to SplunkAlert-<savedsearchname>.
     * 
     */
    @Import(name="actionEmailSubject")
    private @Nullable Output actionEmailSubject;

    /**
     * @return Specifies an alternate email subject.Defaults to SplunkAlert-<savedsearchname>.
     * 
     */
    public Optional> actionEmailSubject() {
        return Optional.ofNullable(this.actionEmailSubject);
    }

    /**
     * A comma or semicolon separated list of recipient email addresses. Required if this search is scheduled and the email alert action is enabled.
     * 
     */
    @Import(name="actionEmailTo")
    private @Nullable Output actionEmailTo;

    /**
     * @return A comma or semicolon separated list of recipient email addresses. Required if this search is scheduled and the email alert action is enabled.
     * 
     */
    public Optional> actionEmailTo() {
        return Optional.ofNullable(this.actionEmailTo);
    }

    /**
     * Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    @Import(name="actionEmailTrackAlert")
    private @Nullable Output actionEmailTrackAlert;

    /**
     * @return Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    public Optional> actionEmailTrackAlert() {
        return Optional.ofNullable(this.actionEmailTrackAlert);
    }

    /**
     * Valid values are Integer[p].Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows <Integer>, int is the number of scheduled periods. Defaults to 86400 (24 hours).If no actions are triggered, the artifacts have their ttl determined by dispatch.ttl in savedsearches.conf.
     * 
     */
    @Import(name="actionEmailTtl")
    private @Nullable Output actionEmailTtl;

    /**
     * @return Valid values are Integer[p].Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows <Integer>, int is the number of scheduled periods. Defaults to 86400 (24 hours).If no actions are triggered, the artifacts have their ttl determined by dispatch.ttl in savedsearches.conf.
     * 
     */
    public Optional> actionEmailTtl() {
        return Optional.ofNullable(this.actionEmailTtl);
    }

    /**
     * Indicates whether to use SSL when communicating with the SMTP server. Defaults to false.
     * 
     */
    @Import(name="actionEmailUseSsl")
    private @Nullable Output actionEmailUseSsl;

    /**
     * @return Indicates whether to use SSL when communicating with the SMTP server. Defaults to false.
     * 
     */
    public Optional> actionEmailUseSsl() {
        return Optional.ofNullable(this.actionEmailUseSsl);
    }

    /**
     * Indicates whether to use TLS (transport layer security) when communicating with the SMTP server (starttls).Defaults to false.
     * 
     */
    @Import(name="actionEmailUseTls")
    private @Nullable Output actionEmailUseTls;

    /**
     * @return Indicates whether to use TLS (transport layer security) when communicating with the SMTP server (starttls).Defaults to false.
     * 
     */
    public Optional> actionEmailUseTls() {
        return Optional.ofNullable(this.actionEmailUseTls);
    }

    /**
     * Indicates whether columns should be sorted from least wide to most wide, left to right.Only valid if format=text.
     * 
     */
    @Import(name="actionEmailWidthSortColumns")
    private @Nullable Output actionEmailWidthSortColumns;

    /**
     * @return Indicates whether columns should be sorted from least wide to most wide, left to right.Only valid if format=text.
     * 
     */
    public Optional> actionEmailWidthSortColumns() {
        return Optional.ofNullable(this.actionEmailWidthSortColumns);
    }

    /**
     * Jira Service Desk account name
     * 
     */
    @Import(name="actionJiraServiceDeskParamAccount")
    private @Nullable Output actionJiraServiceDeskParamAccount;

    /**
     * @return Jira Service Desk account name
     * 
     */
    public Optional> actionJiraServiceDeskParamAccount() {
        return Optional.ofNullable(this.actionJiraServiceDeskParamAccount);
    }

    /**
     * Jira issue description
     * 
     */
    @Import(name="actionJiraServiceDeskParamJiraDescription")
    private @Nullable Output actionJiraServiceDeskParamJiraDescription;

    /**
     * @return Jira issue description
     * 
     */
    public Optional> actionJiraServiceDeskParamJiraDescription() {
        return Optional.ofNullable(this.actionJiraServiceDeskParamJiraDescription);
    }

    /**
     * Jira issue type name
     * 
     */
    @Import(name="actionJiraServiceDeskParamJiraIssueType")
    private @Nullable Output actionJiraServiceDeskParamJiraIssueType;

    /**
     * @return Jira issue type name
     * 
     */
    public Optional> actionJiraServiceDeskParamJiraIssueType() {
        return Optional.ofNullable(this.actionJiraServiceDeskParamJiraIssueType);
    }

    /**
     * Jira priority of issue
     * 
     */
    @Import(name="actionJiraServiceDeskParamJiraPriority")
    private @Nullable Output actionJiraServiceDeskParamJiraPriority;

    /**
     * @return Jira priority of issue
     * 
     */
    public Optional> actionJiraServiceDeskParamJiraPriority() {
        return Optional.ofNullable(this.actionJiraServiceDeskParamJiraPriority);
    }

    /**
     * Jira Project name
     * 
     */
    @Import(name="actionJiraServiceDeskParamJiraProject")
    private @Nullable Output actionJiraServiceDeskParamJiraProject;

    /**
     * @return Jira Project name
     * 
     */
    public Optional> actionJiraServiceDeskParamJiraProject() {
        return Optional.ofNullable(this.actionJiraServiceDeskParamJiraProject);
    }

    /**
     * Jira issue title/summary
     * 
     */
    @Import(name="actionJiraServiceDeskParamJiraSummary")
    private @Nullable Output actionJiraServiceDeskParamJiraSummary;

    /**
     * @return Jira issue title/summary
     * 
     */
    public Optional> actionJiraServiceDeskParamJiraSummary() {
        return Optional.ofNullable(this.actionJiraServiceDeskParamJiraSummary);
    }

    /**
     * The PagerDuty custom details information.
     * 
     */
    @Import(name="actionPagerdutyCustomDetails")
    private @Nullable Output actionPagerdutyCustomDetails;

    /**
     * @return The PagerDuty custom details information.
     * 
     */
    public Optional> actionPagerdutyCustomDetails() {
        return Optional.ofNullable(this.actionPagerdutyCustomDetails);
    }

    /**
     * The PagerDuty integration Key.
     * 
     */
    @Import(name="actionPagerdutyIntegrationKey")
    private @Nullable Output actionPagerdutyIntegrationKey;

    /**
     * @return The PagerDuty integration Key.
     * 
     */
    public Optional> actionPagerdutyIntegrationKey() {
        return Optional.ofNullable(this.actionPagerdutyIntegrationKey);
    }

    /**
     * The PagerDuty integration Key override.
     * 
     */
    @Import(name="actionPagerdutyIntegrationKeyOverride")
    private @Nullable Output actionPagerdutyIntegrationKeyOverride;

    /**
     * @return The PagerDuty integration Key override.
     * 
     */
    public Optional> actionPagerdutyIntegrationKeyOverride() {
        return Optional.ofNullable(this.actionPagerdutyIntegrationKeyOverride);
    }

    /**
     * The pagerduty integration URL. This integration uses Splunk's native webhooks to send events to PagerDuty.
     * 
     */
    @Import(name="actionPagerdutyIntegrationUrl")
    private @Nullable Output actionPagerdutyIntegrationUrl;

    /**
     * @return The pagerduty integration URL. This integration uses Splunk's native webhooks to send events to PagerDuty.
     * 
     */
    public Optional> actionPagerdutyIntegrationUrl() {
        return Optional.ofNullable(this.actionPagerdutyIntegrationUrl);
    }

    /**
     * The pagerduty integration URL override. This integration uses Splunk's native webhooks to send events to PagerDuty.
     * 
     */
    @Import(name="actionPagerdutyIntegrationUrlOverride")
    private @Nullable Output actionPagerdutyIntegrationUrlOverride;

    /**
     * @return The pagerduty integration URL override. This integration uses Splunk's native webhooks to send events to PagerDuty.
     * 
     */
    public Optional> actionPagerdutyIntegrationUrlOverride() {
        return Optional.ofNullable(this.actionPagerdutyIntegrationUrlOverride);
    }

    /**
     * The state of the populate lookup action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    @Import(name="actionPopulateLookup")
    private @Nullable Output actionPopulateLookup;

    /**
     * @return The state of the populate lookup action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    public Optional> actionPopulateLookup() {
        return Optional.ofNullable(this.actionPopulateLookup);
    }

    /**
     * The search command (or pipeline) which is responsible for executing the action.
     * 
     */
    @Import(name="actionPopulateLookupCommand")
    private @Nullable Output actionPopulateLookupCommand;

    /**
     * @return The search command (or pipeline) which is responsible for executing the action.
     * 
     */
    public Optional> actionPopulateLookupCommand() {
        return Optional.ofNullable(this.actionPopulateLookupCommand);
    }

    /**
     * Lookup name of path of the lookup to populate
     * 
     */
    @Import(name="actionPopulateLookupDest")
    private @Nullable Output actionPopulateLookupDest;

    /**
     * @return Lookup name of path of the lookup to populate
     * 
     */
    public Optional> actionPopulateLookupDest() {
        return Optional.ofNullable(this.actionPopulateLookupDest);
    }

    /**
     * Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms: hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    @Import(name="actionPopulateLookupHostname")
    private @Nullable Output actionPopulateLookupHostname;

    /**
     * @return Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms: hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    public Optional> actionPopulateLookupHostname() {
        return Optional.ofNullable(this.actionPopulateLookupHostname);
    }

    /**
     * Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    @Import(name="actionPopulateLookupMaxResults")
    private @Nullable Output actionPopulateLookupMaxResults;

    /**
     * @return Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    public Optional> actionPopulateLookupMaxResults() {
        return Optional.ofNullable(this.actionPopulateLookupMaxResults);
    }

    /**
     * Valid values are: Integer[m|s|h|d]Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 5m.
     * 
     */
    @Import(name="actionPopulateLookupMaxTime")
    private @Nullable Output actionPopulateLookupMaxTime;

    /**
     * @return Valid values are: Integer[m|s|h|d]Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 5m.
     * 
     */
    public Optional> actionPopulateLookupMaxTime() {
        return Optional.ofNullable(this.actionPopulateLookupMaxTime);
    }

    /**
     * Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    @Import(name="actionPopulateLookupTrackAlert")
    private @Nullable Output actionPopulateLookupTrackAlert;

    /**
     * @return Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    public Optional> actionPopulateLookupTrackAlert() {
        return Optional.ofNullable(this.actionPopulateLookupTrackAlert);
    }

    /**
     * Valid values are Integer[p]Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, then this specifies the number of scheduled periods. Defaults to 10p.
     * 
     */
    @Import(name="actionPopulateLookupTtl")
    private @Nullable Output actionPopulateLookupTtl;

    /**
     * @return Valid values are Integer[p]Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, then this specifies the number of scheduled periods. Defaults to 10p.
     * 
     */
    public Optional> actionPopulateLookupTtl() {
        return Optional.ofNullable(this.actionPopulateLookupTtl);
    }

    /**
     * The state of the rss action. Read-only attribute. Value ignored on POST.Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    @Import(name="actionRss")
    private @Nullable Output actionRss;

    /**
     * @return The state of the rss action. Read-only attribute. Value ignored on POST.Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    public Optional> actionRss() {
        return Optional.ofNullable(this.actionRss);
    }

    /**
     * The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    @Import(name="actionRssCommand")
    private @Nullable Output actionRssCommand;

    /**
     * @return The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    public Optional> actionRssCommand() {
        return Optional.ofNullable(this.actionRssCommand);
    }

    /**
     * Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    @Import(name="actionRssHostname")
    private @Nullable Output actionRssHostname;

    /**
     * @return Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    public Optional> actionRssHostname() {
        return Optional.ofNullable(this.actionRssHostname);
    }

    /**
     * Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    @Import(name="actionRssMaxResults")
    private @Nullable Output actionRssMaxResults;

    /**
     * @return Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    public Optional> actionRssMaxResults() {
        return Optional.ofNullable(this.actionRssMaxResults);
    }

    /**
     * Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
     * 
     */
    @Import(name="actionRssMaxTime")
    private @Nullable Output actionRssMaxTime;

    /**
     * @return Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
     * 
     */
    public Optional> actionRssMaxTime() {
        return Optional.ofNullable(this.actionRssMaxTime);
    }

    /**
     * Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    @Import(name="actionRssTrackAlert")
    private @Nullable Output actionRssTrackAlert;

    /**
     * @return Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    public Optional> actionRssTrackAlert() {
        return Optional.ofNullable(this.actionRssTrackAlert);
    }

    /**
     * Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
     * 
     */
    @Import(name="actionRssTtl")
    private @Nullable Output actionRssTtl;

    /**
     * @return Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
     * 
     */
    public Optional> actionRssTtl() {
        return Optional.ofNullable(this.actionRssTtl);
    }

    /**
     * The state of the script action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    @Import(name="actionScript")
    private @Nullable Output actionScript;

    /**
     * @return The state of the script action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    public Optional> actionScript() {
        return Optional.ofNullable(this.actionScript);
    }

    /**
     * The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    @Import(name="actionScriptCommand")
    private @Nullable Output actionScriptCommand;

    /**
     * @return The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    public Optional> actionScriptCommand() {
        return Optional.ofNullable(this.actionScriptCommand);
    }

    /**
     * File name of the script to call. Required if script action is enabled
     * 
     */
    @Import(name="actionScriptFilename")
    private @Nullable Output actionScriptFilename;

    /**
     * @return File name of the script to call. Required if script action is enabled
     * 
     */
    public Optional> actionScriptFilename() {
        return Optional.ofNullable(this.actionScriptFilename);
    }

    /**
     * Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    @Import(name="actionScriptHostname")
    private @Nullable Output actionScriptHostname;

    /**
     * @return Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    public Optional> actionScriptHostname() {
        return Optional.ofNullable(this.actionScriptHostname);
    }

    /**
     * Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    @Import(name="actionScriptMaxResults")
    private @Nullable Output actionScriptMaxResults;

    /**
     * @return Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    public Optional> actionScriptMaxResults() {
        return Optional.ofNullable(this.actionScriptMaxResults);
    }

    /**
     * Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
     * 
     */
    @Import(name="actionScriptMaxTime")
    private @Nullable Output actionScriptMaxTime;

    /**
     * @return Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
     * 
     */
    public Optional> actionScriptMaxTime() {
        return Optional.ofNullable(this.actionScriptMaxTime);
    }

    /**
     * Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    @Import(name="actionScriptTrackAlert")
    private @Nullable Output actionScriptTrackAlert;

    /**
     * @return Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    public Optional> actionScriptTrackAlert() {
        return Optional.ofNullable(this.actionScriptTrackAlert);
    }

    /**
     * Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
     * 
     */
    @Import(name="actionScriptTtl")
    private @Nullable Output actionScriptTtl;

    /**
     * @return Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
     * 
     */
    public Optional> actionScriptTtl() {
        return Optional.ofNullable(this.actionScriptTtl);
    }

    /**
     * Include a message attachment. Valid values are message, none, or alert_link
     * 
     */
    @Import(name="actionSlackParamAttachment")
    private @Nullable Output actionSlackParamAttachment;

    /**
     * @return Include a message attachment. Valid values are message, none, or alert_link
     * 
     */
    public Optional> actionSlackParamAttachment() {
        return Optional.ofNullable(this.actionSlackParamAttachment);
    }

    /**
     * Slack channel to send the message to (Should start with # or @)
     * 
     */
    @Import(name="actionSlackParamChannel")
    private @Nullable Output actionSlackParamChannel;

    /**
     * @return Slack channel to send the message to (Should start with # or @)
     * 
     */
    public Optional> actionSlackParamChannel() {
        return Optional.ofNullable(this.actionSlackParamChannel);
    }

    /**
     * Show one or more fields from the search results below your Slack message. Comma-separated list of field names. Allows wildcards. eg. index,source*
     * 
     */
    @Import(name="actionSlackParamFields")
    private @Nullable Output actionSlackParamFields;

    /**
     * @return Show one or more fields from the search results below your Slack message. Comma-separated list of field names. Allows wildcards. eg. index,source*
     * 
     */
    public Optional> actionSlackParamFields() {
        return Optional.ofNullable(this.actionSlackParamFields);
    }

    /**
     * Enter the chat message to send to the Slack channel. The message can include tokens that insert text based on the results of the search.
     * 
     */
    @Import(name="actionSlackParamMessage")
    private @Nullable Output actionSlackParamMessage;

    /**
     * @return Enter the chat message to send to the Slack channel. The message can include tokens that insert text based on the results of the search.
     * 
     */
    public Optional> actionSlackParamMessage() {
        return Optional.ofNullable(this.actionSlackParamMessage);
    }

    /**
     * You can override the Slack webhook URL here if you need to send the alert message to a different Slack team
     * 
     */
    @Import(name="actionSlackParamWebhookUrlOverride")
    private @Nullable Output actionSlackParamWebhookUrlOverride;

    /**
     * @return You can override the Slack webhook URL here if you need to send the alert message to a different Slack team
     * 
     */
    public Optional> actionSlackParamWebhookUrlOverride() {
        return Optional.ofNullable(this.actionSlackParamWebhookUrlOverride);
    }

    /**
     * Account(s) for which the event is/ are to be created across ServiceNow instance(s).
     * 
     */
    @Import(name="actionSnowEventParamAccount")
    private @Nullable Output actionSnowEventParamAccount;

    /**
     * @return Account(s) for which the event is/ are to be created across ServiceNow instance(s).
     * 
     */
    public Optional> actionSnowEventParamAccount() {
        return Optional.ofNullable(this.actionSnowEventParamAccount);
    }

    /**
     * You can pass additional information that might be of use to the user. This field can also be used to supply the URL of
     * your Splunk search head. When you use the snow_event.py alert-triggered script, the Splunk platform uses the URL to
     * create a deep link that allows a ServiceNow user to navigate back to this Splunk platform search. You can find the
     * resulting full URL for navigation from ServiceNow to the Splunk platform search by clicking Splunk Drilldown in the
     * event page in ServiceNow. See an example below. Note that if you create events using the commands snowevent or
     * snoweventstream, you must supply the URL in this field.You can pass the URL of Splunk as url=<value>. You can also pass
     * other fields and their values by || separated key-value format. For example, url=<value>||k1=v1||k2=v2||....
     * 
     */
    @Import(name="actionSnowEventParamAdditionalInfo")
    private @Nullable Output actionSnowEventParamAdditionalInfo;

    /**
     * @return You can pass additional information that might be of use to the user. This field can also be used to supply the URL of
     * your Splunk search head. When you use the snow_event.py alert-triggered script, the Splunk platform uses the URL to
     * create a deep link that allows a ServiceNow user to navigate back to this Splunk platform search. You can find the
     * resulting full URL for navigation from ServiceNow to the Splunk platform search by clicking Splunk Drilldown in the
     * event page in ServiceNow. See an example below. Note that if you create events using the commands snowevent or
     * snoweventstream, you must supply the URL in this field.You can pass the URL of Splunk as url=<value>. You can also pass
     * other fields and their values by || separated key-value format. For example, url=<value>||k1=v1||k2=v2||....
     * 
     */
    public Optional> actionSnowEventParamAdditionalInfo() {
        return Optional.ofNullable(this.actionSnowEventParamAdditionalInfo);
    }

    /**
     * String that represents a configuration item in your network. You can pass value as || separated key-value format. For
     * example, k1=v1||k2=v2.
     * 
     */
    @Import(name="actionSnowEventParamCiIdentifier")
    private @Nullable Output actionSnowEventParamCiIdentifier;

    /**
     * @return String that represents a configuration item in your network. You can pass value as || separated key-value format. For
     * example, k1=v1||k2=v2.
     * 
     */
    public Optional> actionSnowEventParamCiIdentifier() {
        return Optional.ofNullable(this.actionSnowEventParamCiIdentifier);
    }

    /**
     * The custom fields which are configured at the ServiceNow Instance. You can pass the custom fields and their values in
     * the || separated format. For example, custom_field1=value1||custom_field2=value2||...custom_fields used must be present
     * in the em_event table of ServiceNow.
     * 
     */
    @Import(name="actionSnowEventParamCustomFields")
    private @Nullable Output actionSnowEventParamCustomFields;

    /**
     * @return The custom fields which are configured at the ServiceNow Instance. You can pass the custom fields and their values in
     * the || separated format. For example, custom_field1=value1||custom_field2=value2||...custom_fields used must be present
     * in the em_event table of ServiceNow.
     * 
     */
    public Optional> actionSnowEventParamCustomFields() {
        return Optional.ofNullable(this.actionSnowEventParamCustomFields);
    }

    /**
     * A brief description of the event.
     * 
     */
    @Import(name="actionSnowEventParamDescription")
    private @Nullable Output actionSnowEventParamDescription;

    /**
     * @return A brief description of the event.
     * 
     */
    public Optional> actionSnowEventParamDescription() {
        return Optional.ofNullable(this.actionSnowEventParamDescription);
    }

    /**
     * The node, formatted to follow your organization's ITIL standards and mapping. If the node value matches a CI with the
     * same host name, the event is automatically assigned to the matching CI.
     * 
     */
    @Import(name="actionSnowEventParamNode")
    private @Nullable Output actionSnowEventParamNode;

    /**
     * @return The node, formatted to follow your organization's ITIL standards and mapping. If the node value matches a CI with the
     * same host name, the event is automatically assigned to the matching CI.
     * 
     */
    public Optional> actionSnowEventParamNode() {
        return Optional.ofNullable(this.actionSnowEventParamNode);
    }

    /**
     * The resource, formatted to follow your organization's ITIL standards and mapping. For example, resource='CPU'.
     * 
     */
    @Import(name="actionSnowEventParamResource")
    private @Nullable Output actionSnowEventParamResource;

    /**
     * @return The resource, formatted to follow your organization's ITIL standards and mapping. For example, resource='CPU'.
     * 
     */
    public Optional> actionSnowEventParamResource() {
        return Optional.ofNullable(this.actionSnowEventParamResource);
    }

    /**
     * The severity associated with the event. 0 - Clear 1 - Critical 2 - Major 3 - Minor 4 - Warning
     * 
     */
    @Import(name="actionSnowEventParamSeverity")
    private @Nullable Output actionSnowEventParamSeverity;

    /**
     * @return The severity associated with the event. 0 - Clear 1 - Critical 2 - Major 3 - Minor 4 - Warning
     * 
     */
    public Optional> actionSnowEventParamSeverity() {
        return Optional.ofNullable(this.actionSnowEventParamSeverity);
    }

    /**
     * The type, formatted to follow your organization's ITIL standards and mapping. For example, type='Virtual Machine'.
     * 
     */
    @Import(name="actionSnowEventParamType")
    private @Nullable Output actionSnowEventParamType;

    /**
     * @return The type, formatted to follow your organization's ITIL standards and mapping. For example, type='Virtual Machine'.
     * 
     */
    public Optional> actionSnowEventParamType() {
        return Optional.ofNullable(this.actionSnowEventParamType);
    }

    /**
     * The state of the summary index action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    @Import(name="actionSummaryIndex")
    private @Nullable Output actionSummaryIndex;

    /**
     * @return The state of the summary index action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
     * 
     */
    public Optional> actionSummaryIndex() {
        return Optional.ofNullable(this.actionSummaryIndex);
    }

    /**
     * The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    @Import(name="actionSummaryIndexCommand")
    private @Nullable Output actionSummaryIndexCommand;

    /**
     * @return The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
     * 
     */
    public Optional> actionSummaryIndexCommand() {
        return Optional.ofNullable(this.actionSummaryIndexCommand);
    }

    /**
     * Sets the hostname used in the web link (url) sent in summary-index alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)protocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    @Import(name="actionSummaryIndexHostname")
    private @Nullable Output actionSummaryIndexHostname;

    /**
     * @return Sets the hostname used in the web link (url) sent in summary-index alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)protocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
     * 
     */
    public Optional> actionSummaryIndexHostname() {
        return Optional.ofNullable(this.actionSummaryIndexHostname);
    }

    /**
     * Determines whether to execute the summary indexing action as part of the scheduled search.NOTE: This option is considered only if the summary index action is enabled and is always executed (in other words, if counttype = always).Defaults to true
     * 
     */
    @Import(name="actionSummaryIndexInline")
    private @Nullable Output actionSummaryIndexInline;

    /**
     * @return Determines whether to execute the summary indexing action as part of the scheduled search.NOTE: This option is considered only if the summary index action is enabled and is always executed (in other words, if counttype = always).Defaults to true
     * 
     */
    public Optional> actionSummaryIndexInline() {
        return Optional.ofNullable(this.actionSummaryIndexInline);
    }

    /**
     * Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    @Import(name="actionSummaryIndexMaxResults")
    private @Nullable Output actionSummaryIndexMaxResults;

    /**
     * @return Sets the maximum number of search results sent using alerts. Defaults to 100.
     * 
     */
    public Optional> actionSummaryIndexMaxResults() {
        return Optional.ofNullable(this.actionSummaryIndexMaxResults);
    }

    /**
     * Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
     * 
     */
    @Import(name="actionSummaryIndexMaxTime")
    private @Nullable Output actionSummaryIndexMaxTime;

    /**
     * @return Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
     * 
     */
    public Optional> actionSummaryIndexMaxTime() {
        return Optional.ofNullable(this.actionSummaryIndexMaxTime);
    }

    /**
     * Specifies the name of the summary index where the results of the scheduled search are saved.Defaults to summary.
     * 
     */
    @Import(name="actionSummaryIndexName")
    private @Nullable Output actionSummaryIndexName;

    /**
     * @return Specifies the name of the summary index where the results of the scheduled search are saved.Defaults to summary.
     * 
     */
    public Optional> actionSummaryIndexName() {
        return Optional.ofNullable(this.actionSummaryIndexName);
    }

    /**
     * Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    @Import(name="actionSummaryIndexTrackAlert")
    private @Nullable Output actionSummaryIndexTrackAlert;

    /**
     * @return Indicates whether the execution of this action signifies a trackable alert.
     * 
     */
    public Optional> actionSummaryIndexTrackAlert() {
        return Optional.ofNullable(this.actionSummaryIndexTrackAlert);
    }

    /**
     * Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
     * 
     */
    @Import(name="actionSummaryIndexTtl")
    private @Nullable Output actionSummaryIndexTtl;

    /**
     * @return Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
     * 
     */
    public Optional> actionSummaryIndexTtl() {
        return Optional.ofNullable(this.actionSummaryIndexTtl);
    }

    /**
     * URL to send the HTTP POST request to. Must be accessible from the Splunk server
     * 
     */
    @Import(name="actionWebhookParamUrl")
    private @Nullable Output actionWebhookParamUrl;

    /**
     * @return URL to send the HTTP POST request to. Must be accessible from the Splunk server
     * 
     */
    public Optional> actionWebhookParamUrl() {
        return Optional.ofNullable(this.actionWebhookParamUrl);
    }

    /**
     * A comma-separated list of actions to enable. For example: rss,email
     * 
     */
    @Import(name="actions")
    private @Nullable Output actions;

    /**
     * @return A comma-separated list of actions to enable. For example: rss,email
     * 
     */
    public Optional> actions() {
        return Optional.ofNullable(this.actions);
    }

    /**
     * One of the following strings: greater than, less than, equal to, rises by, drops by, rises by perc, drops by percUsed with alert_threshold to trigger alert actions.
     * 
     */
    @Import(name="alertComparator")
    private @Nullable Output alertComparator;

    /**
     * @return One of the following strings: greater than, less than, equal to, rises by, drops by, rises by perc, drops by percUsed with alert_threshold to trigger alert actions.
     * 
     */
    public Optional> alertComparator() {
        return Optional.ofNullable(this.alertComparator);
    }

    /**
     * Contains a conditional search that is evaluated against the results of the saved search. Defaults to an empty string.
     * 
     */
    @Import(name="alertCondition")
    private @Nullable Output alertCondition;

    /**
     * @return Contains a conditional search that is evaluated against the results of the saved search. Defaults to an empty string.
     * 
     */
    public Optional> alertCondition() {
        return Optional.ofNullable(this.alertCondition);
    }

    /**
     * Specifies whether alert actions are applied to the entire result set or on each individual result.Defaults to 1 (true).
     * 
     */
    @Import(name="alertDigestMode")
    private @Nullable Output alertDigestMode;

    /**
     * @return Specifies whether alert actions are applied to the entire result set or on each individual result.Defaults to 1 (true).
     * 
     */
    public Optional> alertDigestMode() {
        return Optional.ofNullable(this.alertDigestMode);
    }

    /**
     * Valid values: [number][time-unit]Sets the period of time to show the alert in the dashboard. Defaults to 24h.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
     * 
     */
    @Import(name="alertExpires")
    private @Nullable Output alertExpires;

    /**
     * @return Valid values: [number][time-unit]Sets the period of time to show the alert in the dashboard. Defaults to 24h.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
     * 
     */
    public Optional> alertExpires() {
        return Optional.ofNullable(this.alertExpires);
    }

    /**
     * Valid values: (1 | 2 | 3 | 4 | 5 | 6) Sets the alert severity level.Valid values are:1 DEBUG 2 INFO 3 WARN 4 ERROR 5 SEVERE 6 FATAL Defaults to 3.
     * 
     */
    @Import(name="alertSeverity")
    private @Nullable Output alertSeverity;

    /**
     * @return Valid values: (1 | 2 | 3 | 4 | 5 | 6) Sets the alert severity level.Valid values are:1 DEBUG 2 INFO 3 WARN 4 ERROR 5 SEVERE 6 FATAL Defaults to 3.
     * 
     */
    public Optional> alertSeverity() {
        return Optional.ofNullable(this.alertSeverity);
    }

    /**
     * Indicates whether alert suppression is enabled for this scheduled search.
     * 
     */
    @Import(name="alertSuppress")
    private @Nullable Output alertSuppress;

    /**
     * @return Indicates whether alert suppression is enabled for this scheduled search.
     * 
     */
    public Optional> alertSuppress() {
        return Optional.ofNullable(this.alertSuppress);
    }

    /**
     * Comma delimited list of fields to use for suppression when doing per result alerting. Required if suppression is turned on and per result alerting is enabled.
     * 
     */
    @Import(name="alertSuppressFields")
    private @Nullable Output alertSuppressFields;

    /**
     * @return Comma delimited list of fields to use for suppression when doing per result alerting. Required if suppression is turned on and per result alerting is enabled.
     * 
     */
    public Optional> alertSuppressFields() {
        return Optional.ofNullable(this.alertSuppressFields);
    }

    /**
     * Valid values: [number][time-unit] Specifies the suppresion period. Only valid if alert.supress is enabled.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
     * 
     */
    @Import(name="alertSuppressPeriod")
    private @Nullable Output alertSuppressPeriod;

    /**
     * @return Valid values: [number][time-unit] Specifies the suppresion period. Only valid if alert.supress is enabled.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
     * 
     */
    public Optional> alertSuppressPeriod() {
        return Optional.ofNullable(this.alertSuppressPeriod);
    }

    /**
     * Valid values are: Integer[%]Specifies the value to compare (see alert_comparator) before triggering the alert actions. If expressed as a percentage, indicates value to use when alert_comparator is set to rises by perc or drops by perc.
     * 
     */
    @Import(name="alertThreshold")
    private @Nullable Output alertThreshold;

    /**
     * @return Valid values are: Integer[%]Specifies the value to compare (see alert_comparator) before triggering the alert actions. If expressed as a percentage, indicates value to use when alert_comparator is set to rises by perc or drops by perc.
     * 
     */
    public Optional> alertThreshold() {
        return Optional.ofNullable(this.alertThreshold);
    }

    /**
     * Valid values: (true | false | auto) Specifies whether to track the actions triggered by this scheduled search.auto - determine whether to track or not based on the tracking setting of each action, do not track scheduled searches that always trigger actions. Default value true - force alert tracking.false - disable alert tracking for this search.
     * 
     */
    @Import(name="alertTrack")
    private @Nullable Output alertTrack;

    /**
     * @return Valid values: (true | false | auto) Specifies whether to track the actions triggered by this scheduled search.auto - determine whether to track or not based on the tracking setting of each action, do not track scheduled searches that always trigger actions. Default value true - force alert tracking.false - disable alert tracking for this search.
     * 
     */
    public Optional> alertTrack() {
        return Optional.ofNullable(this.alertTrack);
    }

    /**
     * What to base the alert on, overriden by alert_condition if it is specified. Valid values are: always, custom, number of events, number of hosts, number of sources.
     * 
     */
    @Import(name="alertType")
    private @Nullable Output alertType;

    /**
     * @return What to base the alert on, overriden by alert_condition if it is specified. Valid values are: always, custom, number of events, number of hosts, number of sources.
     * 
     */
    public Optional> alertType() {
        return Optional.ofNullable(this.alertType);
    }

    /**
     * Allows the search scheduler to distribute scheduled searches randomly and more evenly over their specified search periods.
     * 
     */
    @Import(name="allowSkew")
    private @Nullable Output allowSkew;

    /**
     * @return Allows the search scheduler to distribute scheduled searches randomly and more evenly over their specified search periods.
     * 
     */
    public Optional> allowSkew() {
        return Optional.ofNullable(this.allowSkew);
    }

    /**
     * Indicates whether the scheduler should ensure that the data for this search is automatically summarized. Defaults to 0.
     * 
     */
    @Import(name="autoSummarize")
    private @Nullable Output autoSummarize;

    /**
     * @return Indicates whether the scheduler should ensure that the data for this search is automatically summarized. Defaults to 0.
     * 
     */
    public Optional> autoSummarize() {
        return Optional.ofNullable(this.autoSummarize);
    }

    /**
     * An auto summarization template for this search. See auto summarization options in savedsearches.conf for more details.
     * 
     */
    @Import(name="autoSummarizeCommand")
    private @Nullable Output autoSummarizeCommand;

    /**
     * @return An auto summarization template for this search. See auto summarization options in savedsearches.conf for more details.
     * 
     */
    public Optional> autoSummarizeCommand() {
        return Optional.ofNullable(this.autoSummarizeCommand);
    }

    /**
     * Cron schedule that probes and generates the summaries for this saved search.The default value is *{@literal /}10 * * * * and corresponds to \`every ten hours\`.
     * 
     */
    @Import(name="autoSummarizeCronSchedule")
    private @Nullable Output autoSummarizeCronSchedule;

    /**
     * @return Cron schedule that probes and generates the summaries for this saved search.The default value is *{@literal /}10 * * * * and corresponds to \`every ten hours\`.
     * 
     */
    public Optional> autoSummarizeCronSchedule() {
        return Optional.ofNullable(this.autoSummarizeCronSchedule);
    }

    /**
     * A time string that specifies the earliest time for summarizing this search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="autoSummarizeDispatchEarliestTime")
    private @Nullable Output autoSummarizeDispatchEarliestTime;

    /**
     * @return A time string that specifies the earliest time for summarizing this search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> autoSummarizeDispatchEarliestTime() {
        return Optional.ofNullable(this.autoSummarizeDispatchEarliestTime);
    }

    /**
     * A time string that specifies the latest time for summarizing this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="autoSummarizeDispatchLatestTime")
    private @Nullable Output autoSummarizeDispatchLatestTime;

    /**
     * @return A time string that specifies the latest time for summarizing this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> autoSummarizeDispatchLatestTime() {
        return Optional.ofNullable(this.autoSummarizeDispatchLatestTime);
    }

    /**
     * Defines the time format that Splunk software uses to specify the earliest and latest time. Defaults to %FT%T.%Q%:z
     * 
     */
    @Import(name="autoSummarizeDispatchTimeFormat")
    private @Nullable Output autoSummarizeDispatchTimeFormat;

    /**
     * @return Defines the time format that Splunk software uses to specify the earliest and latest time. Defaults to %FT%T.%Q%:z
     * 
     */
    public Optional> autoSummarizeDispatchTimeFormat() {
        return Optional.ofNullable(this.autoSummarizeDispatchTimeFormat);
    }

    /**
     * Valid values: Integer[p]. Defaults to 60.Indicates the time to live (in seconds) for the artifacts of the summarization of the scheduled search.
     * 
     */
    @Import(name="autoSummarizeDispatchTtl")
    private @Nullable Output autoSummarizeDispatchTtl;

    /**
     * @return Valid values: Integer[p]. Defaults to 60.Indicates the time to live (in seconds) for the artifacts of the summarization of the scheduled search.
     * 
     */
    public Optional> autoSummarizeDispatchTtl() {
        return Optional.ofNullable(this.autoSummarizeDispatchTtl);
    }

    /**
     * The maximum number of buckets with the suspended summarization before the summarization search is completely stopped, and the summarization of the search is suspended for auto_summarize.suspend_period. Defaults to 2.
     * 
     */
    @Import(name="autoSummarizeMaxDisabledBuckets")
    private @Nullable Output autoSummarizeMaxDisabledBuckets;

    /**
     * @return The maximum number of buckets with the suspended summarization before the summarization search is completely stopped, and the summarization of the search is suspended for auto_summarize.suspend_period. Defaults to 2.
     * 
     */
    public Optional> autoSummarizeMaxDisabledBuckets() {
        return Optional.ofNullable(this.autoSummarizeMaxDisabledBuckets);
    }

    /**
     * The maximum ratio of summary_size/bucket_size, which specifies when to stop summarization and deem it unhelpful for a bucket. Defaults to 0.1 Note: The test is only performed if the summary size is larger than auto_summarize.max_summary_size.
     * 
     */
    @Import(name="autoSummarizeMaxSummaryRatio")
    private @Nullable Output autoSummarizeMaxSummaryRatio;

    /**
     * @return The maximum ratio of summary_size/bucket_size, which specifies when to stop summarization and deem it unhelpful for a bucket. Defaults to 0.1 Note: The test is only performed if the summary size is larger than auto_summarize.max_summary_size.
     * 
     */
    public Optional> autoSummarizeMaxSummaryRatio() {
        return Optional.ofNullable(this.autoSummarizeMaxSummaryRatio);
    }

    /**
     * The minimum summary size, in bytes, before testing whether the summarization is helpful.The default value is 52428800 and is equivalent to 5MB.
     * 
     */
    @Import(name="autoSummarizeMaxSummarySize")
    private @Nullable Output autoSummarizeMaxSummarySize;

    /**
     * @return The minimum summary size, in bytes, before testing whether the summarization is helpful.The default value is 52428800 and is equivalent to 5MB.
     * 
     */
    public Optional> autoSummarizeMaxSummarySize() {
        return Optional.ofNullable(this.autoSummarizeMaxSummarySize);
    }

    /**
     * Maximum time (in seconds) that the summary search is allowed to run. Defaults to 3600.Note: This is an approximate time. The summary search stops at clean bucket boundaries.
     * 
     */
    @Import(name="autoSummarizeMaxTime")
    private @Nullable Output autoSummarizeMaxTime;

    /**
     * @return Maximum time (in seconds) that the summary search is allowed to run. Defaults to 3600.Note: This is an approximate time. The summary search stops at clean bucket boundaries.
     * 
     */
    public Optional> autoSummarizeMaxTime() {
        return Optional.ofNullable(this.autoSummarizeMaxTime);
    }

    /**
     * Time specfier indicating when to suspend summarization of this search if the summarization is deemed unhelpful.Defaults to 24h.
     * 
     */
    @Import(name="autoSummarizeSuspendPeriod")
    private @Nullable Output autoSummarizeSuspendPeriod;

    /**
     * @return Time specfier indicating when to suspend summarization of this search if the summarization is deemed unhelpful.Defaults to 24h.
     * 
     */
    public Optional> autoSummarizeSuspendPeriod() {
        return Optional.ofNullable(this.autoSummarizeSuspendPeriod);
    }

    /**
     * The list of time ranges that each summarized chunk should span. This comprises the list of available granularity levels for which summaries would be available. Specify a comma delimited list of time specifiers.For example a timechart over the last month whose granuality is at the day level should set this to 1d. If you need the same data summarized at the hour level for weekly charts, use: 1h,1d.
     * 
     */
    @Import(name="autoSummarizeTimespan")
    private @Nullable Output autoSummarizeTimespan;

    /**
     * @return The list of time ranges that each summarized chunk should span. This comprises the list of available granularity levels for which summaries would be available. Specify a comma delimited list of time specifiers.For example a timechart over the last month whose granuality is at the day level should set this to 1d. If you need the same data summarized at the hour level for weekly charts, use: 1h,1d.
     * 
     */
    public Optional> autoSummarizeTimespan() {
        return Optional.ofNullable(this.autoSummarizeTimespan);
    }

    /**
     * Valid values: cron stringThe cron schedule to execute this search. For example: *{@literal /}5 * * * * causes the search to execute every 5 minutes.
     * 
     */
    @Import(name="cronSchedule")
    private @Nullable Output cronSchedule;

    /**
     * @return Valid values: cron stringThe cron schedule to execute this search. For example: *{@literal /}5 * * * * causes the search to execute every 5 minutes.
     * 
     */
    public Optional> cronSchedule() {
        return Optional.ofNullable(this.cronSchedule);
    }

    /**
     * Human-readable description of this saved search. Defaults to empty string.
     * 
     */
    @Import(name="description")
    private @Nullable Output description;

    /**
     * @return Human-readable description of this saved search. Defaults to empty string.
     * 
     */
    public Optional> description() {
        return Optional.ofNullable(this.description);
    }

    /**
     * Indicates if the saved search is enabled. Defaults to 0.Disabled saved searches are not visible in Splunk Web.
     * 
     */
    @Import(name="disabled")
    private @Nullable Output disabled;

    /**
     * @return Indicates if the saved search is enabled. Defaults to 0.Disabled saved searches are not visible in Splunk Web.
     * 
     */
    public Optional> disabled() {
        return Optional.ofNullable(this.disabled);
    }

    /**
     * The maximum number of timeline buckets. Defaults to 0.
     * 
     */
    @Import(name="dispatchBuckets")
    private @Nullable Output dispatchBuckets;

    /**
     * @return The maximum number of timeline buckets. Defaults to 0.
     * 
     */
    public Optional> dispatchBuckets() {
        return Optional.ofNullable(this.dispatchBuckets);
    }

    /**
     * A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="dispatchEarliestTime")
    private @Nullable Output dispatchEarliestTime;

    /**
     * @return A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> dispatchEarliestTime() {
        return Optional.ofNullable(this.dispatchEarliestTime);
    }

    /**
     * A time string that specifies the earliest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="dispatchIndexEarliest")
    private @Nullable Output dispatchIndexEarliest;

    /**
     * @return A time string that specifies the earliest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> dispatchIndexEarliest() {
        return Optional.ofNullable(this.dispatchIndexEarliest);
    }

    /**
     * A time string that specifies the latest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="dispatchIndexLatest")
    private @Nullable Output dispatchIndexLatest;

    /**
     * @return A time string that specifies the latest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> dispatchIndexLatest() {
        return Optional.ofNullable(this.dispatchIndexLatest);
    }

    /**
     * A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="dispatchIndexedRealtime")
    private @Nullable Output dispatchIndexedRealtime;

    /**
     * @return A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> dispatchIndexedRealtime() {
        return Optional.ofNullable(this.dispatchIndexedRealtime);
    }

    /**
     * Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
     * 
     */
    @Import(name="dispatchIndexedRealtimeMinspan")
    private @Nullable Output dispatchIndexedRealtimeMinspan;

    /**
     * @return Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
     * 
     */
    public Optional> dispatchIndexedRealtimeMinspan() {
        return Optional.ofNullable(this.dispatchIndexedRealtimeMinspan);
    }

    /**
     * Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
     * 
     */
    @Import(name="dispatchIndexedRealtimeOffset")
    private @Nullable Output dispatchIndexedRealtimeOffset;

    /**
     * @return Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
     * 
     */
    public Optional> dispatchIndexedRealtimeOffset() {
        return Optional.ofNullable(this.dispatchIndexedRealtimeOffset);
    }

    /**
     * A time string that specifies the latest time for this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    @Import(name="dispatchLatestTime")
    private @Nullable Output dispatchLatestTime;

    /**
     * @return A time string that specifies the latest time for this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
     * 
     */
    public Optional> dispatchLatestTime() {
        return Optional.ofNullable(this.dispatchLatestTime);
    }

    /**
     * Enables or disables the lookups for this search. Defaults to 1.
     * 
     */
    @Import(name="dispatchLookups")
    private @Nullable Output dispatchLookups;

    /**
     * @return Enables or disables the lookups for this search. Defaults to 1.
     * 
     */
    public Optional> dispatchLookups() {
        return Optional.ofNullable(this.dispatchLookups);
    }

    /**
     * The maximum number of results before finalizing the search. Defaults to 500000.
     * 
     */
    @Import(name="dispatchMaxCount")
    private @Nullable Output dispatchMaxCount;

    /**
     * @return The maximum number of results before finalizing the search. Defaults to 500000.
     * 
     */
    public Optional> dispatchMaxCount() {
        return Optional.ofNullable(this.dispatchMaxCount);
    }

    /**
     * Indicates the maximum amount of time (in seconds) before finalizing the search. Defaults to 0.
     * 
     */
    @Import(name="dispatchMaxTime")
    private @Nullable Output dispatchMaxTime;

    /**
     * @return Indicates the maximum amount of time (in seconds) before finalizing the search. Defaults to 0.
     * 
     */
    public Optional> dispatchMaxTime() {
        return Optional.ofNullable(this.dispatchMaxTime);
    }

    /**
     * Specifies, in seconds, how frequently the MapReduce reduce phase runs on accumulated map values. Defaults to 10.
     * 
     */
    @Import(name="dispatchReduceFreq")
    private @Nullable Output dispatchReduceFreq;

    /**
     * @return Specifies, in seconds, how frequently the MapReduce reduce phase runs on accumulated map values. Defaults to 10.
     * 
     */
    public Optional> dispatchReduceFreq() {
        return Optional.ofNullable(this.dispatchReduceFreq);
    }

    /**
     * Whether to back fill the real time window for this search. Parameter valid only if this is a real time search. Defaults to 0.
     * 
     */
    @Import(name="dispatchRtBackfill")
    private @Nullable Output dispatchRtBackfill;

    /**
     * @return Whether to back fill the real time window for this search. Parameter valid only if this is a real time search. Defaults to 0.
     * 
     */
    public Optional> dispatchRtBackfill() {
        return Optional.ofNullable(this.dispatchRtBackfill);
    }

    /**
     * Allows for a per-job override of the [search] indexed_realtime_maximum_span setting in limits.conf.
     * 
     */
    @Import(name="dispatchRtMaximumSpan")
    private @Nullable Output dispatchRtMaximumSpan;

    /**
     * @return Allows for a per-job override of the [search] indexed_realtime_maximum_span setting in limits.conf.
     * 
     */
    public Optional> dispatchRtMaximumSpan() {
        return Optional.ofNullable(this.dispatchRtMaximumSpan);
    }

    /**
     * Specifies whether a new search process spawns when this saved search is executed. Defaults to 1. Searches against indexes must run in a separate process.
     * 
     */
    @Import(name="dispatchSpawnProcess")
    private @Nullable Output dispatchSpawnProcess;

    /**
     * @return Specifies whether a new search process spawns when this saved search is executed. Defaults to 1. Searches against indexes must run in a separate process.
     * 
     */
    public Optional> dispatchSpawnProcess() {
        return Optional.ofNullable(this.dispatchSpawnProcess);
    }

    /**
     * A time format string that defines the time format for specifying the earliest and latest time. Defaults to %FT%T.%Q%:z
     * 
     */
    @Import(name="dispatchTimeFormat")
    private @Nullable Output dispatchTimeFormat;

    /**
     * @return A time format string that defines the time format for specifying the earliest and latest time. Defaults to %FT%T.%Q%:z
     * 
     */
    public Optional> dispatchTimeFormat() {
        return Optional.ofNullable(this.dispatchTimeFormat);
    }

    /**
     * Valid values: Integer[p]. Defaults to 2p.Indicates the time to live (in seconds) for the artifacts of the scheduled search, if no actions are triggered.
     * 
     */
    @Import(name="dispatchTtl")
    private @Nullable Output dispatchTtl;

    /**
     * @return Valid values: Integer[p]. Defaults to 2p.Indicates the time to live (in seconds) for the artifacts of the scheduled search, if no actions are triggered.
     * 
     */
    public Optional> dispatchTtl() {
        return Optional.ofNullable(this.dispatchTtl);
    }

    /**
     * Defines the default UI view name (not label) in which to load the results. Accessibility is subject to the user having sufficient permissions.
     * 
     */
    @Import(name="displayView")
    private @Nullable Output displayView;

    /**
     * @return Defines the default UI view name (not label) in which to load the results. Accessibility is subject to the user having sufficient permissions.
     * 
     */
    public Optional> displayView() {
        return Optional.ofNullable(this.displayView);
    }

    /**
     * Whether this search is to be run on a schedule
     * 
     */
    @Import(name="isScheduled")
    private @Nullable Output isScheduled;

    /**
     * @return Whether this search is to be run on a schedule
     * 
     */
    public Optional> isScheduled() {
        return Optional.ofNullable(this.isScheduled);
    }

    /**
     * Specifies whether this saved search should be listed in the visible saved search list. Defaults to 1.
     * 
     */
    @Import(name="isVisible")
    private @Nullable Output isVisible;

    /**
     * @return Specifies whether this saved search should be listed in the visible saved search list. Defaults to 1.
     * 
     */
    public Optional> isVisible() {
        return Optional.ofNullable(this.isVisible);
    }

    /**
     * The maximum number of concurrent instances of this search the scheduler is allowed to run. Defaults to 1.
     * 
     */
    @Import(name="maxConcurrent")
    private @Nullable Output maxConcurrent;

    /**
     * @return The maximum number of concurrent instances of this search the scheduler is allowed to run. Defaults to 1.
     * 
     */
    public Optional> maxConcurrent() {
        return Optional.ofNullable(this.maxConcurrent);
    }

    /**
     * A name for the search.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return A name for the search.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * Defaults to 1. Controls the way the scheduler computes the next execution time of a scheduled search. If this value is set to 1, the scheduler bases its determination of the next scheduled search execution time on the current time. If this value is set to 0, the scheduler bases its determination of the next scheduled search on the last search execution time. This is called continuous scheduling. If set to 0, the scheduler never skips scheduled execution periods. However, the execution of the saved search might fall behind depending on the scheduler load. Use continuous scheduling whenever you enable the summary index option.
     * 
     */
    @Import(name="realtimeSchedule")
    private @Nullable Output realtimeSchedule;

    /**
     * @return Defaults to 1. Controls the way the scheduler computes the next execution time of a scheduled search. If this value is set to 1, the scheduler bases its determination of the next scheduled search execution time on the current time. If this value is set to 0, the scheduler bases its determination of the next scheduled search on the last search execution time. This is called continuous scheduling. If set to 0, the scheduler never skips scheduled execution periods. However, the execution of the saved search might fall behind depending on the scheduler load. Use continuous scheduling whenever you enable the summary index option.
     * 
     */
    public Optional> realtimeSchedule() {
        return Optional.ofNullable(this.realtimeSchedule);
    }

    /**
     * Specifies a field used by Splunk Web to denote the app this search should be dispatched in.
     * 
     */
    @Import(name="requestUiDispatchApp")
    private @Nullable Output requestUiDispatchApp;

    /**
     * @return Specifies a field used by Splunk Web to denote the app this search should be dispatched in.
     * 
     */
    public Optional> requestUiDispatchApp() {
        return Optional.ofNullable(this.requestUiDispatchApp);
    }

    /**
     * Specifies a field used by Splunk Web to denote the view this search should be displayed in.
     * 
     */
    @Import(name="requestUiDispatchView")
    private @Nullable Output requestUiDispatchView;

    /**
     * @return Specifies a field used by Splunk Web to denote the view this search should be displayed in.
     * 
     */
    public Optional> requestUiDispatchView() {
        return Optional.ofNullable(this.requestUiDispatchView);
    }

    /**
     * Specifies whether to restart a real-time search managed by the scheduler when a search peer becomes available for this saved search. Defaults to 1.
     * 
     */
    @Import(name="restartOnSearchpeerAdd")
    private @Nullable Output restartOnSearchpeerAdd;

    /**
     * @return Specifies whether to restart a real-time search managed by the scheduler when a search peer becomes available for this saved search. Defaults to 1.
     * 
     */
    public Optional> restartOnSearchpeerAdd() {
        return Optional.ofNullable(this.restartOnSearchpeerAdd);
    }

    /**
     * Indicates whether this search runs at startup. If it does not run on startup, it runs at the next scheduled time. Defaults to 0. Set to 1 for scheduled searches that populate lookup tables.
     * 
     */
    @Import(name="runOnStartup")
    private @Nullable Output runOnStartup;

    /**
     * @return Indicates whether this search runs at startup. If it does not run on startup, it runs at the next scheduled time. Defaults to 0. Set to 1 for scheduled searches that populate lookup tables.
     * 
     */
    public Optional> runOnStartup() {
        return Optional.ofNullable(this.runOnStartup);
    }

    /**
     * Raises the scheduling priority of the named search. Defaults to Default
     * 
     */
    @Import(name="schedulePriority")
    private @Nullable Output schedulePriority;

    /**
     * @return Raises the scheduling priority of the named search. Defaults to Default
     * 
     */
    public Optional> schedulePriority() {
        return Optional.ofNullable(this.schedulePriority);
    }

    /**
     * Time window (in minutes) during which the search has lower priority. Defaults to 0. The scheduler can give higher priority to more critical searches during this window. The window must be smaller than the search period.Set to auto to let the scheduler determine the optimal window value automatically. Requires the edit_search_schedule_window capability to override auto.
     * 
     */
    @Import(name="scheduleWindow")
    private @Nullable Output scheduleWindow;

    /**
     * @return Time window (in minutes) during which the search has lower priority. Defaults to 0. The scheduler can give higher priority to more critical searches during this window. The window must be smaller than the search period.Set to auto to let the scheduler determine the optimal window value automatically. Requires the edit_search_schedule_window capability to override auto.
     * 
     */
    public Optional> scheduleWindow() {
        return Optional.ofNullable(this.scheduleWindow);
    }

    /**
     * Required when creating a new search.
     * 
     */
    @Import(name="search")
    private @Nullable Output search;

    /**
     * @return Required when creating a new search.
     * 
     */
    public Optional> search() {
        return Optional.ofNullable(this.search);
    }

    /**
     * Defines the viewstate id associated with the UI view listed in 'displayview'.
     * 
     */
    @Import(name="vsid")
    private @Nullable Output vsid;

    /**
     * @return Defines the viewstate id associated with the UI view listed in 'displayview'.
     * 
     */
    public Optional> vsid() {
        return Optional.ofNullable(this.vsid);
    }

    /**
     * Specifies the new workload pool where the existing running search will be placed.`
     * 
     */
    @Import(name="workloadPool")
    private @Nullable Output workloadPool;

    /**
     * @return Specifies the new workload pool where the existing running search will be placed.`
     * 
     */
    public Optional> workloadPool() {
        return Optional.ofNullable(this.workloadPool);
    }

    private SavedSearchesState() {}

    private SavedSearchesState(SavedSearchesState $) {
        this.acl = $.acl;
        this.actionCreateXsoarIncident = $.actionCreateXsoarIncident;
        this.actionCreateXsoarIncidentParamCustomFields = $.actionCreateXsoarIncidentParamCustomFields;
        this.actionCreateXsoarIncidentParamDetails = $.actionCreateXsoarIncidentParamDetails;
        this.actionCreateXsoarIncidentParamIncidentName = $.actionCreateXsoarIncidentParamIncidentName;
        this.actionCreateXsoarIncidentParamOccurred = $.actionCreateXsoarIncidentParamOccurred;
        this.actionCreateXsoarIncidentParamSendAllServers = $.actionCreateXsoarIncidentParamSendAllServers;
        this.actionCreateXsoarIncidentParamServerUrl = $.actionCreateXsoarIncidentParamServerUrl;
        this.actionCreateXsoarIncidentParamSeverity = $.actionCreateXsoarIncidentParamSeverity;
        this.actionCreateXsoarIncidentParamType = $.actionCreateXsoarIncidentParamType;
        this.actionEmail = $.actionEmail;
        this.actionEmailAuthPassword = $.actionEmailAuthPassword;
        this.actionEmailAuthUsername = $.actionEmailAuthUsername;
        this.actionEmailBcc = $.actionEmailBcc;
        this.actionEmailCc = $.actionEmailCc;
        this.actionEmailCommand = $.actionEmailCommand;
        this.actionEmailFormat = $.actionEmailFormat;
        this.actionEmailFrom = $.actionEmailFrom;
        this.actionEmailHostname = $.actionEmailHostname;
        this.actionEmailIncludeResultsLink = $.actionEmailIncludeResultsLink;
        this.actionEmailIncludeSearch = $.actionEmailIncludeSearch;
        this.actionEmailIncludeTrigger = $.actionEmailIncludeTrigger;
        this.actionEmailIncludeTriggerTime = $.actionEmailIncludeTriggerTime;
        this.actionEmailIncludeViewLink = $.actionEmailIncludeViewLink;
        this.actionEmailInline = $.actionEmailInline;
        this.actionEmailMailserver = $.actionEmailMailserver;
        this.actionEmailMaxResults = $.actionEmailMaxResults;
        this.actionEmailMaxTime = $.actionEmailMaxTime;
        this.actionEmailMessageAlert = $.actionEmailMessageAlert;
        this.actionEmailMessageReport = $.actionEmailMessageReport;
        this.actionEmailPdfview = $.actionEmailPdfview;
        this.actionEmailPreprocessResults = $.actionEmailPreprocessResults;
        this.actionEmailReportCidFontList = $.actionEmailReportCidFontList;
        this.actionEmailReportIncludeSplunkLogo = $.actionEmailReportIncludeSplunkLogo;
        this.actionEmailReportPaperOrientation = $.actionEmailReportPaperOrientation;
        this.actionEmailReportPaperSize = $.actionEmailReportPaperSize;
        this.actionEmailReportServerEnabled = $.actionEmailReportServerEnabled;
        this.actionEmailReportServerUrl = $.actionEmailReportServerUrl;
        this.actionEmailSendCsv = $.actionEmailSendCsv;
        this.actionEmailSendPdf = $.actionEmailSendPdf;
        this.actionEmailSendResults = $.actionEmailSendResults;
        this.actionEmailSubject = $.actionEmailSubject;
        this.actionEmailTo = $.actionEmailTo;
        this.actionEmailTrackAlert = $.actionEmailTrackAlert;
        this.actionEmailTtl = $.actionEmailTtl;
        this.actionEmailUseSsl = $.actionEmailUseSsl;
        this.actionEmailUseTls = $.actionEmailUseTls;
        this.actionEmailWidthSortColumns = $.actionEmailWidthSortColumns;
        this.actionJiraServiceDeskParamAccount = $.actionJiraServiceDeskParamAccount;
        this.actionJiraServiceDeskParamJiraDescription = $.actionJiraServiceDeskParamJiraDescription;
        this.actionJiraServiceDeskParamJiraIssueType = $.actionJiraServiceDeskParamJiraIssueType;
        this.actionJiraServiceDeskParamJiraPriority = $.actionJiraServiceDeskParamJiraPriority;
        this.actionJiraServiceDeskParamJiraProject = $.actionJiraServiceDeskParamJiraProject;
        this.actionJiraServiceDeskParamJiraSummary = $.actionJiraServiceDeskParamJiraSummary;
        this.actionPagerdutyCustomDetails = $.actionPagerdutyCustomDetails;
        this.actionPagerdutyIntegrationKey = $.actionPagerdutyIntegrationKey;
        this.actionPagerdutyIntegrationKeyOverride = $.actionPagerdutyIntegrationKeyOverride;
        this.actionPagerdutyIntegrationUrl = $.actionPagerdutyIntegrationUrl;
        this.actionPagerdutyIntegrationUrlOverride = $.actionPagerdutyIntegrationUrlOverride;
        this.actionPopulateLookup = $.actionPopulateLookup;
        this.actionPopulateLookupCommand = $.actionPopulateLookupCommand;
        this.actionPopulateLookupDest = $.actionPopulateLookupDest;
        this.actionPopulateLookupHostname = $.actionPopulateLookupHostname;
        this.actionPopulateLookupMaxResults = $.actionPopulateLookupMaxResults;
        this.actionPopulateLookupMaxTime = $.actionPopulateLookupMaxTime;
        this.actionPopulateLookupTrackAlert = $.actionPopulateLookupTrackAlert;
        this.actionPopulateLookupTtl = $.actionPopulateLookupTtl;
        this.actionRss = $.actionRss;
        this.actionRssCommand = $.actionRssCommand;
        this.actionRssHostname = $.actionRssHostname;
        this.actionRssMaxResults = $.actionRssMaxResults;
        this.actionRssMaxTime = $.actionRssMaxTime;
        this.actionRssTrackAlert = $.actionRssTrackAlert;
        this.actionRssTtl = $.actionRssTtl;
        this.actionScript = $.actionScript;
        this.actionScriptCommand = $.actionScriptCommand;
        this.actionScriptFilename = $.actionScriptFilename;
        this.actionScriptHostname = $.actionScriptHostname;
        this.actionScriptMaxResults = $.actionScriptMaxResults;
        this.actionScriptMaxTime = $.actionScriptMaxTime;
        this.actionScriptTrackAlert = $.actionScriptTrackAlert;
        this.actionScriptTtl = $.actionScriptTtl;
        this.actionSlackParamAttachment = $.actionSlackParamAttachment;
        this.actionSlackParamChannel = $.actionSlackParamChannel;
        this.actionSlackParamFields = $.actionSlackParamFields;
        this.actionSlackParamMessage = $.actionSlackParamMessage;
        this.actionSlackParamWebhookUrlOverride = $.actionSlackParamWebhookUrlOverride;
        this.actionSnowEventParamAccount = $.actionSnowEventParamAccount;
        this.actionSnowEventParamAdditionalInfo = $.actionSnowEventParamAdditionalInfo;
        this.actionSnowEventParamCiIdentifier = $.actionSnowEventParamCiIdentifier;
        this.actionSnowEventParamCustomFields = $.actionSnowEventParamCustomFields;
        this.actionSnowEventParamDescription = $.actionSnowEventParamDescription;
        this.actionSnowEventParamNode = $.actionSnowEventParamNode;
        this.actionSnowEventParamResource = $.actionSnowEventParamResource;
        this.actionSnowEventParamSeverity = $.actionSnowEventParamSeverity;
        this.actionSnowEventParamType = $.actionSnowEventParamType;
        this.actionSummaryIndex = $.actionSummaryIndex;
        this.actionSummaryIndexCommand = $.actionSummaryIndexCommand;
        this.actionSummaryIndexHostname = $.actionSummaryIndexHostname;
        this.actionSummaryIndexInline = $.actionSummaryIndexInline;
        this.actionSummaryIndexMaxResults = $.actionSummaryIndexMaxResults;
        this.actionSummaryIndexMaxTime = $.actionSummaryIndexMaxTime;
        this.actionSummaryIndexName = $.actionSummaryIndexName;
        this.actionSummaryIndexTrackAlert = $.actionSummaryIndexTrackAlert;
        this.actionSummaryIndexTtl = $.actionSummaryIndexTtl;
        this.actionWebhookParamUrl = $.actionWebhookParamUrl;
        this.actions = $.actions;
        this.alertComparator = $.alertComparator;
        this.alertCondition = $.alertCondition;
        this.alertDigestMode = $.alertDigestMode;
        this.alertExpires = $.alertExpires;
        this.alertSeverity = $.alertSeverity;
        this.alertSuppress = $.alertSuppress;
        this.alertSuppressFields = $.alertSuppressFields;
        this.alertSuppressPeriod = $.alertSuppressPeriod;
        this.alertThreshold = $.alertThreshold;
        this.alertTrack = $.alertTrack;
        this.alertType = $.alertType;
        this.allowSkew = $.allowSkew;
        this.autoSummarize = $.autoSummarize;
        this.autoSummarizeCommand = $.autoSummarizeCommand;
        this.autoSummarizeCronSchedule = $.autoSummarizeCronSchedule;
        this.autoSummarizeDispatchEarliestTime = $.autoSummarizeDispatchEarliestTime;
        this.autoSummarizeDispatchLatestTime = $.autoSummarizeDispatchLatestTime;
        this.autoSummarizeDispatchTimeFormat = $.autoSummarizeDispatchTimeFormat;
        this.autoSummarizeDispatchTtl = $.autoSummarizeDispatchTtl;
        this.autoSummarizeMaxDisabledBuckets = $.autoSummarizeMaxDisabledBuckets;
        this.autoSummarizeMaxSummaryRatio = $.autoSummarizeMaxSummaryRatio;
        this.autoSummarizeMaxSummarySize = $.autoSummarizeMaxSummarySize;
        this.autoSummarizeMaxTime = $.autoSummarizeMaxTime;
        this.autoSummarizeSuspendPeriod = $.autoSummarizeSuspendPeriod;
        this.autoSummarizeTimespan = $.autoSummarizeTimespan;
        this.cronSchedule = $.cronSchedule;
        this.description = $.description;
        this.disabled = $.disabled;
        this.dispatchBuckets = $.dispatchBuckets;
        this.dispatchEarliestTime = $.dispatchEarliestTime;
        this.dispatchIndexEarliest = $.dispatchIndexEarliest;
        this.dispatchIndexLatest = $.dispatchIndexLatest;
        this.dispatchIndexedRealtime = $.dispatchIndexedRealtime;
        this.dispatchIndexedRealtimeMinspan = $.dispatchIndexedRealtimeMinspan;
        this.dispatchIndexedRealtimeOffset = $.dispatchIndexedRealtimeOffset;
        this.dispatchLatestTime = $.dispatchLatestTime;
        this.dispatchLookups = $.dispatchLookups;
        this.dispatchMaxCount = $.dispatchMaxCount;
        this.dispatchMaxTime = $.dispatchMaxTime;
        this.dispatchReduceFreq = $.dispatchReduceFreq;
        this.dispatchRtBackfill = $.dispatchRtBackfill;
        this.dispatchRtMaximumSpan = $.dispatchRtMaximumSpan;
        this.dispatchSpawnProcess = $.dispatchSpawnProcess;
        this.dispatchTimeFormat = $.dispatchTimeFormat;
        this.dispatchTtl = $.dispatchTtl;
        this.displayView = $.displayView;
        this.isScheduled = $.isScheduled;
        this.isVisible = $.isVisible;
        this.maxConcurrent = $.maxConcurrent;
        this.name = $.name;
        this.realtimeSchedule = $.realtimeSchedule;
        this.requestUiDispatchApp = $.requestUiDispatchApp;
        this.requestUiDispatchView = $.requestUiDispatchView;
        this.restartOnSearchpeerAdd = $.restartOnSearchpeerAdd;
        this.runOnStartup = $.runOnStartup;
        this.schedulePriority = $.schedulePriority;
        this.scheduleWindow = $.scheduleWindow;
        this.search = $.search;
        this.vsid = $.vsid;
        this.workloadPool = $.workloadPool;
    }

    public static Builder builder() {
        return new Builder();
    }
    public static Builder builder(SavedSearchesState defaults) {
        return new Builder(defaults);
    }

    public static final class Builder {
        private SavedSearchesState $;

        public Builder() {
            $ = new SavedSearchesState();
        }

        public Builder(SavedSearchesState defaults) {
            $ = new SavedSearchesState(Objects.requireNonNull(defaults));
        }

        /**
         * @param acl The app/user context that is the namespace for the resource
         * 
         * @return builder
         * 
         */
        public Builder acl(@Nullable Output acl) {
            $.acl = acl;
            return this;
        }

        /**
         * @param acl The app/user context that is the namespace for the resource
         * 
         * @return builder
         * 
         */
        public Builder acl(SavedSearchesAclArgs acl) {
            return acl(Output.of(acl));
        }

        /**
         * @param actionCreateXsoarIncident Enable XSOAR alerting (Should by 1 (Enabled) or 0 (Disabled))
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncident(@Nullable Output actionCreateXsoarIncident) {
            $.actionCreateXsoarIncident = actionCreateXsoarIncident;
            return this;
        }

        /**
         * @param actionCreateXsoarIncident Enable XSOAR alerting (Should by 1 (Enabled) or 0 (Disabled))
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncident(String actionCreateXsoarIncident) {
            return actionCreateXsoarIncident(Output.of(actionCreateXsoarIncident));
        }

        /**
         * @param actionCreateXsoarIncidentParamCustomFields XSOAR custom incident fields (should be a comma separated list)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamCustomFields(@Nullable Output actionCreateXsoarIncidentParamCustomFields) {
            $.actionCreateXsoarIncidentParamCustomFields = actionCreateXsoarIncidentParamCustomFields;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamCustomFields XSOAR custom incident fields (should be a comma separated list)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamCustomFields(String actionCreateXsoarIncidentParamCustomFields) {
            return actionCreateXsoarIncidentParamCustomFields(Output.of(actionCreateXsoarIncidentParamCustomFields));
        }

        /**
         * @param actionCreateXsoarIncidentParamDetails XSOAR incident description
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamDetails(@Nullable Output actionCreateXsoarIncidentParamDetails) {
            $.actionCreateXsoarIncidentParamDetails = actionCreateXsoarIncidentParamDetails;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamDetails XSOAR incident description
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamDetails(String actionCreateXsoarIncidentParamDetails) {
            return actionCreateXsoarIncidentParamDetails(Output.of(actionCreateXsoarIncidentParamDetails));
        }

        /**
         * @param actionCreateXsoarIncidentParamIncidentName XSOAR incident name
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamIncidentName(@Nullable Output actionCreateXsoarIncidentParamIncidentName) {
            $.actionCreateXsoarIncidentParamIncidentName = actionCreateXsoarIncidentParamIncidentName;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamIncidentName XSOAR incident name
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamIncidentName(String actionCreateXsoarIncidentParamIncidentName) {
            return actionCreateXsoarIncidentParamIncidentName(Output.of(actionCreateXsoarIncidentParamIncidentName));
        }

        /**
         * @param actionCreateXsoarIncidentParamOccurred XSOAR incident time
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamOccurred(@Nullable Output actionCreateXsoarIncidentParamOccurred) {
            $.actionCreateXsoarIncidentParamOccurred = actionCreateXsoarIncidentParamOccurred;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamOccurred XSOAR incident time
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamOccurred(String actionCreateXsoarIncidentParamOccurred) {
            return actionCreateXsoarIncidentParamOccurred(Output.of(actionCreateXsoarIncidentParamOccurred));
        }

        /**
         * @param actionCreateXsoarIncidentParamSendAllServers Enable XSOAR alerting sending to all servers (Should by 1 (Enabled) or 0 (Disabled)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamSendAllServers(@Nullable Output actionCreateXsoarIncidentParamSendAllServers) {
            $.actionCreateXsoarIncidentParamSendAllServers = actionCreateXsoarIncidentParamSendAllServers;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamSendAllServers Enable XSOAR alerting sending to all servers (Should by 1 (Enabled) or 0 (Disabled)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamSendAllServers(String actionCreateXsoarIncidentParamSendAllServers) {
            return actionCreateXsoarIncidentParamSendAllServers(Output.of(actionCreateXsoarIncidentParamSendAllServers));
        }

        /**
         * @param actionCreateXsoarIncidentParamServerUrl XSOAR Server instance URL (Should start with https:// || http://)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamServerUrl(@Nullable Output actionCreateXsoarIncidentParamServerUrl) {
            $.actionCreateXsoarIncidentParamServerUrl = actionCreateXsoarIncidentParamServerUrl;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamServerUrl XSOAR Server instance URL (Should start with https:// || http://)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamServerUrl(String actionCreateXsoarIncidentParamServerUrl) {
            return actionCreateXsoarIncidentParamServerUrl(Output.of(actionCreateXsoarIncidentParamServerUrl));
        }

        /**
         * @param actionCreateXsoarIncidentParamSeverity XSOAR Severity (1 - Low, 2 - Medium, 3 - High, 4 - Critical)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamSeverity(@Nullable Output actionCreateXsoarIncidentParamSeverity) {
            $.actionCreateXsoarIncidentParamSeverity = actionCreateXsoarIncidentParamSeverity;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamSeverity XSOAR Severity (1 - Low, 2 - Medium, 3 - High, 4 - Critical)
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamSeverity(String actionCreateXsoarIncidentParamSeverity) {
            return actionCreateXsoarIncidentParamSeverity(Output.of(actionCreateXsoarIncidentParamSeverity));
        }

        /**
         * @param actionCreateXsoarIncidentParamType XSOAR incident type
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamType(@Nullable Output actionCreateXsoarIncidentParamType) {
            $.actionCreateXsoarIncidentParamType = actionCreateXsoarIncidentParamType;
            return this;
        }

        /**
         * @param actionCreateXsoarIncidentParamType XSOAR incident type
         * 
         * @return builder
         * 
         */
        public Builder actionCreateXsoarIncidentParamType(String actionCreateXsoarIncidentParamType) {
            return actionCreateXsoarIncidentParamType(Output.of(actionCreateXsoarIncidentParamType));
        }

        /**
         * @param actionEmail The state of the email action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmail(@Nullable Output actionEmail) {
            $.actionEmail = actionEmail;
            return this;
        }

        /**
         * @param actionEmail The state of the email action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmail(Boolean actionEmail) {
            return actionEmail(Output.of(actionEmail));
        }

        /**
         * @param actionEmailAuthPassword The password to use when authenticating with the SMTP server. Normally this value is set when editing the email settings, however you can set a clear text password here and it is encrypted on the next platform restart.Defaults to empty string.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailAuthPassword(@Nullable Output actionEmailAuthPassword) {
            $.actionEmailAuthPassword = actionEmailAuthPassword;
            return this;
        }

        /**
         * @param actionEmailAuthPassword The password to use when authenticating with the SMTP server. Normally this value is set when editing the email settings, however you can set a clear text password here and it is encrypted on the next platform restart.Defaults to empty string.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailAuthPassword(String actionEmailAuthPassword) {
            return actionEmailAuthPassword(Output.of(actionEmailAuthPassword));
        }

        /**
         * @param actionEmailAuthUsername The username to use when authenticating with the SMTP server. If this is empty string, no authentication is attempted. Defaults to empty stringNOTE: Your SMTP server might reject unauthenticated emails.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailAuthUsername(@Nullable Output actionEmailAuthUsername) {
            $.actionEmailAuthUsername = actionEmailAuthUsername;
            return this;
        }

        /**
         * @param actionEmailAuthUsername The username to use when authenticating with the SMTP server. If this is empty string, no authentication is attempted. Defaults to empty stringNOTE: Your SMTP server might reject unauthenticated emails.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailAuthUsername(String actionEmailAuthUsername) {
            return actionEmailAuthUsername(Output.of(actionEmailAuthUsername));
        }

        /**
         * @param actionEmailBcc BCC email address to use if action.email is enabled.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailBcc(@Nullable Output actionEmailBcc) {
            $.actionEmailBcc = actionEmailBcc;
            return this;
        }

        /**
         * @param actionEmailBcc BCC email address to use if action.email is enabled.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailBcc(String actionEmailBcc) {
            return actionEmailBcc(Output.of(actionEmailBcc));
        }

        /**
         * @param actionEmailCc CC email address to use if action.email is enabled.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailCc(@Nullable Output actionEmailCc) {
            $.actionEmailCc = actionEmailCc;
            return this;
        }

        /**
         * @param actionEmailCc CC email address to use if action.email is enabled.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailCc(String actionEmailCc) {
            return actionEmailCc(Output.of(actionEmailCc));
        }

        /**
         * @param actionEmailCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailCommand(@Nullable Output actionEmailCommand) {
            $.actionEmailCommand = actionEmailCommand;
            return this;
        }

        /**
         * @param actionEmailCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailCommand(String actionEmailCommand) {
            return actionEmailCommand(Output.of(actionEmailCommand));
        }

        /**
         * @param actionEmailFormat Valid values: (table | plain | html | raw | csv)Specify the format of text in the email. This value also applies to any attachments.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailFormat(@Nullable Output actionEmailFormat) {
            $.actionEmailFormat = actionEmailFormat;
            return this;
        }

        /**
         * @param actionEmailFormat Valid values: (table | plain | html | raw | csv)Specify the format of text in the email. This value also applies to any attachments.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailFormat(String actionEmailFormat) {
            return actionEmailFormat(Output.of(actionEmailFormat));
        }

        /**
         * @param actionEmailFrom Email address from which the email action originates.Defaults to splunk@$LOCALHOST or whatever value is set in alert_actions.conf.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailFrom(@Nullable Output actionEmailFrom) {
            $.actionEmailFrom = actionEmailFrom;
            return this;
        }

        /**
         * @param actionEmailFrom Email address from which the email action originates.Defaults to splunk@$LOCALHOST or whatever value is set in alert_actions.conf.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailFrom(String actionEmailFrom) {
            return actionEmailFrom(Output.of(actionEmailFrom));
        }

        /**
         * @param actionEmailHostname Sets the hostname used in the web link (url) sent in email actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)
         * 
         * @return builder
         * 
         */
        public Builder actionEmailHostname(@Nullable Output actionEmailHostname) {
            $.actionEmailHostname = actionEmailHostname;
            return this;
        }

        /**
         * @param actionEmailHostname Sets the hostname used in the web link (url) sent in email actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)
         * 
         * @return builder
         * 
         */
        public Builder actionEmailHostname(String actionEmailHostname) {
            return actionEmailHostname(Output.of(actionEmailHostname));
        }

        /**
         * @param actionEmailIncludeResultsLink Specify whether to include a link to the results. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeResultsLink(@Nullable Output actionEmailIncludeResultsLink) {
            $.actionEmailIncludeResultsLink = actionEmailIncludeResultsLink;
            return this;
        }

        /**
         * @param actionEmailIncludeResultsLink Specify whether to include a link to the results. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeResultsLink(Integer actionEmailIncludeResultsLink) {
            return actionEmailIncludeResultsLink(Output.of(actionEmailIncludeResultsLink));
        }

        /**
         * @param actionEmailIncludeSearch Specify whether to include the search that caused an email to be sent. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeSearch(@Nullable Output actionEmailIncludeSearch) {
            $.actionEmailIncludeSearch = actionEmailIncludeSearch;
            return this;
        }

        /**
         * @param actionEmailIncludeSearch Specify whether to include the search that caused an email to be sent. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeSearch(Integer actionEmailIncludeSearch) {
            return actionEmailIncludeSearch(Output.of(actionEmailIncludeSearch));
        }

        /**
         * @param actionEmailIncludeTrigger Specify whether to show the trigger condition that caused the alert to fire. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeTrigger(@Nullable Output actionEmailIncludeTrigger) {
            $.actionEmailIncludeTrigger = actionEmailIncludeTrigger;
            return this;
        }

        /**
         * @param actionEmailIncludeTrigger Specify whether to show the trigger condition that caused the alert to fire. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeTrigger(Integer actionEmailIncludeTrigger) {
            return actionEmailIncludeTrigger(Output.of(actionEmailIncludeTrigger));
        }

        /**
         * @param actionEmailIncludeTriggerTime Specify whether to show the time that the alert was fired. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeTriggerTime(@Nullable Output actionEmailIncludeTriggerTime) {
            $.actionEmailIncludeTriggerTime = actionEmailIncludeTriggerTime;
            return this;
        }

        /**
         * @param actionEmailIncludeTriggerTime Specify whether to show the time that the alert was fired. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeTriggerTime(Integer actionEmailIncludeTriggerTime) {
            return actionEmailIncludeTriggerTime(Output.of(actionEmailIncludeTriggerTime));
        }

        /**
         * @param actionEmailIncludeViewLink Specify whether to show the title and a link to enable the user to edit the saved search. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeViewLink(@Nullable Output actionEmailIncludeViewLink) {
            $.actionEmailIncludeViewLink = actionEmailIncludeViewLink;
            return this;
        }

        /**
         * @param actionEmailIncludeViewLink Specify whether to show the title and a link to enable the user to edit the saved search. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailIncludeViewLink(Integer actionEmailIncludeViewLink) {
            return actionEmailIncludeViewLink(Output.of(actionEmailIncludeViewLink));
        }

        /**
         * @param actionEmailInline Indicates whether the search results are contained in the body of the email.Results can be either inline or attached to an email.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailInline(@Nullable Output actionEmailInline) {
            $.actionEmailInline = actionEmailInline;
            return this;
        }

        /**
         * @param actionEmailInline Indicates whether the search results are contained in the body of the email.Results can be either inline or attached to an email.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailInline(Boolean actionEmailInline) {
            return actionEmailInline(Output.of(actionEmailInline));
        }

        /**
         * @param actionEmailMailserver Set the address of the MTA server to be used to send the emails.Defaults to <LOCALHOST> or whatever is set in alert_actions.conf.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMailserver(@Nullable Output actionEmailMailserver) {
            $.actionEmailMailserver = actionEmailMailserver;
            return this;
        }

        /**
         * @param actionEmailMailserver Set the address of the MTA server to be used to send the emails.Defaults to <LOCALHOST> or whatever is set in alert_actions.conf.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMailserver(String actionEmailMailserver) {
            return actionEmailMailserver(Output.of(actionEmailMailserver));
        }

        /**
         * @param actionEmailMaxResults Sets the global maximum number of search results to send when email.action is enabled. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMaxResults(@Nullable Output actionEmailMaxResults) {
            $.actionEmailMaxResults = actionEmailMaxResults;
            return this;
        }

        /**
         * @param actionEmailMaxResults Sets the global maximum number of search results to send when email.action is enabled. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMaxResults(Integer actionEmailMaxResults) {
            return actionEmailMaxResults(Output.of(actionEmailMaxResults));
        }

        /**
         * @param actionEmailMaxTime Valid values are Integer[m|s|h|d].Specifies the maximum amount of time the execution of an email action takes before the action is aborted. Defaults to 5m.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMaxTime(@Nullable Output actionEmailMaxTime) {
            $.actionEmailMaxTime = actionEmailMaxTime;
            return this;
        }

        /**
         * @param actionEmailMaxTime Valid values are Integer[m|s|h|d].Specifies the maximum amount of time the execution of an email action takes before the action is aborted. Defaults to 5m.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMaxTime(String actionEmailMaxTime) {
            return actionEmailMaxTime(Output.of(actionEmailMaxTime));
        }

        /**
         * @param actionEmailMessageAlert Customize the message sent in the emailed alert. Defaults to: The alert condition for '$name$' was triggered.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMessageAlert(@Nullable Output actionEmailMessageAlert) {
            $.actionEmailMessageAlert = actionEmailMessageAlert;
            return this;
        }

        /**
         * @param actionEmailMessageAlert Customize the message sent in the emailed alert. Defaults to: The alert condition for '$name$' was triggered.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMessageAlert(String actionEmailMessageAlert) {
            return actionEmailMessageAlert(Output.of(actionEmailMessageAlert));
        }

        /**
         * @param actionEmailMessageReport Customize the message sent in the emailed report. Defaults to: The scheduled report '$name$' has run
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMessageReport(@Nullable Output actionEmailMessageReport) {
            $.actionEmailMessageReport = actionEmailMessageReport;
            return this;
        }

        /**
         * @param actionEmailMessageReport Customize the message sent in the emailed report. Defaults to: The scheduled report '$name$' has run
         * 
         * @return builder
         * 
         */
        public Builder actionEmailMessageReport(String actionEmailMessageReport) {
            return actionEmailMessageReport(Output.of(actionEmailMessageReport));
        }

        /**
         * @param actionEmailPdfview The name of the view to deliver if sendpdf is enabled
         * 
         * @return builder
         * 
         */
        public Builder actionEmailPdfview(@Nullable Output actionEmailPdfview) {
            $.actionEmailPdfview = actionEmailPdfview;
            return this;
        }

        /**
         * @param actionEmailPdfview The name of the view to deliver if sendpdf is enabled
         * 
         * @return builder
         * 
         */
        public Builder actionEmailPdfview(String actionEmailPdfview) {
            return actionEmailPdfview(Output.of(actionEmailPdfview));
        }

        /**
         * @param actionEmailPreprocessResults Search string to preprocess results before emailing them. Defaults to empty string (no preprocessing).Usually the preprocessing consists of filtering out unwanted internal fields.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailPreprocessResults(@Nullable Output actionEmailPreprocessResults) {
            $.actionEmailPreprocessResults = actionEmailPreprocessResults;
            return this;
        }

        /**
         * @param actionEmailPreprocessResults Search string to preprocess results before emailing them. Defaults to empty string (no preprocessing).Usually the preprocessing consists of filtering out unwanted internal fields.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailPreprocessResults(String actionEmailPreprocessResults) {
            return actionEmailPreprocessResults(Output.of(actionEmailPreprocessResults));
        }

        /**
         * @param actionEmailReportCidFontList Space-separated list. Specifies the set (and load order) of CID fonts for handling Simplified Chinese(gb), Traditional Chinese(cns), Japanese(jp), and Korean(kor) in Integrated PDF Rendering.If multiple fonts provide a glyph for a given character code, the glyph from the first font specified in the list is used.To skip loading any CID fonts, specify the empty string.Defaults to 'gb cns jp kor'
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportCidFontList(@Nullable Output actionEmailReportCidFontList) {
            $.actionEmailReportCidFontList = actionEmailReportCidFontList;
            return this;
        }

        /**
         * @param actionEmailReportCidFontList Space-separated list. Specifies the set (and load order) of CID fonts for handling Simplified Chinese(gb), Traditional Chinese(cns), Japanese(jp), and Korean(kor) in Integrated PDF Rendering.If multiple fonts provide a glyph for a given character code, the glyph from the first font specified in the list is used.To skip loading any CID fonts, specify the empty string.Defaults to 'gb cns jp kor'
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportCidFontList(String actionEmailReportCidFontList) {
            return actionEmailReportCidFontList(Output.of(actionEmailReportCidFontList));
        }

        /**
         * @param actionEmailReportIncludeSplunkLogo Indicates whether to include the Splunk logo with the report.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportIncludeSplunkLogo(@Nullable Output actionEmailReportIncludeSplunkLogo) {
            $.actionEmailReportIncludeSplunkLogo = actionEmailReportIncludeSplunkLogo;
            return this;
        }

        /**
         * @param actionEmailReportIncludeSplunkLogo Indicates whether to include the Splunk logo with the report.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportIncludeSplunkLogo(Boolean actionEmailReportIncludeSplunkLogo) {
            return actionEmailReportIncludeSplunkLogo(Output.of(actionEmailReportIncludeSplunkLogo));
        }

        /**
         * @param actionEmailReportPaperOrientation Valid values: (portrait | landscape)Specifies the paper orientation: portrait or landscape. Defaults to portrait.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportPaperOrientation(@Nullable Output actionEmailReportPaperOrientation) {
            $.actionEmailReportPaperOrientation = actionEmailReportPaperOrientation;
            return this;
        }

        /**
         * @param actionEmailReportPaperOrientation Valid values: (portrait | landscape)Specifies the paper orientation: portrait or landscape. Defaults to portrait.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportPaperOrientation(String actionEmailReportPaperOrientation) {
            return actionEmailReportPaperOrientation(Output.of(actionEmailReportPaperOrientation));
        }

        /**
         * @param actionEmailReportPaperSize Valid values: (letter | legal | ledger | a2 | a3 | a4 | a5)Specifies the paper size for PDFs. Defaults to letter.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportPaperSize(@Nullable Output actionEmailReportPaperSize) {
            $.actionEmailReportPaperSize = actionEmailReportPaperSize;
            return this;
        }

        /**
         * @param actionEmailReportPaperSize Valid values: (letter | legal | ledger | a2 | a3 | a4 | a5)Specifies the paper size for PDFs. Defaults to letter.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportPaperSize(String actionEmailReportPaperSize) {
            return actionEmailReportPaperSize(Output.of(actionEmailReportPaperSize));
        }

        /**
         * @param actionEmailReportServerEnabled No Supported
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportServerEnabled(@Nullable Output actionEmailReportServerEnabled) {
            $.actionEmailReportServerEnabled = actionEmailReportServerEnabled;
            return this;
        }

        /**
         * @param actionEmailReportServerEnabled No Supported
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportServerEnabled(Boolean actionEmailReportServerEnabled) {
            return actionEmailReportServerEnabled(Output.of(actionEmailReportServerEnabled));
        }

        /**
         * @param actionEmailReportServerUrl Not supported.For a default locally installed report server, the URL is http://localhost:8091/
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportServerUrl(@Nullable Output actionEmailReportServerUrl) {
            $.actionEmailReportServerUrl = actionEmailReportServerUrl;
            return this;
        }

        /**
         * @param actionEmailReportServerUrl Not supported.For a default locally installed report server, the URL is http://localhost:8091/
         * 
         * @return builder
         * 
         */
        public Builder actionEmailReportServerUrl(String actionEmailReportServerUrl) {
            return actionEmailReportServerUrl(Output.of(actionEmailReportServerUrl));
        }

        /**
         * @param actionEmailSendCsv Specify whether to send results as a CSV file. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSendCsv(@Nullable Output actionEmailSendCsv) {
            $.actionEmailSendCsv = actionEmailSendCsv;
            return this;
        }

        /**
         * @param actionEmailSendCsv Specify whether to send results as a CSV file. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSendCsv(Integer actionEmailSendCsv) {
            return actionEmailSendCsv(Output.of(actionEmailSendCsv));
        }

        /**
         * @param actionEmailSendPdf Indicates whether to create and send the results as a PDF. Defaults to false.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSendPdf(@Nullable Output actionEmailSendPdf) {
            $.actionEmailSendPdf = actionEmailSendPdf;
            return this;
        }

        /**
         * @param actionEmailSendPdf Indicates whether to create and send the results as a PDF. Defaults to false.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSendPdf(Boolean actionEmailSendPdf) {
            return actionEmailSendPdf(Output.of(actionEmailSendPdf));
        }

        /**
         * @param actionEmailSendResults Indicates whether to attach the search results in the email.Results can be either attached or inline. See action.email.inline.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSendResults(@Nullable Output actionEmailSendResults) {
            $.actionEmailSendResults = actionEmailSendResults;
            return this;
        }

        /**
         * @param actionEmailSendResults Indicates whether to attach the search results in the email.Results can be either attached or inline. See action.email.inline.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSendResults(Boolean actionEmailSendResults) {
            return actionEmailSendResults(Output.of(actionEmailSendResults));
        }

        /**
         * @param actionEmailSubject Specifies an alternate email subject.Defaults to SplunkAlert-<savedsearchname>.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSubject(@Nullable Output actionEmailSubject) {
            $.actionEmailSubject = actionEmailSubject;
            return this;
        }

        /**
         * @param actionEmailSubject Specifies an alternate email subject.Defaults to SplunkAlert-<savedsearchname>.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailSubject(String actionEmailSubject) {
            return actionEmailSubject(Output.of(actionEmailSubject));
        }

        /**
         * @param actionEmailTo A comma or semicolon separated list of recipient email addresses. Required if this search is scheduled and the email alert action is enabled.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailTo(@Nullable Output actionEmailTo) {
            $.actionEmailTo = actionEmailTo;
            return this;
        }

        /**
         * @param actionEmailTo A comma or semicolon separated list of recipient email addresses. Required if this search is scheduled and the email alert action is enabled.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailTo(String actionEmailTo) {
            return actionEmailTo(Output.of(actionEmailTo));
        }

        /**
         * @param actionEmailTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailTrackAlert(@Nullable Output actionEmailTrackAlert) {
            $.actionEmailTrackAlert = actionEmailTrackAlert;
            return this;
        }

        /**
         * @param actionEmailTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailTrackAlert(Boolean actionEmailTrackAlert) {
            return actionEmailTrackAlert(Output.of(actionEmailTrackAlert));
        }

        /**
         * @param actionEmailTtl Valid values are Integer[p].Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows <Integer>, int is the number of scheduled periods. Defaults to 86400 (24 hours).If no actions are triggered, the artifacts have their ttl determined by dispatch.ttl in savedsearches.conf.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailTtl(@Nullable Output actionEmailTtl) {
            $.actionEmailTtl = actionEmailTtl;
            return this;
        }

        /**
         * @param actionEmailTtl Valid values are Integer[p].Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows <Integer>, int is the number of scheduled periods. Defaults to 86400 (24 hours).If no actions are triggered, the artifacts have their ttl determined by dispatch.ttl in savedsearches.conf.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailTtl(String actionEmailTtl) {
            return actionEmailTtl(Output.of(actionEmailTtl));
        }

        /**
         * @param actionEmailUseSsl Indicates whether to use SSL when communicating with the SMTP server. Defaults to false.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailUseSsl(@Nullable Output actionEmailUseSsl) {
            $.actionEmailUseSsl = actionEmailUseSsl;
            return this;
        }

        /**
         * @param actionEmailUseSsl Indicates whether to use SSL when communicating with the SMTP server. Defaults to false.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailUseSsl(Boolean actionEmailUseSsl) {
            return actionEmailUseSsl(Output.of(actionEmailUseSsl));
        }

        /**
         * @param actionEmailUseTls Indicates whether to use TLS (transport layer security) when communicating with the SMTP server (starttls).Defaults to false.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailUseTls(@Nullable Output actionEmailUseTls) {
            $.actionEmailUseTls = actionEmailUseTls;
            return this;
        }

        /**
         * @param actionEmailUseTls Indicates whether to use TLS (transport layer security) when communicating with the SMTP server (starttls).Defaults to false.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailUseTls(Boolean actionEmailUseTls) {
            return actionEmailUseTls(Output.of(actionEmailUseTls));
        }

        /**
         * @param actionEmailWidthSortColumns Indicates whether columns should be sorted from least wide to most wide, left to right.Only valid if format=text.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailWidthSortColumns(@Nullable Output actionEmailWidthSortColumns) {
            $.actionEmailWidthSortColumns = actionEmailWidthSortColumns;
            return this;
        }

        /**
         * @param actionEmailWidthSortColumns Indicates whether columns should be sorted from least wide to most wide, left to right.Only valid if format=text.
         * 
         * @return builder
         * 
         */
        public Builder actionEmailWidthSortColumns(Boolean actionEmailWidthSortColumns) {
            return actionEmailWidthSortColumns(Output.of(actionEmailWidthSortColumns));
        }

        /**
         * @param actionJiraServiceDeskParamAccount Jira Service Desk account name
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamAccount(@Nullable Output actionJiraServiceDeskParamAccount) {
            $.actionJiraServiceDeskParamAccount = actionJiraServiceDeskParamAccount;
            return this;
        }

        /**
         * @param actionJiraServiceDeskParamAccount Jira Service Desk account name
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamAccount(String actionJiraServiceDeskParamAccount) {
            return actionJiraServiceDeskParamAccount(Output.of(actionJiraServiceDeskParamAccount));
        }

        /**
         * @param actionJiraServiceDeskParamJiraDescription Jira issue description
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraDescription(@Nullable Output actionJiraServiceDeskParamJiraDescription) {
            $.actionJiraServiceDeskParamJiraDescription = actionJiraServiceDeskParamJiraDescription;
            return this;
        }

        /**
         * @param actionJiraServiceDeskParamJiraDescription Jira issue description
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraDescription(String actionJiraServiceDeskParamJiraDescription) {
            return actionJiraServiceDeskParamJiraDescription(Output.of(actionJiraServiceDeskParamJiraDescription));
        }

        /**
         * @param actionJiraServiceDeskParamJiraIssueType Jira issue type name
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraIssueType(@Nullable Output actionJiraServiceDeskParamJiraIssueType) {
            $.actionJiraServiceDeskParamJiraIssueType = actionJiraServiceDeskParamJiraIssueType;
            return this;
        }

        /**
         * @param actionJiraServiceDeskParamJiraIssueType Jira issue type name
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraIssueType(String actionJiraServiceDeskParamJiraIssueType) {
            return actionJiraServiceDeskParamJiraIssueType(Output.of(actionJiraServiceDeskParamJiraIssueType));
        }

        /**
         * @param actionJiraServiceDeskParamJiraPriority Jira priority of issue
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraPriority(@Nullable Output actionJiraServiceDeskParamJiraPriority) {
            $.actionJiraServiceDeskParamJiraPriority = actionJiraServiceDeskParamJiraPriority;
            return this;
        }

        /**
         * @param actionJiraServiceDeskParamJiraPriority Jira priority of issue
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraPriority(String actionJiraServiceDeskParamJiraPriority) {
            return actionJiraServiceDeskParamJiraPriority(Output.of(actionJiraServiceDeskParamJiraPriority));
        }

        /**
         * @param actionJiraServiceDeskParamJiraProject Jira Project name
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraProject(@Nullable Output actionJiraServiceDeskParamJiraProject) {
            $.actionJiraServiceDeskParamJiraProject = actionJiraServiceDeskParamJiraProject;
            return this;
        }

        /**
         * @param actionJiraServiceDeskParamJiraProject Jira Project name
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraProject(String actionJiraServiceDeskParamJiraProject) {
            return actionJiraServiceDeskParamJiraProject(Output.of(actionJiraServiceDeskParamJiraProject));
        }

        /**
         * @param actionJiraServiceDeskParamJiraSummary Jira issue title/summary
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraSummary(@Nullable Output actionJiraServiceDeskParamJiraSummary) {
            $.actionJiraServiceDeskParamJiraSummary = actionJiraServiceDeskParamJiraSummary;
            return this;
        }

        /**
         * @param actionJiraServiceDeskParamJiraSummary Jira issue title/summary
         * 
         * @return builder
         * 
         */
        public Builder actionJiraServiceDeskParamJiraSummary(String actionJiraServiceDeskParamJiraSummary) {
            return actionJiraServiceDeskParamJiraSummary(Output.of(actionJiraServiceDeskParamJiraSummary));
        }

        /**
         * @param actionPagerdutyCustomDetails The PagerDuty custom details information.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyCustomDetails(@Nullable Output actionPagerdutyCustomDetails) {
            $.actionPagerdutyCustomDetails = actionPagerdutyCustomDetails;
            return this;
        }

        /**
         * @param actionPagerdutyCustomDetails The PagerDuty custom details information.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyCustomDetails(String actionPagerdutyCustomDetails) {
            return actionPagerdutyCustomDetails(Output.of(actionPagerdutyCustomDetails));
        }

        /**
         * @param actionPagerdutyIntegrationKey The PagerDuty integration Key.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationKey(@Nullable Output actionPagerdutyIntegrationKey) {
            $.actionPagerdutyIntegrationKey = actionPagerdutyIntegrationKey;
            return this;
        }

        /**
         * @param actionPagerdutyIntegrationKey The PagerDuty integration Key.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationKey(String actionPagerdutyIntegrationKey) {
            return actionPagerdutyIntegrationKey(Output.of(actionPagerdutyIntegrationKey));
        }

        /**
         * @param actionPagerdutyIntegrationKeyOverride The PagerDuty integration Key override.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationKeyOverride(@Nullable Output actionPagerdutyIntegrationKeyOverride) {
            $.actionPagerdutyIntegrationKeyOverride = actionPagerdutyIntegrationKeyOverride;
            return this;
        }

        /**
         * @param actionPagerdutyIntegrationKeyOverride The PagerDuty integration Key override.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationKeyOverride(String actionPagerdutyIntegrationKeyOverride) {
            return actionPagerdutyIntegrationKeyOverride(Output.of(actionPagerdutyIntegrationKeyOverride));
        }

        /**
         * @param actionPagerdutyIntegrationUrl The pagerduty integration URL. This integration uses Splunk's native webhooks to send events to PagerDuty.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationUrl(@Nullable Output actionPagerdutyIntegrationUrl) {
            $.actionPagerdutyIntegrationUrl = actionPagerdutyIntegrationUrl;
            return this;
        }

        /**
         * @param actionPagerdutyIntegrationUrl The pagerduty integration URL. This integration uses Splunk's native webhooks to send events to PagerDuty.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationUrl(String actionPagerdutyIntegrationUrl) {
            return actionPagerdutyIntegrationUrl(Output.of(actionPagerdutyIntegrationUrl));
        }

        /**
         * @param actionPagerdutyIntegrationUrlOverride The pagerduty integration URL override. This integration uses Splunk's native webhooks to send events to PagerDuty.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationUrlOverride(@Nullable Output actionPagerdutyIntegrationUrlOverride) {
            $.actionPagerdutyIntegrationUrlOverride = actionPagerdutyIntegrationUrlOverride;
            return this;
        }

        /**
         * @param actionPagerdutyIntegrationUrlOverride The pagerduty integration URL override. This integration uses Splunk's native webhooks to send events to PagerDuty.
         * 
         * @return builder
         * 
         */
        public Builder actionPagerdutyIntegrationUrlOverride(String actionPagerdutyIntegrationUrlOverride) {
            return actionPagerdutyIntegrationUrlOverride(Output.of(actionPagerdutyIntegrationUrlOverride));
        }

        /**
         * @param actionPopulateLookup The state of the populate lookup action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookup(@Nullable Output actionPopulateLookup) {
            $.actionPopulateLookup = actionPopulateLookup;
            return this;
        }

        /**
         * @param actionPopulateLookup The state of the populate lookup action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookup(Boolean actionPopulateLookup) {
            return actionPopulateLookup(Output.of(actionPopulateLookup));
        }

        /**
         * @param actionPopulateLookupCommand The search command (or pipeline) which is responsible for executing the action.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupCommand(@Nullable Output actionPopulateLookupCommand) {
            $.actionPopulateLookupCommand = actionPopulateLookupCommand;
            return this;
        }

        /**
         * @param actionPopulateLookupCommand The search command (or pipeline) which is responsible for executing the action.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupCommand(String actionPopulateLookupCommand) {
            return actionPopulateLookupCommand(Output.of(actionPopulateLookupCommand));
        }

        /**
         * @param actionPopulateLookupDest Lookup name of path of the lookup to populate
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupDest(@Nullable Output actionPopulateLookupDest) {
            $.actionPopulateLookupDest = actionPopulateLookupDest;
            return this;
        }

        /**
         * @param actionPopulateLookupDest Lookup name of path of the lookup to populate
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupDest(String actionPopulateLookupDest) {
            return actionPopulateLookupDest(Output.of(actionPopulateLookupDest));
        }

        /**
         * @param actionPopulateLookupHostname Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms: hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupHostname(@Nullable Output actionPopulateLookupHostname) {
            $.actionPopulateLookupHostname = actionPopulateLookupHostname;
            return this;
        }

        /**
         * @param actionPopulateLookupHostname Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms: hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupHostname(String actionPopulateLookupHostname) {
            return actionPopulateLookupHostname(Output.of(actionPopulateLookupHostname));
        }

        /**
         * @param actionPopulateLookupMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupMaxResults(@Nullable Output actionPopulateLookupMaxResults) {
            $.actionPopulateLookupMaxResults = actionPopulateLookupMaxResults;
            return this;
        }

        /**
         * @param actionPopulateLookupMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupMaxResults(Integer actionPopulateLookupMaxResults) {
            return actionPopulateLookupMaxResults(Output.of(actionPopulateLookupMaxResults));
        }

        /**
         * @param actionPopulateLookupMaxTime Valid values are: Integer[m|s|h|d]Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 5m.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupMaxTime(@Nullable Output actionPopulateLookupMaxTime) {
            $.actionPopulateLookupMaxTime = actionPopulateLookupMaxTime;
            return this;
        }

        /**
         * @param actionPopulateLookupMaxTime Valid values are: Integer[m|s|h|d]Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 5m.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupMaxTime(Integer actionPopulateLookupMaxTime) {
            return actionPopulateLookupMaxTime(Output.of(actionPopulateLookupMaxTime));
        }

        /**
         * @param actionPopulateLookupTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupTrackAlert(@Nullable Output actionPopulateLookupTrackAlert) {
            $.actionPopulateLookupTrackAlert = actionPopulateLookupTrackAlert;
            return this;
        }

        /**
         * @param actionPopulateLookupTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupTrackAlert(Boolean actionPopulateLookupTrackAlert) {
            return actionPopulateLookupTrackAlert(Output.of(actionPopulateLookupTrackAlert));
        }

        /**
         * @param actionPopulateLookupTtl Valid values are Integer[p]Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, then this specifies the number of scheduled periods. Defaults to 10p.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupTtl(@Nullable Output actionPopulateLookupTtl) {
            $.actionPopulateLookupTtl = actionPopulateLookupTtl;
            return this;
        }

        /**
         * @param actionPopulateLookupTtl Valid values are Integer[p]Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, then this specifies the number of scheduled periods. Defaults to 10p.
         * 
         * @return builder
         * 
         */
        public Builder actionPopulateLookupTtl(String actionPopulateLookupTtl) {
            return actionPopulateLookupTtl(Output.of(actionPopulateLookupTtl));
        }

        /**
         * @param actionRss The state of the rss action. Read-only attribute. Value ignored on POST.Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionRss(@Nullable Output actionRss) {
            $.actionRss = actionRss;
            return this;
        }

        /**
         * @param actionRss The state of the rss action. Read-only attribute. Value ignored on POST.Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionRss(Boolean actionRss) {
            return actionRss(Output.of(actionRss));
        }

        /**
         * @param actionRssCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionRssCommand(@Nullable Output actionRssCommand) {
            $.actionRssCommand = actionRssCommand;
            return this;
        }

        /**
         * @param actionRssCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionRssCommand(String actionRssCommand) {
            return actionRssCommand(Output.of(actionRssCommand));
        }

        /**
         * @param actionRssHostname Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionRssHostname(@Nullable Output actionRssHostname) {
            $.actionRssHostname = actionRssHostname;
            return this;
        }

        /**
         * @param actionRssHostname Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionRssHostname(String actionRssHostname) {
            return actionRssHostname(Output.of(actionRssHostname));
        }

        /**
         * @param actionRssMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionRssMaxResults(@Nullable Output actionRssMaxResults) {
            $.actionRssMaxResults = actionRssMaxResults;
            return this;
        }

        /**
         * @param actionRssMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionRssMaxResults(Integer actionRssMaxResults) {
            return actionRssMaxResults(Output.of(actionRssMaxResults));
        }

        /**
         * @param actionRssMaxTime Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
         * 
         * @return builder
         * 
         */
        public Builder actionRssMaxTime(@Nullable Output actionRssMaxTime) {
            $.actionRssMaxTime = actionRssMaxTime;
            return this;
        }

        /**
         * @param actionRssMaxTime Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
         * 
         * @return builder
         * 
         */
        public Builder actionRssMaxTime(Integer actionRssMaxTime) {
            return actionRssMaxTime(Output.of(actionRssMaxTime));
        }

        /**
         * @param actionRssTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionRssTrackAlert(@Nullable Output actionRssTrackAlert) {
            $.actionRssTrackAlert = actionRssTrackAlert;
            return this;
        }

        /**
         * @param actionRssTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionRssTrackAlert(Boolean actionRssTrackAlert) {
            return actionRssTrackAlert(Output.of(actionRssTrackAlert));
        }

        /**
         * @param actionRssTtl Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
         * 
         * @return builder
         * 
         */
        public Builder actionRssTtl(@Nullable Output actionRssTtl) {
            $.actionRssTtl = actionRssTtl;
            return this;
        }

        /**
         * @param actionRssTtl Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
         * 
         * @return builder
         * 
         */
        public Builder actionRssTtl(String actionRssTtl) {
            return actionRssTtl(Output.of(actionRssTtl));
        }

        /**
         * @param actionScript The state of the script action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionScript(@Nullable Output actionScript) {
            $.actionScript = actionScript;
            return this;
        }

        /**
         * @param actionScript The state of the script action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionScript(Boolean actionScript) {
            return actionScript(Output.of(actionScript));
        }

        /**
         * @param actionScriptCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptCommand(@Nullable Output actionScriptCommand) {
            $.actionScriptCommand = actionScriptCommand;
            return this;
        }

        /**
         * @param actionScriptCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptCommand(String actionScriptCommand) {
            return actionScriptCommand(Output.of(actionScriptCommand));
        }

        /**
         * @param actionScriptFilename File name of the script to call. Required if script action is enabled
         * 
         * @return builder
         * 
         */
        public Builder actionScriptFilename(@Nullable Output actionScriptFilename) {
            $.actionScriptFilename = actionScriptFilename;
            return this;
        }

        /**
         * @param actionScriptFilename File name of the script to call. Required if script action is enabled
         * 
         * @return builder
         * 
         */
        public Builder actionScriptFilename(String actionScriptFilename) {
            return actionScriptFilename(Output.of(actionScriptFilename));
        }

        /**
         * @param actionScriptHostname Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionScriptHostname(@Nullable Output actionScriptHostname) {
            $.actionScriptHostname = actionScriptHostname;
            return this;
        }

        /**
         * @param actionScriptHostname Sets the hostname used in the web link (url) sent in alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)\n\nprotocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionScriptHostname(String actionScriptHostname) {
            return actionScriptHostname(Output.of(actionScriptHostname));
        }

        /**
         * @param actionScriptMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptMaxResults(@Nullable Output actionScriptMaxResults) {
            $.actionScriptMaxResults = actionScriptMaxResults;
            return this;
        }

        /**
         * @param actionScriptMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptMaxResults(Integer actionScriptMaxResults) {
            return actionScriptMaxResults(Output.of(actionScriptMaxResults));
        }

        /**
         * @param actionScriptMaxTime Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptMaxTime(@Nullable Output actionScriptMaxTime) {
            $.actionScriptMaxTime = actionScriptMaxTime;
            return this;
        }

        /**
         * @param actionScriptMaxTime Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptMaxTime(Integer actionScriptMaxTime) {
            return actionScriptMaxTime(Output.of(actionScriptMaxTime));
        }

        /**
         * @param actionScriptTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptTrackAlert(@Nullable Output actionScriptTrackAlert) {
            $.actionScriptTrackAlert = actionScriptTrackAlert;
            return this;
        }

        /**
         * @param actionScriptTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionScriptTrackAlert(Boolean actionScriptTrackAlert) {
            return actionScriptTrackAlert(Output.of(actionScriptTrackAlert));
        }

        /**
         * @param actionScriptTtl Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
         * 
         * @return builder
         * 
         */
        public Builder actionScriptTtl(@Nullable Output actionScriptTtl) {
            $.actionScriptTtl = actionScriptTtl;
            return this;
        }

        /**
         * @param actionScriptTtl Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
         * 
         * @return builder
         * 
         */
        public Builder actionScriptTtl(String actionScriptTtl) {
            return actionScriptTtl(Output.of(actionScriptTtl));
        }

        /**
         * @param actionSlackParamAttachment Include a message attachment. Valid values are message, none, or alert_link
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamAttachment(@Nullable Output actionSlackParamAttachment) {
            $.actionSlackParamAttachment = actionSlackParamAttachment;
            return this;
        }

        /**
         * @param actionSlackParamAttachment Include a message attachment. Valid values are message, none, or alert_link
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamAttachment(String actionSlackParamAttachment) {
            return actionSlackParamAttachment(Output.of(actionSlackParamAttachment));
        }

        /**
         * @param actionSlackParamChannel Slack channel to send the message to (Should start with # or @)
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamChannel(@Nullable Output actionSlackParamChannel) {
            $.actionSlackParamChannel = actionSlackParamChannel;
            return this;
        }

        /**
         * @param actionSlackParamChannel Slack channel to send the message to (Should start with # or @)
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamChannel(String actionSlackParamChannel) {
            return actionSlackParamChannel(Output.of(actionSlackParamChannel));
        }

        /**
         * @param actionSlackParamFields Show one or more fields from the search results below your Slack message. Comma-separated list of field names. Allows wildcards. eg. index,source*
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamFields(@Nullable Output actionSlackParamFields) {
            $.actionSlackParamFields = actionSlackParamFields;
            return this;
        }

        /**
         * @param actionSlackParamFields Show one or more fields from the search results below your Slack message. Comma-separated list of field names. Allows wildcards. eg. index,source*
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamFields(String actionSlackParamFields) {
            return actionSlackParamFields(Output.of(actionSlackParamFields));
        }

        /**
         * @param actionSlackParamMessage Enter the chat message to send to the Slack channel. The message can include tokens that insert text based on the results of the search.
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamMessage(@Nullable Output actionSlackParamMessage) {
            $.actionSlackParamMessage = actionSlackParamMessage;
            return this;
        }

        /**
         * @param actionSlackParamMessage Enter the chat message to send to the Slack channel. The message can include tokens that insert text based on the results of the search.
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamMessage(String actionSlackParamMessage) {
            return actionSlackParamMessage(Output.of(actionSlackParamMessage));
        }

        /**
         * @param actionSlackParamWebhookUrlOverride You can override the Slack webhook URL here if you need to send the alert message to a different Slack team
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamWebhookUrlOverride(@Nullable Output actionSlackParamWebhookUrlOverride) {
            $.actionSlackParamWebhookUrlOverride = actionSlackParamWebhookUrlOverride;
            return this;
        }

        /**
         * @param actionSlackParamWebhookUrlOverride You can override the Slack webhook URL here if you need to send the alert message to a different Slack team
         * 
         * @return builder
         * 
         */
        public Builder actionSlackParamWebhookUrlOverride(String actionSlackParamWebhookUrlOverride) {
            return actionSlackParamWebhookUrlOverride(Output.of(actionSlackParamWebhookUrlOverride));
        }

        /**
         * @param actionSnowEventParamAccount Account(s) for which the event is/ are to be created across ServiceNow instance(s).
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamAccount(@Nullable Output actionSnowEventParamAccount) {
            $.actionSnowEventParamAccount = actionSnowEventParamAccount;
            return this;
        }

        /**
         * @param actionSnowEventParamAccount Account(s) for which the event is/ are to be created across ServiceNow instance(s).
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamAccount(String actionSnowEventParamAccount) {
            return actionSnowEventParamAccount(Output.of(actionSnowEventParamAccount));
        }

        /**
         * @param actionSnowEventParamAdditionalInfo You can pass additional information that might be of use to the user. This field can also be used to supply the URL of
         * your Splunk search head. When you use the snow_event.py alert-triggered script, the Splunk platform uses the URL to
         * create a deep link that allows a ServiceNow user to navigate back to this Splunk platform search. You can find the
         * resulting full URL for navigation from ServiceNow to the Splunk platform search by clicking Splunk Drilldown in the
         * event page in ServiceNow. See an example below. Note that if you create events using the commands snowevent or
         * snoweventstream, you must supply the URL in this field.You can pass the URL of Splunk as url=<value>. You can also pass
         * other fields and their values by || separated key-value format. For example, url=<value>||k1=v1||k2=v2||....
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamAdditionalInfo(@Nullable Output actionSnowEventParamAdditionalInfo) {
            $.actionSnowEventParamAdditionalInfo = actionSnowEventParamAdditionalInfo;
            return this;
        }

        /**
         * @param actionSnowEventParamAdditionalInfo You can pass additional information that might be of use to the user. This field can also be used to supply the URL of
         * your Splunk search head. When you use the snow_event.py alert-triggered script, the Splunk platform uses the URL to
         * create a deep link that allows a ServiceNow user to navigate back to this Splunk platform search. You can find the
         * resulting full URL for navigation from ServiceNow to the Splunk platform search by clicking Splunk Drilldown in the
         * event page in ServiceNow. See an example below. Note that if you create events using the commands snowevent or
         * snoweventstream, you must supply the URL in this field.You can pass the URL of Splunk as url=<value>. You can also pass
         * other fields and their values by || separated key-value format. For example, url=<value>||k1=v1||k2=v2||....
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamAdditionalInfo(String actionSnowEventParamAdditionalInfo) {
            return actionSnowEventParamAdditionalInfo(Output.of(actionSnowEventParamAdditionalInfo));
        }

        /**
         * @param actionSnowEventParamCiIdentifier String that represents a configuration item in your network. You can pass value as || separated key-value format. For
         * example, k1=v1||k2=v2.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamCiIdentifier(@Nullable Output actionSnowEventParamCiIdentifier) {
            $.actionSnowEventParamCiIdentifier = actionSnowEventParamCiIdentifier;
            return this;
        }

        /**
         * @param actionSnowEventParamCiIdentifier String that represents a configuration item in your network. You can pass value as || separated key-value format. For
         * example, k1=v1||k2=v2.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamCiIdentifier(String actionSnowEventParamCiIdentifier) {
            return actionSnowEventParamCiIdentifier(Output.of(actionSnowEventParamCiIdentifier));
        }

        /**
         * @param actionSnowEventParamCustomFields The custom fields which are configured at the ServiceNow Instance. You can pass the custom fields and their values in
         * the || separated format. For example, custom_field1=value1||custom_field2=value2||...custom_fields used must be present
         * in the em_event table of ServiceNow.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamCustomFields(@Nullable Output actionSnowEventParamCustomFields) {
            $.actionSnowEventParamCustomFields = actionSnowEventParamCustomFields;
            return this;
        }

        /**
         * @param actionSnowEventParamCustomFields The custom fields which are configured at the ServiceNow Instance. You can pass the custom fields and their values in
         * the || separated format. For example, custom_field1=value1||custom_field2=value2||...custom_fields used must be present
         * in the em_event table of ServiceNow.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamCustomFields(String actionSnowEventParamCustomFields) {
            return actionSnowEventParamCustomFields(Output.of(actionSnowEventParamCustomFields));
        }

        /**
         * @param actionSnowEventParamDescription A brief description of the event.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamDescription(@Nullable Output actionSnowEventParamDescription) {
            $.actionSnowEventParamDescription = actionSnowEventParamDescription;
            return this;
        }

        /**
         * @param actionSnowEventParamDescription A brief description of the event.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamDescription(String actionSnowEventParamDescription) {
            return actionSnowEventParamDescription(Output.of(actionSnowEventParamDescription));
        }

        /**
         * @param actionSnowEventParamNode The node, formatted to follow your organization's ITIL standards and mapping. If the node value matches a CI with the
         * same host name, the event is automatically assigned to the matching CI.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamNode(@Nullable Output actionSnowEventParamNode) {
            $.actionSnowEventParamNode = actionSnowEventParamNode;
            return this;
        }

        /**
         * @param actionSnowEventParamNode The node, formatted to follow your organization's ITIL standards and mapping. If the node value matches a CI with the
         * same host name, the event is automatically assigned to the matching CI.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamNode(String actionSnowEventParamNode) {
            return actionSnowEventParamNode(Output.of(actionSnowEventParamNode));
        }

        /**
         * @param actionSnowEventParamResource The resource, formatted to follow your organization's ITIL standards and mapping. For example, resource='CPU'.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamResource(@Nullable Output actionSnowEventParamResource) {
            $.actionSnowEventParamResource = actionSnowEventParamResource;
            return this;
        }

        /**
         * @param actionSnowEventParamResource The resource, formatted to follow your organization's ITIL standards and mapping. For example, resource='CPU'.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamResource(String actionSnowEventParamResource) {
            return actionSnowEventParamResource(Output.of(actionSnowEventParamResource));
        }

        /**
         * @param actionSnowEventParamSeverity The severity associated with the event. 0 - Clear 1 - Critical 2 - Major 3 - Minor 4 - Warning
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamSeverity(@Nullable Output actionSnowEventParamSeverity) {
            $.actionSnowEventParamSeverity = actionSnowEventParamSeverity;
            return this;
        }

        /**
         * @param actionSnowEventParamSeverity The severity associated with the event. 0 - Clear 1 - Critical 2 - Major 3 - Minor 4 - Warning
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamSeverity(Integer actionSnowEventParamSeverity) {
            return actionSnowEventParamSeverity(Output.of(actionSnowEventParamSeverity));
        }

        /**
         * @param actionSnowEventParamType The type, formatted to follow your organization's ITIL standards and mapping. For example, type='Virtual Machine'.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamType(@Nullable Output actionSnowEventParamType) {
            $.actionSnowEventParamType = actionSnowEventParamType;
            return this;
        }

        /**
         * @param actionSnowEventParamType The type, formatted to follow your organization's ITIL standards and mapping. For example, type='Virtual Machine'.
         * 
         * @return builder
         * 
         */
        public Builder actionSnowEventParamType(String actionSnowEventParamType) {
            return actionSnowEventParamType(Output.of(actionSnowEventParamType));
        }

        /**
         * @param actionSummaryIndex The state of the summary index action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndex(@Nullable Output actionSummaryIndex) {
            $.actionSummaryIndex = actionSummaryIndex;
            return this;
        }

        /**
         * @param actionSummaryIndex The state of the summary index action. Read-only attribute. Value ignored on POST. Use actions to specify a list of enabled actions. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndex(Boolean actionSummaryIndex) {
            return actionSummaryIndex(Output.of(actionSummaryIndex));
        }

        /**
         * @param actionSummaryIndexCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexCommand(@Nullable Output actionSummaryIndexCommand) {
            $.actionSummaryIndexCommand = actionSummaryIndexCommand;
            return this;
        }

        /**
         * @param actionSummaryIndexCommand The search command (or pipeline) which is responsible for executing the action.Generally the command is a template search pipeline which is realized with values from the saved search. To reference saved search field values wrap them in $, for example to reference the savedsearch name use $name$, to reference the search use $search$.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexCommand(String actionSummaryIndexCommand) {
            return actionSummaryIndexCommand(Output.of(actionSummaryIndexCommand));
        }

        /**
         * @param actionSummaryIndexHostname Sets the hostname used in the web link (url) sent in summary-index alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)protocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexHostname(@Nullable Output actionSummaryIndexHostname) {
            $.actionSummaryIndexHostname = actionSummaryIndexHostname;
            return this;
        }

        /**
         * @param actionSummaryIndexHostname Sets the hostname used in the web link (url) sent in summary-index alert actions.This value accepts two forms:hostname (for example, splunkserver, splunkserver.example.com)protocol://hostname:port (for example, http://splunkserver:8000, https://splunkserver.example.com:443)
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexHostname(String actionSummaryIndexHostname) {
            return actionSummaryIndexHostname(Output.of(actionSummaryIndexHostname));
        }

        /**
         * @param actionSummaryIndexInline Determines whether to execute the summary indexing action as part of the scheduled search.NOTE: This option is considered only if the summary index action is enabled and is always executed (in other words, if counttype = always).Defaults to true
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexInline(@Nullable Output actionSummaryIndexInline) {
            $.actionSummaryIndexInline = actionSummaryIndexInline;
            return this;
        }

        /**
         * @param actionSummaryIndexInline Determines whether to execute the summary indexing action as part of the scheduled search.NOTE: This option is considered only if the summary index action is enabled and is always executed (in other words, if counttype = always).Defaults to true
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexInline(Boolean actionSummaryIndexInline) {
            return actionSummaryIndexInline(Output.of(actionSummaryIndexInline));
        }

        /**
         * @param actionSummaryIndexMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexMaxResults(@Nullable Output actionSummaryIndexMaxResults) {
            $.actionSummaryIndexMaxResults = actionSummaryIndexMaxResults;
            return this;
        }

        /**
         * @param actionSummaryIndexMaxResults Sets the maximum number of search results sent using alerts. Defaults to 100.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexMaxResults(Integer actionSummaryIndexMaxResults) {
            return actionSummaryIndexMaxResults(Output.of(actionSummaryIndexMaxResults));
        }

        /**
         * @param actionSummaryIndexMaxTime Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexMaxTime(@Nullable Output actionSummaryIndexMaxTime) {
            $.actionSummaryIndexMaxTime = actionSummaryIndexMaxTime;
            return this;
        }

        /**
         * @param actionSummaryIndexMaxTime Valid values are Integer[m|s|h|d].Sets the maximum amount of time the execution of an action takes before the action is aborted. Defaults to 1m.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexMaxTime(Integer actionSummaryIndexMaxTime) {
            return actionSummaryIndexMaxTime(Output.of(actionSummaryIndexMaxTime));
        }

        /**
         * @param actionSummaryIndexName Specifies the name of the summary index where the results of the scheduled search are saved.Defaults to summary.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexName(@Nullable Output actionSummaryIndexName) {
            $.actionSummaryIndexName = actionSummaryIndexName;
            return this;
        }

        /**
         * @param actionSummaryIndexName Specifies the name of the summary index where the results of the scheduled search are saved.Defaults to summary.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexName(String actionSummaryIndexName) {
            return actionSummaryIndexName(Output.of(actionSummaryIndexName));
        }

        /**
         * @param actionSummaryIndexTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexTrackAlert(@Nullable Output actionSummaryIndexTrackAlert) {
            $.actionSummaryIndexTrackAlert = actionSummaryIndexTrackAlert;
            return this;
        }

        /**
         * @param actionSummaryIndexTrackAlert Indicates whether the execution of this action signifies a trackable alert.
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexTrackAlert(Boolean actionSummaryIndexTrackAlert) {
            return actionSummaryIndexTrackAlert(Output.of(actionSummaryIndexTrackAlert));
        }

        /**
         * @param actionSummaryIndexTtl Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexTtl(@Nullable Output actionSummaryIndexTtl) {
            $.actionSummaryIndexTtl = actionSummaryIndexTtl;
            return this;
        }

        /**
         * @param actionSummaryIndexTtl Valid values are: Integer[p] Specifies the minimum time-to-live in seconds of the search artifacts if this action is triggered. If p follows Integer, specifies the number of scheduled periods. Defaults to 86400 (24 hours).
         * 
         * @return builder
         * 
         */
        public Builder actionSummaryIndexTtl(String actionSummaryIndexTtl) {
            return actionSummaryIndexTtl(Output.of(actionSummaryIndexTtl));
        }

        /**
         * @param actionWebhookParamUrl URL to send the HTTP POST request to. Must be accessible from the Splunk server
         * 
         * @return builder
         * 
         */
        public Builder actionWebhookParamUrl(@Nullable Output actionWebhookParamUrl) {
            $.actionWebhookParamUrl = actionWebhookParamUrl;
            return this;
        }

        /**
         * @param actionWebhookParamUrl URL to send the HTTP POST request to. Must be accessible from the Splunk server
         * 
         * @return builder
         * 
         */
        public Builder actionWebhookParamUrl(String actionWebhookParamUrl) {
            return actionWebhookParamUrl(Output.of(actionWebhookParamUrl));
        }

        /**
         * @param actions A comma-separated list of actions to enable. For example: rss,email
         * 
         * @return builder
         * 
         */
        public Builder actions(@Nullable Output actions) {
            $.actions = actions;
            return this;
        }

        /**
         * @param actions A comma-separated list of actions to enable. For example: rss,email
         * 
         * @return builder
         * 
         */
        public Builder actions(String actions) {
            return actions(Output.of(actions));
        }

        /**
         * @param alertComparator One of the following strings: greater than, less than, equal to, rises by, drops by, rises by perc, drops by percUsed with alert_threshold to trigger alert actions.
         * 
         * @return builder
         * 
         */
        public Builder alertComparator(@Nullable Output alertComparator) {
            $.alertComparator = alertComparator;
            return this;
        }

        /**
         * @param alertComparator One of the following strings: greater than, less than, equal to, rises by, drops by, rises by perc, drops by percUsed with alert_threshold to trigger alert actions.
         * 
         * @return builder
         * 
         */
        public Builder alertComparator(String alertComparator) {
            return alertComparator(Output.of(alertComparator));
        }

        /**
         * @param alertCondition Contains a conditional search that is evaluated against the results of the saved search. Defaults to an empty string.
         * 
         * @return builder
         * 
         */
        public Builder alertCondition(@Nullable Output alertCondition) {
            $.alertCondition = alertCondition;
            return this;
        }

        /**
         * @param alertCondition Contains a conditional search that is evaluated against the results of the saved search. Defaults to an empty string.
         * 
         * @return builder
         * 
         */
        public Builder alertCondition(String alertCondition) {
            return alertCondition(Output.of(alertCondition));
        }

        /**
         * @param alertDigestMode Specifies whether alert actions are applied to the entire result set or on each individual result.Defaults to 1 (true).
         * 
         * @return builder
         * 
         */
        public Builder alertDigestMode(@Nullable Output alertDigestMode) {
            $.alertDigestMode = alertDigestMode;
            return this;
        }

        /**
         * @param alertDigestMode Specifies whether alert actions are applied to the entire result set or on each individual result.Defaults to 1 (true).
         * 
         * @return builder
         * 
         */
        public Builder alertDigestMode(Boolean alertDigestMode) {
            return alertDigestMode(Output.of(alertDigestMode));
        }

        /**
         * @param alertExpires Valid values: [number][time-unit]Sets the period of time to show the alert in the dashboard. Defaults to 24h.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
         * 
         * @return builder
         * 
         */
        public Builder alertExpires(@Nullable Output alertExpires) {
            $.alertExpires = alertExpires;
            return this;
        }

        /**
         * @param alertExpires Valid values: [number][time-unit]Sets the period of time to show the alert in the dashboard. Defaults to 24h.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
         * 
         * @return builder
         * 
         */
        public Builder alertExpires(String alertExpires) {
            return alertExpires(Output.of(alertExpires));
        }

        /**
         * @param alertSeverity Valid values: (1 | 2 | 3 | 4 | 5 | 6) Sets the alert severity level.Valid values are:1 DEBUG 2 INFO 3 WARN 4 ERROR 5 SEVERE 6 FATAL Defaults to 3.
         * 
         * @return builder
         * 
         */
        public Builder alertSeverity(@Nullable Output alertSeverity) {
            $.alertSeverity = alertSeverity;
            return this;
        }

        /**
         * @param alertSeverity Valid values: (1 | 2 | 3 | 4 | 5 | 6) Sets the alert severity level.Valid values are:1 DEBUG 2 INFO 3 WARN 4 ERROR 5 SEVERE 6 FATAL Defaults to 3.
         * 
         * @return builder
         * 
         */
        public Builder alertSeverity(Integer alertSeverity) {
            return alertSeverity(Output.of(alertSeverity));
        }

        /**
         * @param alertSuppress Indicates whether alert suppression is enabled for this scheduled search.
         * 
         * @return builder
         * 
         */
        public Builder alertSuppress(@Nullable Output alertSuppress) {
            $.alertSuppress = alertSuppress;
            return this;
        }

        /**
         * @param alertSuppress Indicates whether alert suppression is enabled for this scheduled search.
         * 
         * @return builder
         * 
         */
        public Builder alertSuppress(Boolean alertSuppress) {
            return alertSuppress(Output.of(alertSuppress));
        }

        /**
         * @param alertSuppressFields Comma delimited list of fields to use for suppression when doing per result alerting. Required if suppression is turned on and per result alerting is enabled.
         * 
         * @return builder
         * 
         */
        public Builder alertSuppressFields(@Nullable Output alertSuppressFields) {
            $.alertSuppressFields = alertSuppressFields;
            return this;
        }

        /**
         * @param alertSuppressFields Comma delimited list of fields to use for suppression when doing per result alerting. Required if suppression is turned on and per result alerting is enabled.
         * 
         * @return builder
         * 
         */
        public Builder alertSuppressFields(String alertSuppressFields) {
            return alertSuppressFields(Output.of(alertSuppressFields));
        }

        /**
         * @param alertSuppressPeriod Valid values: [number][time-unit] Specifies the suppresion period. Only valid if alert.supress is enabled.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
         * 
         * @return builder
         * 
         */
        public Builder alertSuppressPeriod(@Nullable Output alertSuppressPeriod) {
            $.alertSuppressPeriod = alertSuppressPeriod;
            return this;
        }

        /**
         * @param alertSuppressPeriod Valid values: [number][time-unit] Specifies the suppresion period. Only valid if alert.supress is enabled.Use [number][time-unit] to specify a time. For example: 60 = 60 seconds, 1m = 1 minute, 1h = 60 minutes = 1 hour.
         * 
         * @return builder
         * 
         */
        public Builder alertSuppressPeriod(String alertSuppressPeriod) {
            return alertSuppressPeriod(Output.of(alertSuppressPeriod));
        }

        /**
         * @param alertThreshold Valid values are: Integer[%]Specifies the value to compare (see alert_comparator) before triggering the alert actions. If expressed as a percentage, indicates value to use when alert_comparator is set to rises by perc or drops by perc.
         * 
         * @return builder
         * 
         */
        public Builder alertThreshold(@Nullable Output alertThreshold) {
            $.alertThreshold = alertThreshold;
            return this;
        }

        /**
         * @param alertThreshold Valid values are: Integer[%]Specifies the value to compare (see alert_comparator) before triggering the alert actions. If expressed as a percentage, indicates value to use when alert_comparator is set to rises by perc or drops by perc.
         * 
         * @return builder
         * 
         */
        public Builder alertThreshold(String alertThreshold) {
            return alertThreshold(Output.of(alertThreshold));
        }

        /**
         * @param alertTrack Valid values: (true | false | auto) Specifies whether to track the actions triggered by this scheduled search.auto - determine whether to track or not based on the tracking setting of each action, do not track scheduled searches that always trigger actions. Default value true - force alert tracking.false - disable alert tracking for this search.
         * 
         * @return builder
         * 
         */
        public Builder alertTrack(@Nullable Output alertTrack) {
            $.alertTrack = alertTrack;
            return this;
        }

        /**
         * @param alertTrack Valid values: (true | false | auto) Specifies whether to track the actions triggered by this scheduled search.auto - determine whether to track or not based on the tracking setting of each action, do not track scheduled searches that always trigger actions. Default value true - force alert tracking.false - disable alert tracking for this search.
         * 
         * @return builder
         * 
         */
        public Builder alertTrack(Boolean alertTrack) {
            return alertTrack(Output.of(alertTrack));
        }

        /**
         * @param alertType What to base the alert on, overriden by alert_condition if it is specified. Valid values are: always, custom, number of events, number of hosts, number of sources.
         * 
         * @return builder
         * 
         */
        public Builder alertType(@Nullable Output alertType) {
            $.alertType = alertType;
            return this;
        }

        /**
         * @param alertType What to base the alert on, overriden by alert_condition if it is specified. Valid values are: always, custom, number of events, number of hosts, number of sources.
         * 
         * @return builder
         * 
         */
        public Builder alertType(String alertType) {
            return alertType(Output.of(alertType));
        }

        /**
         * @param allowSkew Allows the search scheduler to distribute scheduled searches randomly and more evenly over their specified search periods.
         * 
         * @return builder
         * 
         */
        public Builder allowSkew(@Nullable Output allowSkew) {
            $.allowSkew = allowSkew;
            return this;
        }

        /**
         * @param allowSkew Allows the search scheduler to distribute scheduled searches randomly and more evenly over their specified search periods.
         * 
         * @return builder
         * 
         */
        public Builder allowSkew(String allowSkew) {
            return allowSkew(Output.of(allowSkew));
        }

        /**
         * @param autoSummarize Indicates whether the scheduler should ensure that the data for this search is automatically summarized. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarize(@Nullable Output autoSummarize) {
            $.autoSummarize = autoSummarize;
            return this;
        }

        /**
         * @param autoSummarize Indicates whether the scheduler should ensure that the data for this search is automatically summarized. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarize(Boolean autoSummarize) {
            return autoSummarize(Output.of(autoSummarize));
        }

        /**
         * @param autoSummarizeCommand An auto summarization template for this search. See auto summarization options in savedsearches.conf for more details.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeCommand(@Nullable Output autoSummarizeCommand) {
            $.autoSummarizeCommand = autoSummarizeCommand;
            return this;
        }

        /**
         * @param autoSummarizeCommand An auto summarization template for this search. See auto summarization options in savedsearches.conf for more details.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeCommand(String autoSummarizeCommand) {
            return autoSummarizeCommand(Output.of(autoSummarizeCommand));
        }

        /**
         * @param autoSummarizeCronSchedule Cron schedule that probes and generates the summaries for this saved search.The default value is *{@literal /}10 * * * * and corresponds to \`every ten hours\`.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeCronSchedule(@Nullable Output autoSummarizeCronSchedule) {
            $.autoSummarizeCronSchedule = autoSummarizeCronSchedule;
            return this;
        }

        /**
         * @param autoSummarizeCronSchedule Cron schedule that probes and generates the summaries for this saved search.The default value is *{@literal /}10 * * * * and corresponds to \`every ten hours\`.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeCronSchedule(String autoSummarizeCronSchedule) {
            return autoSummarizeCronSchedule(Output.of(autoSummarizeCronSchedule));
        }

        /**
         * @param autoSummarizeDispatchEarliestTime A time string that specifies the earliest time for summarizing this search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchEarliestTime(@Nullable Output autoSummarizeDispatchEarliestTime) {
            $.autoSummarizeDispatchEarliestTime = autoSummarizeDispatchEarliestTime;
            return this;
        }

        /**
         * @param autoSummarizeDispatchEarliestTime A time string that specifies the earliest time for summarizing this search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchEarliestTime(String autoSummarizeDispatchEarliestTime) {
            return autoSummarizeDispatchEarliestTime(Output.of(autoSummarizeDispatchEarliestTime));
        }

        /**
         * @param autoSummarizeDispatchLatestTime A time string that specifies the latest time for summarizing this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchLatestTime(@Nullable Output autoSummarizeDispatchLatestTime) {
            $.autoSummarizeDispatchLatestTime = autoSummarizeDispatchLatestTime;
            return this;
        }

        /**
         * @param autoSummarizeDispatchLatestTime A time string that specifies the latest time for summarizing this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchLatestTime(String autoSummarizeDispatchLatestTime) {
            return autoSummarizeDispatchLatestTime(Output.of(autoSummarizeDispatchLatestTime));
        }

        /**
         * @param autoSummarizeDispatchTimeFormat Defines the time format that Splunk software uses to specify the earliest and latest time. Defaults to %FT%T.%Q%:z
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchTimeFormat(@Nullable Output autoSummarizeDispatchTimeFormat) {
            $.autoSummarizeDispatchTimeFormat = autoSummarizeDispatchTimeFormat;
            return this;
        }

        /**
         * @param autoSummarizeDispatchTimeFormat Defines the time format that Splunk software uses to specify the earliest and latest time. Defaults to %FT%T.%Q%:z
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchTimeFormat(String autoSummarizeDispatchTimeFormat) {
            return autoSummarizeDispatchTimeFormat(Output.of(autoSummarizeDispatchTimeFormat));
        }

        /**
         * @param autoSummarizeDispatchTtl Valid values: Integer[p]. Defaults to 60.Indicates the time to live (in seconds) for the artifacts of the summarization of the scheduled search.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchTtl(@Nullable Output autoSummarizeDispatchTtl) {
            $.autoSummarizeDispatchTtl = autoSummarizeDispatchTtl;
            return this;
        }

        /**
         * @param autoSummarizeDispatchTtl Valid values: Integer[p]. Defaults to 60.Indicates the time to live (in seconds) for the artifacts of the summarization of the scheduled search.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeDispatchTtl(String autoSummarizeDispatchTtl) {
            return autoSummarizeDispatchTtl(Output.of(autoSummarizeDispatchTtl));
        }

        /**
         * @param autoSummarizeMaxDisabledBuckets The maximum number of buckets with the suspended summarization before the summarization search is completely stopped, and the summarization of the search is suspended for auto_summarize.suspend_period. Defaults to 2.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxDisabledBuckets(@Nullable Output autoSummarizeMaxDisabledBuckets) {
            $.autoSummarizeMaxDisabledBuckets = autoSummarizeMaxDisabledBuckets;
            return this;
        }

        /**
         * @param autoSummarizeMaxDisabledBuckets The maximum number of buckets with the suspended summarization before the summarization search is completely stopped, and the summarization of the search is suspended for auto_summarize.suspend_period. Defaults to 2.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxDisabledBuckets(Integer autoSummarizeMaxDisabledBuckets) {
            return autoSummarizeMaxDisabledBuckets(Output.of(autoSummarizeMaxDisabledBuckets));
        }

        /**
         * @param autoSummarizeMaxSummaryRatio The maximum ratio of summary_size/bucket_size, which specifies when to stop summarization and deem it unhelpful for a bucket. Defaults to 0.1 Note: The test is only performed if the summary size is larger than auto_summarize.max_summary_size.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxSummaryRatio(@Nullable Output autoSummarizeMaxSummaryRatio) {
            $.autoSummarizeMaxSummaryRatio = autoSummarizeMaxSummaryRatio;
            return this;
        }

        /**
         * @param autoSummarizeMaxSummaryRatio The maximum ratio of summary_size/bucket_size, which specifies when to stop summarization and deem it unhelpful for a bucket. Defaults to 0.1 Note: The test is only performed if the summary size is larger than auto_summarize.max_summary_size.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxSummaryRatio(Double autoSummarizeMaxSummaryRatio) {
            return autoSummarizeMaxSummaryRatio(Output.of(autoSummarizeMaxSummaryRatio));
        }

        /**
         * @param autoSummarizeMaxSummarySize The minimum summary size, in bytes, before testing whether the summarization is helpful.The default value is 52428800 and is equivalent to 5MB.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxSummarySize(@Nullable Output autoSummarizeMaxSummarySize) {
            $.autoSummarizeMaxSummarySize = autoSummarizeMaxSummarySize;
            return this;
        }

        /**
         * @param autoSummarizeMaxSummarySize The minimum summary size, in bytes, before testing whether the summarization is helpful.The default value is 52428800 and is equivalent to 5MB.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxSummarySize(Integer autoSummarizeMaxSummarySize) {
            return autoSummarizeMaxSummarySize(Output.of(autoSummarizeMaxSummarySize));
        }

        /**
         * @param autoSummarizeMaxTime Maximum time (in seconds) that the summary search is allowed to run. Defaults to 3600.Note: This is an approximate time. The summary search stops at clean bucket boundaries.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxTime(@Nullable Output autoSummarizeMaxTime) {
            $.autoSummarizeMaxTime = autoSummarizeMaxTime;
            return this;
        }

        /**
         * @param autoSummarizeMaxTime Maximum time (in seconds) that the summary search is allowed to run. Defaults to 3600.Note: This is an approximate time. The summary search stops at clean bucket boundaries.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeMaxTime(Integer autoSummarizeMaxTime) {
            return autoSummarizeMaxTime(Output.of(autoSummarizeMaxTime));
        }

        /**
         * @param autoSummarizeSuspendPeriod Time specfier indicating when to suspend summarization of this search if the summarization is deemed unhelpful.Defaults to 24h.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeSuspendPeriod(@Nullable Output autoSummarizeSuspendPeriod) {
            $.autoSummarizeSuspendPeriod = autoSummarizeSuspendPeriod;
            return this;
        }

        /**
         * @param autoSummarizeSuspendPeriod Time specfier indicating when to suspend summarization of this search if the summarization is deemed unhelpful.Defaults to 24h.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeSuspendPeriod(String autoSummarizeSuspendPeriod) {
            return autoSummarizeSuspendPeriod(Output.of(autoSummarizeSuspendPeriod));
        }

        /**
         * @param autoSummarizeTimespan The list of time ranges that each summarized chunk should span. This comprises the list of available granularity levels for which summaries would be available. Specify a comma delimited list of time specifiers.For example a timechart over the last month whose granuality is at the day level should set this to 1d. If you need the same data summarized at the hour level for weekly charts, use: 1h,1d.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeTimespan(@Nullable Output autoSummarizeTimespan) {
            $.autoSummarizeTimespan = autoSummarizeTimespan;
            return this;
        }

        /**
         * @param autoSummarizeTimespan The list of time ranges that each summarized chunk should span. This comprises the list of available granularity levels for which summaries would be available. Specify a comma delimited list of time specifiers.For example a timechart over the last month whose granuality is at the day level should set this to 1d. If you need the same data summarized at the hour level for weekly charts, use: 1h,1d.
         * 
         * @return builder
         * 
         */
        public Builder autoSummarizeTimespan(String autoSummarizeTimespan) {
            return autoSummarizeTimespan(Output.of(autoSummarizeTimespan));
        }

        /**
         * @param cronSchedule Valid values: cron stringThe cron schedule to execute this search. For example: *{@literal /}5 * * * * causes the search to execute every 5 minutes.
         * 
         * @return builder
         * 
         */
        public Builder cronSchedule(@Nullable Output cronSchedule) {
            $.cronSchedule = cronSchedule;
            return this;
        }

        /**
         * @param cronSchedule Valid values: cron stringThe cron schedule to execute this search. For example: *{@literal /}5 * * * * causes the search to execute every 5 minutes.
         * 
         * @return builder
         * 
         */
        public Builder cronSchedule(String cronSchedule) {
            return cronSchedule(Output.of(cronSchedule));
        }

        /**
         * @param description Human-readable description of this saved search. Defaults to empty string.
         * 
         * @return builder
         * 
         */
        public Builder description(@Nullable Output description) {
            $.description = description;
            return this;
        }

        /**
         * @param description Human-readable description of this saved search. Defaults to empty string.
         * 
         * @return builder
         * 
         */
        public Builder description(String description) {
            return description(Output.of(description));
        }

        /**
         * @param disabled Indicates if the saved search is enabled. Defaults to 0.Disabled saved searches are not visible in Splunk Web.
         * 
         * @return builder
         * 
         */
        public Builder disabled(@Nullable Output disabled) {
            $.disabled = disabled;
            return this;
        }

        /**
         * @param disabled Indicates if the saved search is enabled. Defaults to 0.Disabled saved searches are not visible in Splunk Web.
         * 
         * @return builder
         * 
         */
        public Builder disabled(Boolean disabled) {
            return disabled(Output.of(disabled));
        }

        /**
         * @param dispatchBuckets The maximum number of timeline buckets. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder dispatchBuckets(@Nullable Output dispatchBuckets) {
            $.dispatchBuckets = dispatchBuckets;
            return this;
        }

        /**
         * @param dispatchBuckets The maximum number of timeline buckets. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder dispatchBuckets(Integer dispatchBuckets) {
            return dispatchBuckets(Output.of(dispatchBuckets));
        }

        /**
         * @param dispatchEarliestTime A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchEarliestTime(@Nullable Output dispatchEarliestTime) {
            $.dispatchEarliestTime = dispatchEarliestTime;
            return this;
        }

        /**
         * @param dispatchEarliestTime A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchEarliestTime(String dispatchEarliestTime) {
            return dispatchEarliestTime(Output.of(dispatchEarliestTime));
        }

        /**
         * @param dispatchIndexEarliest A time string that specifies the earliest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexEarliest(@Nullable Output dispatchIndexEarliest) {
            $.dispatchIndexEarliest = dispatchIndexEarliest;
            return this;
        }

        /**
         * @param dispatchIndexEarliest A time string that specifies the earliest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexEarliest(String dispatchIndexEarliest) {
            return dispatchIndexEarliest(Output.of(dispatchIndexEarliest));
        }

        /**
         * @param dispatchIndexLatest A time string that specifies the latest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexLatest(@Nullable Output dispatchIndexLatest) {
            $.dispatchIndexLatest = dispatchIndexLatest;
            return this;
        }

        /**
         * @param dispatchIndexLatest A time string that specifies the latest index time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexLatest(String dispatchIndexLatest) {
            return dispatchIndexLatest(Output.of(dispatchIndexLatest));
        }

        /**
         * @param dispatchIndexedRealtime A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexedRealtime(@Nullable Output dispatchIndexedRealtime) {
            $.dispatchIndexedRealtime = dispatchIndexedRealtime;
            return this;
        }

        /**
         * @param dispatchIndexedRealtime A time string that specifies the earliest time for this search. Can be a relative or absolute time. If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexedRealtime(Boolean dispatchIndexedRealtime) {
            return dispatchIndexedRealtime(Output.of(dispatchIndexedRealtime));
        }

        /**
         * @param dispatchIndexedRealtimeMinspan Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexedRealtimeMinspan(@Nullable Output dispatchIndexedRealtimeMinspan) {
            $.dispatchIndexedRealtimeMinspan = dispatchIndexedRealtimeMinspan;
            return this;
        }

        /**
         * @param dispatchIndexedRealtimeMinspan Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexedRealtimeMinspan(Integer dispatchIndexedRealtimeMinspan) {
            return dispatchIndexedRealtimeMinspan(Output.of(dispatchIndexedRealtimeMinspan));
        }

        /**
         * @param dispatchIndexedRealtimeOffset Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexedRealtimeOffset(@Nullable Output dispatchIndexedRealtimeOffset) {
            $.dispatchIndexedRealtimeOffset = dispatchIndexedRealtimeOffset;
            return this;
        }

        /**
         * @param dispatchIndexedRealtimeOffset Allows for a per-job override of the [search] indexed_realtime_disk_sync_delay setting in limits.conf.
         * 
         * @return builder
         * 
         */
        public Builder dispatchIndexedRealtimeOffset(Integer dispatchIndexedRealtimeOffset) {
            return dispatchIndexedRealtimeOffset(Output.of(dispatchIndexedRealtimeOffset));
        }

        /**
         * @param dispatchLatestTime A time string that specifies the latest time for this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchLatestTime(@Nullable Output dispatchLatestTime) {
            $.dispatchLatestTime = dispatchLatestTime;
            return this;
        }

        /**
         * @param dispatchLatestTime A time string that specifies the latest time for this saved search. Can be a relative or absolute time.If this value is an absolute time, use the dispatch.time_format to format the value.
         * 
         * @return builder
         * 
         */
        public Builder dispatchLatestTime(String dispatchLatestTime) {
            return dispatchLatestTime(Output.of(dispatchLatestTime));
        }

        /**
         * @param dispatchLookups Enables or disables the lookups for this search. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder dispatchLookups(@Nullable Output dispatchLookups) {
            $.dispatchLookups = dispatchLookups;
            return this;
        }

        /**
         * @param dispatchLookups Enables or disables the lookups for this search. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder dispatchLookups(Boolean dispatchLookups) {
            return dispatchLookups(Output.of(dispatchLookups));
        }

        /**
         * @param dispatchMaxCount The maximum number of results before finalizing the search. Defaults to 500000.
         * 
         * @return builder
         * 
         */
        public Builder dispatchMaxCount(@Nullable Output dispatchMaxCount) {
            $.dispatchMaxCount = dispatchMaxCount;
            return this;
        }

        /**
         * @param dispatchMaxCount The maximum number of results before finalizing the search. Defaults to 500000.
         * 
         * @return builder
         * 
         */
        public Builder dispatchMaxCount(Integer dispatchMaxCount) {
            return dispatchMaxCount(Output.of(dispatchMaxCount));
        }

        /**
         * @param dispatchMaxTime Indicates the maximum amount of time (in seconds) before finalizing the search. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder dispatchMaxTime(@Nullable Output dispatchMaxTime) {
            $.dispatchMaxTime = dispatchMaxTime;
            return this;
        }

        /**
         * @param dispatchMaxTime Indicates the maximum amount of time (in seconds) before finalizing the search. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder dispatchMaxTime(Integer dispatchMaxTime) {
            return dispatchMaxTime(Output.of(dispatchMaxTime));
        }

        /**
         * @param dispatchReduceFreq Specifies, in seconds, how frequently the MapReduce reduce phase runs on accumulated map values. Defaults to 10.
         * 
         * @return builder
         * 
         */
        public Builder dispatchReduceFreq(@Nullable Output dispatchReduceFreq) {
            $.dispatchReduceFreq = dispatchReduceFreq;
            return this;
        }

        /**
         * @param dispatchReduceFreq Specifies, in seconds, how frequently the MapReduce reduce phase runs on accumulated map values. Defaults to 10.
         * 
         * @return builder
         * 
         */
        public Builder dispatchReduceFreq(Integer dispatchReduceFreq) {
            return dispatchReduceFreq(Output.of(dispatchReduceFreq));
        }

        /**
         * @param dispatchRtBackfill Whether to back fill the real time window for this search. Parameter valid only if this is a real time search. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder dispatchRtBackfill(@Nullable Output dispatchRtBackfill) {
            $.dispatchRtBackfill = dispatchRtBackfill;
            return this;
        }

        /**
         * @param dispatchRtBackfill Whether to back fill the real time window for this search. Parameter valid only if this is a real time search. Defaults to 0.
         * 
         * @return builder
         * 
         */
        public Builder dispatchRtBackfill(Boolean dispatchRtBackfill) {
            return dispatchRtBackfill(Output.of(dispatchRtBackfill));
        }

        /**
         * @param dispatchRtMaximumSpan Allows for a per-job override of the [search] indexed_realtime_maximum_span setting in limits.conf.
         * 
         * @return builder
         * 
         */
        public Builder dispatchRtMaximumSpan(@Nullable Output dispatchRtMaximumSpan) {
            $.dispatchRtMaximumSpan = dispatchRtMaximumSpan;
            return this;
        }

        /**
         * @param dispatchRtMaximumSpan Allows for a per-job override of the [search] indexed_realtime_maximum_span setting in limits.conf.
         * 
         * @return builder
         * 
         */
        public Builder dispatchRtMaximumSpan(Integer dispatchRtMaximumSpan) {
            return dispatchRtMaximumSpan(Output.of(dispatchRtMaximumSpan));
        }

        /**
         * @param dispatchSpawnProcess Specifies whether a new search process spawns when this saved search is executed. Defaults to 1. Searches against indexes must run in a separate process.
         * 
         * @return builder
         * 
         */
        public Builder dispatchSpawnProcess(@Nullable Output dispatchSpawnProcess) {
            $.dispatchSpawnProcess = dispatchSpawnProcess;
            return this;
        }

        /**
         * @param dispatchSpawnProcess Specifies whether a new search process spawns when this saved search is executed. Defaults to 1. Searches against indexes must run in a separate process.
         * 
         * @return builder
         * 
         */
        public Builder dispatchSpawnProcess(Boolean dispatchSpawnProcess) {
            return dispatchSpawnProcess(Output.of(dispatchSpawnProcess));
        }

        /**
         * @param dispatchTimeFormat A time format string that defines the time format for specifying the earliest and latest time. Defaults to %FT%T.%Q%:z
         * 
         * @return builder
         * 
         */
        public Builder dispatchTimeFormat(@Nullable Output dispatchTimeFormat) {
            $.dispatchTimeFormat = dispatchTimeFormat;
            return this;
        }

        /**
         * @param dispatchTimeFormat A time format string that defines the time format for specifying the earliest and latest time. Defaults to %FT%T.%Q%:z
         * 
         * @return builder
         * 
         */
        public Builder dispatchTimeFormat(String dispatchTimeFormat) {
            return dispatchTimeFormat(Output.of(dispatchTimeFormat));
        }

        /**
         * @param dispatchTtl Valid values: Integer[p]. Defaults to 2p.Indicates the time to live (in seconds) for the artifacts of the scheduled search, if no actions are triggered.
         * 
         * @return builder
         * 
         */
        public Builder dispatchTtl(@Nullable Output dispatchTtl) {
            $.dispatchTtl = dispatchTtl;
            return this;
        }

        /**
         * @param dispatchTtl Valid values: Integer[p]. Defaults to 2p.Indicates the time to live (in seconds) for the artifacts of the scheduled search, if no actions are triggered.
         * 
         * @return builder
         * 
         */
        public Builder dispatchTtl(String dispatchTtl) {
            return dispatchTtl(Output.of(dispatchTtl));
        }

        /**
         * @param displayView Defines the default UI view name (not label) in which to load the results. Accessibility is subject to the user having sufficient permissions.
         * 
         * @return builder
         * 
         */
        public Builder displayView(@Nullable Output displayView) {
            $.displayView = displayView;
            return this;
        }

        /**
         * @param displayView Defines the default UI view name (not label) in which to load the results. Accessibility is subject to the user having sufficient permissions.
         * 
         * @return builder
         * 
         */
        public Builder displayView(String displayView) {
            return displayView(Output.of(displayView));
        }

        /**
         * @param isScheduled Whether this search is to be run on a schedule
         * 
         * @return builder
         * 
         */
        public Builder isScheduled(@Nullable Output isScheduled) {
            $.isScheduled = isScheduled;
            return this;
        }

        /**
         * @param isScheduled Whether this search is to be run on a schedule
         * 
         * @return builder
         * 
         */
        public Builder isScheduled(Boolean isScheduled) {
            return isScheduled(Output.of(isScheduled));
        }

        /**
         * @param isVisible Specifies whether this saved search should be listed in the visible saved search list. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder isVisible(@Nullable Output isVisible) {
            $.isVisible = isVisible;
            return this;
        }

        /**
         * @param isVisible Specifies whether this saved search should be listed in the visible saved search list. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder isVisible(Boolean isVisible) {
            return isVisible(Output.of(isVisible));
        }

        /**
         * @param maxConcurrent The maximum number of concurrent instances of this search the scheduler is allowed to run. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder maxConcurrent(@Nullable Output maxConcurrent) {
            $.maxConcurrent = maxConcurrent;
            return this;
        }

        /**
         * @param maxConcurrent The maximum number of concurrent instances of this search the scheduler is allowed to run. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder maxConcurrent(Integer maxConcurrent) {
            return maxConcurrent(Output.of(maxConcurrent));
        }

        /**
         * @param name A name for the search.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name A name for the search.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param realtimeSchedule Defaults to 1. Controls the way the scheduler computes the next execution time of a scheduled search. If this value is set to 1, the scheduler bases its determination of the next scheduled search execution time on the current time. If this value is set to 0, the scheduler bases its determination of the next scheduled search on the last search execution time. This is called continuous scheduling. If set to 0, the scheduler never skips scheduled execution periods. However, the execution of the saved search might fall behind depending on the scheduler load. Use continuous scheduling whenever you enable the summary index option.
         * 
         * @return builder
         * 
         */
        public Builder realtimeSchedule(@Nullable Output realtimeSchedule) {
            $.realtimeSchedule = realtimeSchedule;
            return this;
        }

        /**
         * @param realtimeSchedule Defaults to 1. Controls the way the scheduler computes the next execution time of a scheduled search. If this value is set to 1, the scheduler bases its determination of the next scheduled search execution time on the current time. If this value is set to 0, the scheduler bases its determination of the next scheduled search on the last search execution time. This is called continuous scheduling. If set to 0, the scheduler never skips scheduled execution periods. However, the execution of the saved search might fall behind depending on the scheduler load. Use continuous scheduling whenever you enable the summary index option.
         * 
         * @return builder
         * 
         */
        public Builder realtimeSchedule(Boolean realtimeSchedule) {
            return realtimeSchedule(Output.of(realtimeSchedule));
        }

        /**
         * @param requestUiDispatchApp Specifies a field used by Splunk Web to denote the app this search should be dispatched in.
         * 
         * @return builder
         * 
         */
        public Builder requestUiDispatchApp(@Nullable Output requestUiDispatchApp) {
            $.requestUiDispatchApp = requestUiDispatchApp;
            return this;
        }

        /**
         * @param requestUiDispatchApp Specifies a field used by Splunk Web to denote the app this search should be dispatched in.
         * 
         * @return builder
         * 
         */
        public Builder requestUiDispatchApp(String requestUiDispatchApp) {
            return requestUiDispatchApp(Output.of(requestUiDispatchApp));
        }

        /**
         * @param requestUiDispatchView Specifies a field used by Splunk Web to denote the view this search should be displayed in.
         * 
         * @return builder
         * 
         */
        public Builder requestUiDispatchView(@Nullable Output requestUiDispatchView) {
            $.requestUiDispatchView = requestUiDispatchView;
            return this;
        }

        /**
         * @param requestUiDispatchView Specifies a field used by Splunk Web to denote the view this search should be displayed in.
         * 
         * @return builder
         * 
         */
        public Builder requestUiDispatchView(String requestUiDispatchView) {
            return requestUiDispatchView(Output.of(requestUiDispatchView));
        }

        /**
         * @param restartOnSearchpeerAdd Specifies whether to restart a real-time search managed by the scheduler when a search peer becomes available for this saved search. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder restartOnSearchpeerAdd(@Nullable Output restartOnSearchpeerAdd) {
            $.restartOnSearchpeerAdd = restartOnSearchpeerAdd;
            return this;
        }

        /**
         * @param restartOnSearchpeerAdd Specifies whether to restart a real-time search managed by the scheduler when a search peer becomes available for this saved search. Defaults to 1.
         * 
         * @return builder
         * 
         */
        public Builder restartOnSearchpeerAdd(Boolean restartOnSearchpeerAdd) {
            return restartOnSearchpeerAdd(Output.of(restartOnSearchpeerAdd));
        }

        /**
         * @param runOnStartup Indicates whether this search runs at startup. If it does not run on startup, it runs at the next scheduled time. Defaults to 0. Set to 1 for scheduled searches that populate lookup tables.
         * 
         * @return builder
         * 
         */
        public Builder runOnStartup(@Nullable Output runOnStartup) {
            $.runOnStartup = runOnStartup;
            return this;
        }

        /**
         * @param runOnStartup Indicates whether this search runs at startup. If it does not run on startup, it runs at the next scheduled time. Defaults to 0. Set to 1 for scheduled searches that populate lookup tables.
         * 
         * @return builder
         * 
         */
        public Builder runOnStartup(Boolean runOnStartup) {
            return runOnStartup(Output.of(runOnStartup));
        }

        /**
         * @param schedulePriority Raises the scheduling priority of the named search. Defaults to Default
         * 
         * @return builder
         * 
         */
        public Builder schedulePriority(@Nullable Output schedulePriority) {
            $.schedulePriority = schedulePriority;
            return this;
        }

        /**
         * @param schedulePriority Raises the scheduling priority of the named search. Defaults to Default
         * 
         * @return builder
         * 
         */
        public Builder schedulePriority(String schedulePriority) {
            return schedulePriority(Output.of(schedulePriority));
        }

        /**
         * @param scheduleWindow Time window (in minutes) during which the search has lower priority. Defaults to 0. The scheduler can give higher priority to more critical searches during this window. The window must be smaller than the search period.Set to auto to let the scheduler determine the optimal window value automatically. Requires the edit_search_schedule_window capability to override auto.
         * 
         * @return builder
         * 
         */
        public Builder scheduleWindow(@Nullable Output scheduleWindow) {
            $.scheduleWindow = scheduleWindow;
            return this;
        }

        /**
         * @param scheduleWindow Time window (in minutes) during which the search has lower priority. Defaults to 0. The scheduler can give higher priority to more critical searches during this window. The window must be smaller than the search period.Set to auto to let the scheduler determine the optimal window value automatically. Requires the edit_search_schedule_window capability to override auto.
         * 
         * @return builder
         * 
         */
        public Builder scheduleWindow(String scheduleWindow) {
            return scheduleWindow(Output.of(scheduleWindow));
        }

        /**
         * @param search Required when creating a new search.
         * 
         * @return builder
         * 
         */
        public Builder search(@Nullable Output search) {
            $.search = search;
            return this;
        }

        /**
         * @param search Required when creating a new search.
         * 
         * @return builder
         * 
         */
        public Builder search(String search) {
            return search(Output.of(search));
        }

        /**
         * @param vsid Defines the viewstate id associated with the UI view listed in 'displayview'.
         * 
         * @return builder
         * 
         */
        public Builder vsid(@Nullable Output vsid) {
            $.vsid = vsid;
            return this;
        }

        /**
         * @param vsid Defines the viewstate id associated with the UI view listed in 'displayview'.
         * 
         * @return builder
         * 
         */
        public Builder vsid(String vsid) {
            return vsid(Output.of(vsid));
        }

        /**
         * @param workloadPool Specifies the new workload pool where the existing running search will be placed.`
         * 
         * @return builder
         * 
         */
        public Builder workloadPool(@Nullable Output workloadPool) {
            $.workloadPool = workloadPool;
            return this;
        }

        /**
         * @param workloadPool Specifies the new workload pool where the existing running search will be placed.`
         * 
         * @return builder
         * 
         */
        public Builder workloadPool(String workloadPool) {
            return workloadPool(Output.of(workloadPool));
        }

        public SavedSearchesState build() {
            return $;
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy