Прежде чем продолжать, нужно подчеркнуть важность того, что значение кода ошибки должно быть уникальным, специфичным и предназначенным для восприятия машиной, а не человеком.
Однозначно определить, что значит «хороший» API, сложно, но обычно они отличаются функциональностью, выразительностью, простотой и предсказуемостью
Нередко это свойство интерфейсов называют гибкостью, подразумевая, что те из них, где пользователи могут свободно приспосабливаться к изменениям, являются гибкими, а те, где даже небольшие корректировки (например, переименование поля) приводят к полному сбою — ригидными.