Прежде чем продолжать, нужно подчеркнуть важность того, что значение кода ошибки должно быть уникальным, специфичным и предназначенным для восприятия машиной, а не человеком.
Однозначно определить, что значит «хороший» API, сложно, но обычно они отличаются функциональностью, выразительностью, простотой и предсказуемостью
https://ru.wikipedia.org/wiki/Парадокс_дней_рождения.