#if !DISABLE_PLAYFABENTITY_API using System; using System.Collections.Generic; using PlayFab.SharedModels; namespace PlayFab.InsightsModels { [Serializable] public class InsightsEmptyRequest : PlayFabRequestCommon { /// <summary> /// The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). /// </summary> public Dictionary<string,string> CustomTags; } [Serializable] public class InsightsGetDetailsResponse : PlayFabResultCommon { /// <summary> /// Amount of data (in MB) currently used by Insights. /// </summary> public uint DataUsageMb; /// <summary> /// Details of any error that occurred while retrieving Insights details. /// </summary> public string ErrorMessage; /// <summary> /// Allowed range of values for performance level and data storage retention. /// </summary> public InsightsGetLimitsResponse Limits; /// <summary> /// List of pending Insights operations for the title. /// </summary> public List<InsightsGetOperationStatusResponse> PendingOperations; /// <summary> /// Current Insights performance level setting. /// </summary> public int PerformanceLevel; /// <summary> /// Current Insights data storage retention value in days. /// </summary> public int RetentionDays; } [Serializable] public class InsightsGetLimitsResponse : PlayFabResultCommon { /// <summary> /// Default Insights performance level. /// </summary> public int DefaultPerformanceLevel; /// <summary> /// Default Insights data storage retention days. /// </summary> public int DefaultStorageRetentionDays; /// <summary> /// Maximum allowed data storage retention days. /// </summary> public int StorageMaxRetentionDays; /// <summary> /// Minimum allowed data storage retention days. /// </summary> public int StorageMinRetentionDays; /// <summary> /// List of Insights submeter limits for the allowed performance levels. /// </summary> public List<InsightsPerformanceLevel> SubMeters; } /// <summary> /// Returns the current status for the requested operation id. /// </summary> [Serializable] public class InsightsGetOperationStatusRequest : PlayFabRequestCommon { /// <summary> /// The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). /// </summary> public Dictionary<string,string> CustomTags; /// <summary> /// Id of the Insights operation. /// </summary> public string OperationId; } [Serializable] public class InsightsGetOperationStatusResponse : PlayFabResultCommon { /// <summary> /// Optional message related to the operation details. /// </summary> public string Message; /// <summary> /// Time the operation was completed. /// </summary> public DateTime OperationCompletedTime; /// <summary> /// Id of the Insights operation. /// </summary> public string OperationId; /// <summary> /// Time the operation status was last updated. /// </summary> public DateTime OperationLastUpdated; /// <summary> /// Time the operation started. /// </summary> public DateTime OperationStartedTime; /// <summary> /// The type of operation, SetPerformance or SetStorageRetention. /// </summary> public string OperationType; /// <summary> /// The value requested for the operation. /// </summary> public int OperationValue; /// <summary> /// Current status of the operation. /// </summary> public string Status; } /// <summary> /// Returns a list of operations that are in the pending state for the requested operation type. /// </summary> [Serializable] public class InsightsGetPendingOperationsRequest : PlayFabRequestCommon { /// <summary> /// The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). /// </summary> public Dictionary<string,string> CustomTags; /// <summary> /// The type of pending operations requested, or blank for all operation types. /// </summary> public string OperationType; } [Serializable] public class InsightsGetPendingOperationsResponse : PlayFabResultCommon { /// <summary> /// List of pending Insights operations. /// </summary> public List<InsightsGetOperationStatusResponse> PendingOperations; } [Serializable] public class InsightsOperationResponse : PlayFabResultCommon { /// <summary> /// Optional message related to the operation details. /// </summary> public string Message; /// <summary> /// Id of the Insights operation. /// </summary> public string OperationId; /// <summary> /// The type of operation, SetPerformance or SetStorageRetention. /// </summary> public string OperationType; } [Serializable] public class InsightsPerformanceLevel : PlayFabBaseModel { /// <summary> /// Number of allowed active event exports. /// </summary> public int ActiveEventExports; /// <summary> /// Maximum cache size. /// </summary> public int CacheSizeMB; /// <summary> /// Maximum number of concurrent queries. /// </summary> public int Concurrency; /// <summary> /// Number of Insights credits consumed per minute. /// </summary> public double CreditsPerMinute; /// <summary> /// Maximum events per second. /// </summary> public int EventsPerSecond; /// <summary> /// Performance level. /// </summary> public int Level; /// <summary> /// Maximum amount of memory allowed per query. /// </summary> public int MaxMemoryPerQueryMB; /// <summary> /// Amount of compute power allocated for queries and operations. /// </summary> public int VirtualCpuCores; } /// <summary> /// Sets the performance level to the requested value. Use the GetLimits method to get the allowed values. /// </summary> [Serializable] public class InsightsSetPerformanceRequest : PlayFabRequestCommon { /// <summary> /// The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). /// </summary> public Dictionary<string,string> CustomTags; /// <summary> /// The Insights performance level to apply to the title. /// </summary> public int PerformanceLevel; } /// <summary> /// Sets the data storage retention to the requested value. Use the GetLimits method to get the range of allowed values. /// </summary> [Serializable] public class InsightsSetStorageRetentionRequest : PlayFabRequestCommon { /// <summary> /// The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). /// </summary> public Dictionary<string,string> CustomTags; /// <summary> /// The Insights data storage retention value (in days) to apply to the title. /// </summary> public int RetentionDays; } } #endif