@@ -57,6 +57,7 @@ The **PassportManager** provides multiple drag-and-drop prefabs for easy Immutab
5757- ** Auto Initialize** : Automatically initialize on Start (default: true)
5858- ** Auto Login** : Automatically attempt login after initialization (default: false)
5959- ** Direct Login Method** : Pre-select login method (None, Google, Apple, Facebook)
60+ - ** Default Marketing Consent** : Default consent status for marketing communications (Unsubscribed, OptedIn)
6061- ** Log Level** : Control debug output verbosity
6162
6263### UI Customization (PassportManagerComplete)
@@ -149,13 +150,57 @@ if (manager.IsInitialized && manager.IsLoggedIn)
149150 // var address = await manager.PassportInstance.GetAddress();
150151 }
151152
152- // Manual login with specific method
153- manager .Login (DirectLoginMethod .Google );
153+ // Manual login with specific method and marketing consent
154+ var loginOptions = new DirectLoginOptions (DirectLoginMethod .Google , marketingConsentStatus : MarketingConsentStatus .Unsubscribed );
155+ manager .Login (loginOptions );
156+
157+ // Or use the simpler method (uses default marketing consent from Inspector)
158+ manager .Login (); // Uses configured directLoginMethod
154159
155160// Manual logout
156161manager .Logout ();
157162```
158163
164+ ## 📧 Marketing Consent
165+
166+ The PassportManager supports marketing consent for compliance with privacy regulations (GDPR, etc.):
167+
168+ ### Default Marketing Consent
169+
170+ Configure the default marketing consent status in the Inspector:
171+
172+ - ** Unsubscribed** (default): Users are not subscribed to marketing communications by default
173+ - ** OptedIn** : Users are opted into marketing communications by default
174+
175+ This setting is used when:
176+
177+ - Users authenticate via direct login methods (Google, Apple, Facebook)
178+ - No explicit marketing consent is provided in code
179+
180+ ### Advanced Marketing Consent
181+
182+ For programmatic control over marketing consent:
183+
184+ ``` csharp
185+ // Create login options with specific marketing consent
186+ var loginOptions = new DirectLoginOptions (
187+ DirectLoginMethod .Google ,
188+ marketingConsentStatus : MarketingConsentStatus .Unsubscribed
189+ );
190+
191+ // Login with explicit marketing consent
192+ await PassportManager .Instance .LoginAsync (loginOptions );
193+ ```
194+
195+ ### Marketing Consent Flow
196+
197+ 1 . ** Unity Game** : Sets marketing consent via ` DirectLoginOptions ` or uses default from Inspector
198+ 2 . ** Authentication Server** : Receives and processes the marketing consent preference
199+ 3 . ** User Profile** : Marketing consent status is stored and applied to user's profile
200+ 4 . ** Compliance** : Ensures proper consent handling for marketing communications
201+
202+ ** Note** : Marketing consent is automatically handled during the authentication flow and integrated with Immutable's user profile system.
203+
159204## 📁 Sample Scripts
160205
161206Check out the included example script:
@@ -182,14 +227,6 @@ The `PassportUIController` uses **aggressive cursor management** designed for de
182227 }
183228 ```
184229
185- ## 🔗 Deep Linking Setup
186-
187- For native platforms (Windows/Mac), you'll need to register your custom URL scheme:
188-
189- ### Windows
190-
191- The SDK automatically handles Windows deep linking registration.
192-
193230## 🆘 Troubleshooting
194231
195232### "Can't drag UI elements to Inspector fields"
0 commit comments