Hello. I'm a WordPress plugin developer. When I was adding a function using the Constant Contact V3 API, I encountered a weird problem. First, I added an email list through the usual Constant Contact dashboard. I gave the list a Japanese title "テスト" (meaning "Test" in English). Then, I tried to retrieve the lists collection using the API. While lists with English titles were perfectly displayed, all of the lists with Japanese titles like "テスト" were completely garbled. For example, "テスト" were shown as "テスト". I wondered and checked the raw JSON response before being decoded with PHP json_decode() function. The following is the part of the response representing the "テスト" list: {
"list_id" : "dae75b20-62a1-11e9-9ce0-d4ae52843d28",
"name" : "\u00E3\u0083\u0086\u00E3\u0082\u00B9\u00E3\u0083\u0088",
"favorite" : false,
"created_at" : "2019-04-19T08:51:31-04:00",
"updated_at" : "2019-04-19T08:51:31-04:00"
} Something is wrong with the name field value. This string obviously doesn't represent the correct code points. "テスト" should be represented as "\u30c6\u30b9\u30c8" in Unicode code points. https://codepoints.net/U+30C6 テ https://codepoints.net/U+30b9 ス https://codepoints.net/U+30c8 ト "\u00E3\u0083\u0086\u00E3\u0082\u00B9\u00E3\u0083\u0088" seems to be UTF-8 representations of the characters, not Unicode code points. According to RFC 8259, when you represent a character as "\uXXXX" form, it must be "four hexadecimal digits that encode the character's code point", so using UTF-8 encoded values there is not allowed. I believe that is not an intended behavior and hope the API team will address this problem. Sorry in advance if this is a know issue already someone has reported.
... View more