Один из способов взглянуть на ваш API-интерфейс - забыть о базовой базе данных, но подумать о том, как его использует клиент API.
Если клиент API выполняет запрос GET, происходит 2 вещи:
- Возвращается существующая запись
- Создается новая запись и возвращается
Клиенту на самом деле может быть все равно, произошла ли 1 или 2.С точки зрения клиента, это может выглядеть так, как будто ресурс всегда существовал (даже если он был технически только что создан).
Так что, пока нет дополнительной информации, которая должна быть отправлена вместе с запросом POST, онможет быть хорошо использовать запрос GET для обоих случаев.