Hello!
Try to execute this snippet in Google Ads Scripts and in Google Chrome Console (or another JavaScript environment)
JSON.stringify(JSON.parse('{"0xektA1h8Zs": 1}'))
In Scripts you will get {14: 1} object as a result after JSON.parse
In Chrome you will get {"0xektA1h8Zs": 1}
But if you execute this example with another string, it will be ok in both environments. For example this snippet.
JSON.stringify(JSON.parse('{"5jvKjG0D-kU": 1}'))
As it turned out, we have a lot of issues with video (adMedia) creation because of this bug since our API returns JSON object where YouTube video ids are keys.
P. S
We have more examples where a string turns to an integer, but it's a sensitive information and I can only show you them securely.