<gh_stars>0// *** 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 TencentCloudIAC.PulumiPackage.Tencentcloud.ApiGateway.Outputs
{

    [OutputType]
    public sealed class GetIpStrategiesListAttachListResult
    {
        /// <summary>
        /// The type of oauth API. This field is valid when the `auth_type` is `OAUTH`, and the values are `NORMAL` (business API) and `OAUTH` (authorization API).
        /// </summary>
        public readonly string ApiBusinessType;
        /// <summary>
        /// API interface description.
        /// </summary>
        public readonly string ApiDesc;
        /// <summary>
        /// The API ID.
        /// </summary>
        public readonly string ApiId;
        /// <summary>
        /// API name.
        /// </summary>
        public readonly string ApiName;
        /// <summary>
        /// API type. Valid values: `NORMAL`, `TSF`. `NORMAL` means common API, `TSF` means microservice API.
        /// </summary>
        public readonly string ApiType;
        /// <summary>
        /// The unique ID of the associated authorization API, which takes effect when the authType is `OAUTH` and `ApiBusinessType` is normal. Identifies the unique ID of the oauth2.0 authorization API bound to the business API.
        /// </summary>
        public readonly string AuthRelationApiId;
        /// <summary>
        /// API authentication type. Valid values: `SECRET`, `NONE`, `OAUTH`. `SECRET` means key pair authentication, `NONE` means no authentication.
        /// </summary>
        public readonly string AuthType;
        /// <summary>
        /// Creation time in the format of YYYY-MM-DDThh:mm:ssZ according to ISO 8601 standard. UTC time is used.
        /// </summary>
        public readonly string CreateTime;
        /// <summary>
        /// API request method.
        /// </summary>
        public readonly string Method;
        /// <summary>
        /// Last modified time in the format of YYYY-MM-DDThh:mm:ssZ according to ISO 8601 standard. UTC time is used.
        /// </summary>
        public readonly string ModifyTime;
        /// <summary>
        /// OAUTH configuration information. It takes effect when authType is `OAUTH`.
        /// </summary>
        public readonly ImmutableDictionary<string, object> OauthConfig;
        /// <summary>
        /// API path.
        /// </summary>
        public readonly string Path;
        /// <summary>
        /// API protocol.
        /// </summary>
        public readonly string Protocol;
        /// <summary>
        /// List of business API associated with authorized API.
        /// </summary>
        public readonly ImmutableArray<string> RelationBusinessApiIds;
        /// <summary>
        /// The service ID to be queried.
        /// </summary>
        public readonly string ServiceId;
        /// <summary>
        /// The label information associated with the API.
        /// </summary>
        public readonly ImmutableArray<string> Tags;
        /// <summary>
        /// VPC unique ID.
        /// </summary>
        public readonly string UniqVpcId;
        /// <summary>
        /// VPC ID.
        /// </summary>
        public readonly int VpcId;

        [OutputConstructor]
        private GetIpStrategiesListAttachListResult(
            string apiBusinessType,

            string apiDesc,

            string apiId,

            string apiName,

            string apiType,

            string authRelationApiId,

            string authType,

            string createTime,

            string method,

            string modifyTime,

            ImmutableDictionary<string, object> oauthConfig,

            string path,

            string protocol,

            ImmutableArray<string> relationBusinessApiIds,

            string serviceId,

            ImmutableArray<string> tags,

            string uniqVpcId,

            int vpcId)
        {
            ApiBusinessType = apiBusinessType;
            ApiDesc = apiDesc;
            ApiId = apiId;
            ApiName = apiName;
            ApiType = apiType;
            AuthRelationApiId = authRelationApiId;
            AuthType = authType;
            CreateTime = createTime;
            Method = method;
            ModifyTime = modifyTime;
            OauthConfig = oauthConfig;
            Path = path;
            Protocol = protocol;
            RelationBusinessApiIds = relationBusinessApiIds;
            ServiceId = serviceId;
            Tags = tags;
            UniqVpcId = uniqVpcId;
            VpcId = vpcId;
        }
    }
}
