Netmera Developer Guide
Netmera Docs
  • Netmera Developer Guide
  • Platforms
    • iOS
      • New iOS (Swift)
        • SDK Integration
        • Push Notifications
          • Delegate Methods
          • Widget and In-App Messages
          • Media Push
          • Carousel, Slider and Thumbnail Push
        • Live Activities
        • Deep Linking
          • Custom Deep Links
        • Sound & Vibration
        • Push Inbox
        • Events
        • Geofence & Location
        • User Attributes & Preferences
        • Advertising ID
        • Changelog
      • Former iOS (Objective-C)
        • SDK Integration
        • Push Notifications
          • Delegate Methods
          • Push Payload Receivers
          • Widget and In-App Messages
          • Customizing In-App Messages
          • Media Push
          • Carousel, Slider and Thumbnail Push
          • Custom Web View Presentation
          • Push Icon
        • Live Activities
        • Deep Linking
          • Custom Deep Links
        • Sound & Vibration
        • Push Inbox
        • Events
        • Geofence & Location
        • User Attributes & Preferences
        • Data Transfer
        • Advertising ID
        • SSL Pinning
        • Changelog
    • Android
      • SDK Integration
        • Huawei Integration
        • Huawei Message Receipt
        • Custom FCM and HMS Implementations
        • Android Integration FAQs
      • Push Notifications
        • Widget and In-App Messages
        • Push Callbacks
        • Custom Web View Presentation
        • Push Icon
      • Deep Linking
        • Custom Deep Links
      • Sound & Vibration
      • Push Inbox
      • Events
      • Geofence & Location
        • Background Location Permission
      • User & Attributes
      • Data Transfer
      • Advertising ID
      • App Tracking
      • SSL Pinning
      • Changelog
    • Web
      • SDK Setup
        • Self-Hosted SDK Setup
      • Mobile Web Push for iOS
      • Deep Linking
        • Custom Deep Links
      • Events
      • User & Attributes
    • React Native
      • SDK Integration
      • Push Notifications
        • Widget and In-App Messages
        • Push Callbacks
      • Deep Linking
        • Custom Deep Links
      • Sound & Vibration
      • Push Inbox
      • Events
      • Geofence & Location
      • User & Attributes
      • Changelog
    • Flutter
      • SDK Integration
        • Custom FCM and HMS Implementations
      • Push Notifications
        • Push Notification Permissions
        • Widget and In-App Messages
        • Flutter iOS Media Push
      • Deep Linking
        • Custom Deep Links
      • Sound & Vibration
      • Push Inbox
      • Events
      • Geofence & Location
      • User & Attributes
      • SSL Pinning
      • Changelog
    • Cordova
      • SDK Integration
      • Push Notifications
      • Sound & Vibration
      • Push Inbox
      • Events
      • User & Attributes
    • Unity
      • SDK Integration
      • Sound & Vibration
      • Events
      • User & Attributes
      • Changelog
  • Integrated Modules
    • Optimove
    • Adjust
    • Mixpanel
    • IYS Integration
    • VIA Integration
      • Short URL Consent Requests
      • OTP Consent Requests
        • OTP Confirmation Completion
      • VIA Email Rejection Link Generation
      • ETK Rejection via SMS
  • API Documentation
    • REST API
      • Setup
      • Notifications
      • Events
      • User & Device Management
      • Inbox Feature
      • GDPR
      • Error Responses
  • FAQs
    • Push Notifications FAQs
Powered by GitBook
On this page
  • Managing User Data
  • Updating User Information
  • Creating Custom Profile Attributes
  • Email Subscription Preferences

Was this helpful?

  1. Platforms
  2. iOS
  3. New iOS (Swift)

User Attributes & Preferences

Managing User Data

The NetmeraUser class allows you to send structured information about your application's users to Netmera. The ideal time to update user attributes is right after the user logs into your application.

User ID Management

For optimal performance and data integrity:

  • Update user information at login: It’s crucial to update the user information as soon as the user logs in.

  • Unique userId: Ensure that each user has a unique userId. Assigning the same userId to multiple users leads to data inconsistencies and is not recommended.

Updating User Information

After obtaining user information, set or update the user data by using the following example:

The userId cannot be removed, even if you assign nil to it.

var user = NetmeraUser()
user.userId = userId  // Unique user ID
user.name = name      // User's name
user.surname = surname // User's surname
user.email = email    // User's email address
Netmera.updateUser(user: user)

Creating Custom Profile Attributes

Step 1: Navigate to the Developers section

Custom profile attributes must be created and configured in the Netmera Panel before they can be used in the application.

  • Go to Panel > Developers > Profile Attributes > Create New Attribute.

Step 2: Fill in Attribute Details

Define the following information:

  • Name: The unique identifier for the attribute.

  • Label: A user-friendly name for the attribute.

  • Description: A brief description of the attribute.

  • Data Type: Choose the appropriate data type for the attribute.

  • Is Array: Define whether the attribute can hold multiple values.

Step 3: Save the Attribute

After clicking Save, the custom attribute will be available for assignment to your users.

Step 4: Generated Code for Custom Attributes

Once the attribute is defined in the Netmera Panel, the generated code can be found at the bottom of the Profile Attribute page, under the Generate Code section. This code must be added to your Netmera Panel under Profile Attributes > User Class.

Private Information Considerations

Under the KVKK law, the sharing of private user data is prohibited. To ensure compliance:

  • Private Information Flag: When defining profile attributes or events, the Private Information feature must be selected to ensure that these attributes are not sent to the backend by the Netmera SDK.

  • SDK Enforcement: The SDK checks for the Private Information flag during the Netmera.updateUser(user:) call. If the flag is set, the request will not be sent to the backend.

Email Subscription Preferences

The Netmera SDK provides methods to manage email subscription preferences for your users.

1. Check Email Subscription Status

Use the following method to check if the user has allowed email subscriptions:

Netmera.isAllowedEmailSubscription()
  • Returns: A Boolean value (true if the user has allowed email subscriptions, otherwise false).

2. Update Email Subscription Preferences

Set the user's preference for email subscriptions using one of the methods below:

  • Allow Email Subscriptions

    Netmera.setAllowedEmailSubscription(true)
  • Disallow Email Subscriptions

    Netmera.setAllowedEmailSubscription(false)

These methods enable you to respect user preferences for email communications within your application.

PreviousGeofence & LocationNextAdvertising ID

Last updated 1 month ago

Was this helpful?