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
        • 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
        • 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
      • 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
  • Step 1: Navigate to the Transactional Page
  • Step 2: Create a Transactional Message on the Netmera Panel
  • Step 3: Obtain a Sample Request for API & Configuration
  • Step 4: Adding the deeplinkCustomMapParams Class
  • Sample Deep Link Structure
  • Understanding Deep Link Parameters
  • Sample Request

Was this helpful?

  1. Platforms
  2. iOS
  3. Former iOS (Objective-C)
  4. Deep Linking

Custom Deep Links

PreviousDeep LinkingNextSound & Vibration

Last updated 2 months ago

Was this helpful?

Custom deep links dynamically generate user-specific links by appending custom parameters, aligning each link with individual profiles or actions. To integrate custom parameters into deep links for transactional messaging based on profile attributes or external IDs, follow these steps.

Step 1: Navigate to the Transactional Page

  1. Go to Messages > Transactional

  2. Click on Create New Transactional Message

Step 2: Create a Transactional Message on the Netmera Panel

  1. Complete the Setup and What steps.

For a detailed breakdown of this process, refer to

Step 3: Obtain a Sample Request for API & Configuration

  1. On API & Config step, acquire the sample request for sending via the REST API.

Step 4: Adding the deeplinkCustomMapParams Class

Under the existing Deep Link class:

  • Add the deeplinkCustomMapParams class to map custom parameters within the deep link URL.

Sample Deep Link Structure

A customizable deep link in Netmera might look like the following:

"deeplink": "{end_point_url}?id={dynamicId}&contactId={contactID}&surname={surname}&name=@{name}"
  • Parameters like {dynamicId}, {contactID}, and {surname} can be static or dynamically changed for each user.

  • Parameters like @{name} refer to profile attributes pulled directly from the user's profile in Netmera.

Understanding Deep Link Parameters

  1. Parameters without '@' - Static Values: Parameters without the '@' symbol, such as {dynamicId} and {contactID}, are provided as static values. These parameters can be set as fixed values or can vary for each user. If a parameter has a static value, it will remain consistent across all uses of the deep link.

  2. Parameters with '@' - Profile Attributes: Parameters that include the '@' symbol, such as @{name}, signify values that will be pulled from profile attributes defined within the Netmera system. When utilizing these parameters, it's crucial to ensure that the corresponding profile attribute codes are correctly defined and exist within the Netmera system.

Sample Request

curl --location 'https://api.example.com/rest/3.0/sendNotification' \
--header 'X-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
    "notificationKey": "your_notification_key",
    "message": {
        "click": {
            "deeplink": "{end_point_url}?id=@{name}&surname=@{surname}&car=@{car}&gender=@{gender}",
                        "deeplinkCustomMapParams": {
                "car": {
                    "queryKey": "exid",
                    "queryMaps": {
                        "user1": "car1",
                        "user2": "car2",
                        "user3": "car3"
                    }
                },
                "surname": {
                    "queryKey": "msisdn",
                    "queryMaps": {
                        "userPhoneNumber1": "Surname1",
                        "userPhoneNumber2": "Surname2",
                        "userPhoneNumber3": "Surname3"
                    }
                },
                "gender": {
                    "queryKey": "email",
                    "queryMaps": {
                        "useremail1@example.com": "Male",
                        "useremail2@example.com": "Female",
                        "useremail3@example.com": "Other",
                        "useremail4@example.com" : "Prefer not to say"
                    }
                }
            }
        }

    },
    "target": {
        "extId": "targetUserExternalId"
    }
}'
Creating Transactional Messages
API & Config