<reponame>pulumiverse/pulumi-fortios<filename>sdk/dotnet/GetSystemFtmpush.cs// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace Pulumiverse.Fortios
{
    public static class GetSystemFtmpush
    {
        /// <summary>
        /// Use this data source to get information on fortios system ftmpush
        /// </summary>
        public static Task<GetSystemFtmpushResult> InvokeAsync(GetSystemFtmpushArgs? args = null, InvokeOptions? options = null)
            => global::Pulumi.Deployment.Instance.InvokeAsync<GetSystemFtmpushResult>("fortios:index/getSystemFtmpush:getSystemFtmpush", args ?? new GetSystemFtmpushArgs(), options.WithDefaults());

        /// <summary>
        /// Use this data source to get information on fortios system ftmpush
        /// </summary>
        public static Output<GetSystemFtmpushResult> Invoke(GetSystemFtmpushInvokeArgs? args = null, InvokeOptions? options = null)
            => global::Pulumi.Deployment.Instance.Invoke<GetSystemFtmpushResult>("fortios:index/getSystemFtmpush:getSystemFtmpush", args ?? new GetSystemFtmpushInvokeArgs(), options.WithDefaults());
    }


    public sealed class GetSystemFtmpushArgs : global::Pulumi.InvokeArgs
    {
        /// <summary>
        /// Specifies the vdom to which the data source will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
        /// </summary>
        [Input("vdomparam")]
        public string? Vdomparam { get; set; }

        public GetSystemFtmpushArgs()
        {
        }
        public static new GetSystemFtmpushArgs Empty => new GetSystemFtmpushArgs();
    }

    public sealed class GetSystemFtmpushInvokeArgs : global::Pulumi.InvokeArgs
    {
        /// <summary>
        /// Specifies the vdom to which the data source will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
        /// </summary>
        [Input("vdomparam")]
        public Input<string>? Vdomparam { get; set; }

        public GetSystemFtmpushInvokeArgs()
        {
        }
        public static new GetSystemFtmpushInvokeArgs Empty => new GetSystemFtmpushInvokeArgs();
    }


    [OutputType]
    public sealed class GetSystemFtmpushResult
    {
        /// <summary>
        /// The provider-assigned unique ID for this managed resource.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// IPv4 address or domain name of FortiToken Mobile push services server.
        /// </summary>
        public readonly string Server;
        /// <summary>
        /// Name of the server certificate to be used for SSL (default = Fortinet_Factory).
        /// </summary>
        public readonly string ServerCert;
        /// <summary>
        /// IPv4 address of FortiToken Mobile push services server (format: xxx.xxx.xxx.xxx).
        /// </summary>
        public readonly string ServerIp;
        /// <summary>
        /// Port to communicate with FortiToken Mobile push services server (1 - 65535, default = 4433).
        /// </summary>
        public readonly int ServerPort;
        /// <summary>
        /// Enable/disable the use of FortiToken Mobile push services.
        /// </summary>
        public readonly string Status;
        public readonly string? Vdomparam;

        [OutputConstructor]
        private GetSystemFtmpushResult(
            string id,

            string server,

            string serverCert,

            string serverIp,

            int serverPort,

            string status,

            string? vdomparam)
        {
            Id = id;
            Server = server;
            ServerCert = serverCert;
            ServerIp = serverIp;
            ServerPort = serverPort;
            Status = status;
            Vdomparam = vdomparam;
        }
    }
}
