В настоящее время я создаю CRUD для пользователей в моей системе, есть два типа пользователей (родительские пользователи и дочерние пользователи).Родительский пользователь может получить / обновить / удалить разрешения своих детей, поэтому я подумал создать следующие конечные точки на моем API:
GET / parent / {parentId} / childs / {childId} / permissions
PUT / parent / {parentId} / childs / {childId} / permissions
УДАЛИТЬ / parent / {parentId} / childs / {childId} / permissions / {allowId}
Но существует третий типпользователя (администратора), который может получать / обновлять / удалять разрешения любого пользователя, которого он хочет, поэтому я думал о создании другого набора конечных точек:
GET / users / {userId} / permissions
PUT/ users / {userId} / permissions
DELETE / users / {userId} / permissions / {grantId}
Теперь проблема с этим подходом состоит в том, что у меня будет много конечных точек, которые делают то же самое, поэтому мой вопрос: существует ли лучшая практика для конечных точек покоя, когда есть разные роли, или нормально иметь несколько конечных точек, которые выполняют одно и то же действие?