Forum Discussion

erik_lundgren's avatar
erik_lundgren
Active Member II
2 months ago

Key-value pairs in In-App-Message drag and drop editor?

Hi!

We have several apps connected to a single App Group in Braze. To send an in-app message to a specific app, we rely on key-value pairs in the traditional in-app message editor.

We want to use the drag-in-drop editor for in-app messages, but I can't find an option to set key-value pairs in that experience. Am I missing something? Or is this a missing feature?

  • Kristijan's avatar
    Kristijan
    Practitioner III

    Maybe a stupid question - but don't you have any ways to distinguish which app a user has? Either with the default attributes of Braze OR by having custom attributes?

    Then you would be able to segment on campaign level which IAM goes to which app's users?

    • erik_lundgren's avatar
      erik_lundgren
      Active Member II

      Hi Kristijan! It's not a stupid question, but the problem is that we have multiple apps connected to the same app group, and some users have more than one app installed.

      Using segments, I can filter out users who only use one app. And target them. But I can't use segments to target only a single app with a message if the user has more than one app installed.

  • DavidO's avatar
    DavidO
    Strategist II

    Hey erik_lundgren 

    I just had a look and couldn't see them either. I tried playing with some of the personalisation options such as API-triggered properties but I'm not confident this would work.

    There is some info for passing key-value pairs with API-triggered IAMs in the docs but I don't think this will solve your issue either.

    Key-Value Pairs (braze.com)

    Be interested to know others suggestions?

    I would contact Braze support and see if they have a suggestion. My only other thought is you hack the system by building in the Drag & Drop editor, export the HTML into a custom IAM and then you can add your key value pairs.

    • erik_lundgren's avatar
      erik_lundgren
      Active Member II

      Hi David!

      "Braze allows you to send custom-defined string key-value pairs, known as extras. To access your extras in API-triggered and scheduled API-triggered campaigns, in the dashboard, set a key as "example_key" and a value as "$json:{ "foo": 1, "bar": 1}". This will result in a developer console output of "extras": {"test": {"foo": 1, "bar": 1 }."

      To be honest, I'm not sure I understand what this means. :) Is it a way to send key-value pairs to the campaign or a way to have them replicate downstream to the app?

      And yes! Custom HTML using the traditional editor is probably the way to go.

      • DavidO's avatar
        DavidO
        Strategist II

        I have not had experience using this but you are correct. If you enter "Key: mobileApp" and "Value: campaign" in Braze, in the backend my understanding is it would be sent as a JSON object such as, $json:{"key": "mobileApp", "value": "campaign"}.

        The fact it says it will result in a developer console output of "extras" makes me think this won't solve your problem, as this appears to be logging only to the developer console, which won't trigger anything if that's case.