Yeah I am more laughing that once encoded in JSON as { "p": 2256, "dp": 2 } you are using 2 floating point numbers. But JSON, and indeed JS wasn't designed.
To be clear, I wasn't advocating for flexible decimal points. There is no "dp" parameter in the solution I was proposing. It's just documented in the API that "price" is denominated in cents (or satoshis or whatever you want)
If you're doing ads and going for millicents, something like $0.01234 should be encoded as 1234 millicents.
Obviously you have to agree on what you're measuring in the API, you can't have some values be millicents and others cents.