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.
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 â“
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 "â".