3 Replies Latest reply on Sep 10, 2018 4:42 PM by Lito Nicolai

    "Update Program" doesn't encode special characters correctly (specifically the em dash – as opposed to the hyphen - )

    Lito Nicolai

      Our Ticket:

      Repro steps:
      1. Have an existing program in Marketo.
      2. Update the name to include this dash – via the "Update Program" card.
      3. The name in Marketo will now contain – instead of –
      4. Creating a program with – via the Marketo UI does not result in the same issue.

      This may be affecting more than just the Update Program card. Maybe look into the other Program related actions and make sure they don't do the same thing.

       

      Dev response:

      The api expects data to be sent with "Content-Type: application/x-www-form-urlencoded" Header.

      So including this header encodes the em dash but not the hyphen.
      Without this header the data is not getting updated.
      I tried adding "charset:UTF-8" , base64 encoding and percent encoding nothing worked.
      It is a limitation on Marketo API

       

      The problem with the API is the data should not be encoded but the header "Content-Type: application/x-www-form-urlencoded" encodes em dash only not the hyphen.

      That’s why — changes into –

       

      Solution Path:

      We are looking for a way to successfully update program Titles with the provided string, and without encoding changing the input which switches the em-dash "–" to a-acute "â".