Names are important.
IMO as long as the CustomEntityN is visible in the API, that N matters and people should be able to choose it.
Ideally from the beginning, Shotgun would have abstracted the underlying table name, and made people choose a unique camel-cased code, which would then be used for the default DisplayName. Right now, all custom entity types in the API are exposed as CustomEntityN, and in the UI it’s a mix, which is needlessly inconsistent and confusing. And why should devs have to commit Custom Entity numbers to memory?
Ideally for all new sites, people could choose a unique code and that would be the only name visible in the API.
For existing sites and backwards-compatibility, you could continue to allow people to query on CustomEntityN forever, but give the option of assigning a unique code. In most cases, I’m guessing people would use the DisplayName for that.