#if !DISABLE_PLAYFABENTITY_API using System; using System.Collections.Generic; using PlayFab.SharedModels; namespace PlayFab.AddonModels { [Serializable] public class CreateOrUpdateAppleRequest : PlayFabRequestCommon { /// <summary> /// iOS App Bundle ID obtained after setting up your app in the App Store. /// </summary> public string AppBundleId; /// <summary> /// iOS App Shared Secret obtained after setting up your app in the App Store. /// </summary> public string AppSharedSecret; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; /// <summary> /// Ignore expiration date for identity tokens. Be aware that when set to true this can invalidate expired tokens in the /// case where Apple rotates their signing keys. /// </summary> public bool? IgnoreExpirationDate; /// <summary> /// Require secure authentication only for this app. /// </summary> public bool? RequireSecureAuthentication; } [Serializable] public class CreateOrUpdateAppleResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateFacebookInstantGamesRequest : PlayFabRequestCommon { /// <summary> /// Facebook App ID obtained after setting up your app in Facebook Instant Games. /// </summary> public string AppID; /// <summary> /// Facebook App Secret obtained after setting up your app in Facebook Instant Games. /// </summary> public string AppSecret; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; } [Serializable] public class CreateOrUpdateFacebookInstantGamesResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateFacebookRequest : PlayFabRequestCommon { /// <summary> /// Facebook App ID obtained after setting up your app in Facebook. /// </summary> public string AppID; /// <summary> /// Facebook App Secret obtained after setting up your app in Facebook. /// </summary> public string AppSecret; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; /// <summary> /// Email address for purchase dispute notifications. /// </summary> public string NotificationEmail; } [Serializable] public class CreateOrUpdateFacebookResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateGoogleRequest : PlayFabRequestCommon { /// <summary> /// Google App License Key obtained after setting up your app in the Google Play developer portal. Required if using Google /// receipt validation. /// </summary> public string AppLicenseKey; /// <summary> /// Google App Package ID obtained after setting up your app in the Google Play developer portal. Required if using Google /// receipt validation. /// </summary> public string AppPackageID; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; /// <summary> /// Google OAuth Client ID obtained through the Google Developer Console by creating a new set of "OAuth Client ID". /// Required if using Google Authentication. /// </summary> public string OAuthClientID; /// <summary> /// Google OAuth Client Secret obtained through the Google Developer Console by creating a new set of "OAuth Client ID". /// Required if using Google Authentication. /// </summary> public string OAuthClientSecret; /// <summary> /// Authorized Redirect Uri obtained through the Google Developer Console. This currently defaults to /// https://oauth.playfab.com/oauth2/google. If you are authenticating players via browser, please update this to your own /// domain. /// </summary> public string OAuthCustomRedirectUri; /// <summary> /// Needed to enable pending purchase handling and subscription processing. /// </summary> public string ServiceAccountKey; } [Serializable] public class CreateOrUpdateGoogleResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateKongregateRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; /// <summary> /// Kongregate Secret API Key obtained after setting up your game in your Kongregate developer account. /// </summary> public string SecretAPIKey; } [Serializable] public class CreateOrUpdateKongregateResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateNintendoRequest : PlayFabRequestCommon { /// <summary> /// Nintendo Switch Application ID, without the "0x" prefix. /// </summary> public string ApplicationID; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// List of Nintendo Environments, currently supporting up to 4. Needs Catalog enabled. /// </summary> public List<NintendoEnvironment> Environments; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; } [Serializable] public class CreateOrUpdateNintendoResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdatePSNRequest : PlayFabRequestCommon { /// <summary> /// Client ID obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. /// </summary> public string ClientID; /// <summary> /// Client secret obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. /// </summary> public string ClientSecret; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; /// <summary> /// Client ID obtained after setting up your game with Sony. This one is associated with the modern marketplace, which /// includes PS5, cross-generation for PS4, and unified entitlements. /// </summary> public string NextGenClientID; /// <summary> /// Client secret obtained after setting up your game with Sony. This one is associated with the modern marketplace, which /// includes PS5, cross-generation for PS4, and unified entitlements. /// </summary> public string NextGenClientSecret; } [Serializable] public class CreateOrUpdatePSNResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateSteamRequest : PlayFabRequestCommon { /// <summary> /// Application ID obtained after setting up your app in Valve's developer portal. /// </summary> public string ApplicationId; /// <summary> /// The optional custom tags associated with the request (e.g. build number, external trace identifiers, etc.). /// </summary> public Dictionary<string,string> CustomTags; /// <summary> /// Enforce usage of AzurePlayFab identity in user authentication tickets. /// </summary> public bool? EnforceServiceSpecificTickets; /// <summary> /// The optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; /// <summary> /// Sercet Key obtained after setting up your app in Valve's developer portal. /// </summary> public string SecretKey; /// <summary> /// Use Steam Payments sandbox endpoint for test transactions. /// </summary> public bool? UseSandbox; } [Serializable] public class CreateOrUpdateSteamResponse : PlayFabResultCommon { } [Serializable] public class CreateOrUpdateTwitchRequest : PlayFabRequestCommon { /// <summary> /// Client ID obtained after creating your Twitch developer account. /// </summary> public string ClientID; /// <summary> /// Client Secret obtained after creating your Twitch developer account. /// </summary> public string ClientSecret; /// <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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; /// <summary> /// If an error should be returned if the addon already exists. /// </summary> public bool? ErrorIfExists; } [Serializable] public class CreateOrUpdateTwitchResponse : PlayFabResultCommon { } [Serializable] public class DeleteAppleRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteAppleResponse : PlayFabResultCommon { } [Serializable] public class DeleteFacebookInstantGamesRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteFacebookInstantGamesResponse : PlayFabResultCommon { } [Serializable] public class DeleteFacebookRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteFacebookResponse : PlayFabResultCommon { } [Serializable] public class DeleteGoogleRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteGoogleResponse : PlayFabResultCommon { } [Serializable] public class DeleteKongregateRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteKongregateResponse : PlayFabResultCommon { } [Serializable] public class DeleteNintendoRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteNintendoResponse : PlayFabResultCommon { } [Serializable] public class DeletePSNRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeletePSNResponse : PlayFabResultCommon { } [Serializable] public class DeleteSteamRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteSteamResponse : PlayFabResultCommon { } [Serializable] public class DeleteTwitchRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class DeleteTwitchResponse : PlayFabResultCommon { } /// <summary> /// Combined entity type and ID structure which uniquely identifies a single entity. /// </summary> [Serializable] public class EntityKey : PlayFabBaseModel { /// <summary> /// Unique ID of the entity. /// </summary> public string Id; /// <summary> /// Entity type. See https://docs.microsoft.com/gaming/playfab/features/data/entities/available-built-in-entity-types /// </summary> public string Type; } [Serializable] public class GetAppleRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetAppleResponse : PlayFabResultCommon { /// <summary> /// iOS App Bundle ID obtained after setting up your app in the App Store. /// </summary> public string AppBundleId; /// <summary> /// Addon status. /// </summary> public bool Created; /// <summary> /// Ignore expiration date for identity tokens. /// </summary> public bool? IgnoreExpirationDate; /// <summary> /// Require secure authentication only for this app. /// </summary> public bool? RequireSecureAuthentication; } [Serializable] public class GetFacebookInstantGamesRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetFacebookInstantGamesResponse : PlayFabResultCommon { /// <summary> /// Facebook App ID obtained after setting up your app in Facebook Instant Games. /// </summary> public string AppID; /// <summary> /// Addon status. /// </summary> public bool Created; } [Serializable] public class GetFacebookRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetFacebookResponse : PlayFabResultCommon { /// <summary> /// Facebook App ID obtained after setting up your app in Facebook. /// </summary> public string AppID; /// <summary> /// Addon status. /// </summary> public bool Created; /// <summary> /// Email address for purchase dispute notifications. /// </summary> public string NotificationEmail; } [Serializable] public class GetGoogleRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetGoogleResponse : PlayFabResultCommon { /// <summary> /// Google App Package ID obtained after setting up your app in the Google Play developer portal. Required if using Google /// receipt validation. /// </summary> public string AppPackageID; /// <summary> /// Addon status. /// </summary> public bool Created; /// <summary> /// Google OAuth Client ID obtained through the Google Developer Console by creating a new set of "OAuth Client ID". /// Required if using Google Authentication. /// </summary> public string OAuthClientID; /// <summary> /// Authorized Redirect Uri obtained through the Google Developer Console. This currently defaults to /// https://oauth.playfab.com/oauth2/google. If you are authenticating players via browser, please update this to your own /// domain. /// </summary> public string OauthCustomRedirectUri; } [Serializable] public class GetKongregateRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetKongregateResponse : PlayFabResultCommon { /// <summary> /// Addon status. /// </summary> public bool Created; } [Serializable] public class GetNintendoRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetNintendoResponse : PlayFabResultCommon { /// <summary> /// Nintendo Switch Application ID, without the "0x" prefix. /// </summary> public string ApplicationID; /// <summary> /// Addon status. /// </summary> public bool Created; /// <summary> /// List of Nintendo Environments, currently supporting up to 4. /// </summary> public List<NintendoEnvironment> Environments; } [Serializable] public class GetPSNRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetPSNResponse : PlayFabResultCommon { /// <summary> /// Client ID obtained after setting up your game with Sony. This one is associated with the existing PS4 marketplace. /// </summary> public string ClientID; /// <summary> /// Addon status. /// </summary> public bool Created; /// <summary> /// Client ID obtained after setting up your game with Sony. This one is associated with the modern marketplace, which /// includes PS5, cross-generation for PS4, and unified entitlements. /// </summary> public string NextGenClientID; } [Serializable] public class GetSteamRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetSteamResponse : PlayFabResultCommon { /// <summary> /// Application ID obtained after setting up your game in Valve's developer portal. /// </summary> public string ApplicationId; /// <summary> /// Addon status. /// </summary> public bool Created; /// <summary> /// Enforce usage of AzurePlayFab identity in user authentication tickets. /// </summary> public bool? EnforceServiceSpecificTickets; /// <summary> /// Use Steam Payments sandbox endpoint for test transactions. /// </summary> public bool? UseSandbox; } [Serializable] public class GetTwitchRequest : 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 optional entity to perform this action on. Defaults to the currently logged in entity. /// </summary> public EntityKey Entity; } [Serializable] public class GetTwitchResponse : PlayFabResultCommon { /// <summary> /// Client ID obtained after creating your Twitch developer account. /// </summary> public string ClientID; /// <summary> /// Addon status. /// </summary> public bool Created; } [Serializable] public class NintendoEnvironment : PlayFabBaseModel { /// <summary> /// Client ID for the Nintendo Environment. /// </summary> public string ClientID; /// <summary> /// Client Secret for the Nintendo Environment. /// </summary> public string ClientSecret; /// <summary> /// ID for the Nintendo Environment. /// </summary> public string ID; } } #endif