Извиняюсь за длинное загаданное название вопроса, не совсем уверен, как выразить его кратко!
Я пишу API и хочу сделать все как можно более правильно.У меня есть коллекция объектов, содержащая следующие данные:
{
_id: ObjectID(...),
itemID: 1000,
C-values: [
{
createdAt: 2018-01-01,
updatedAt: 2018-04-29,
c1: 10.412,
c2: 91283
},
...
]
}
Запрос, который я хотел бы выполнить: с учетом itemID и даты найти объект с соответствующим itemID, а затем вернуть объект изМассив значений C, который был «самым новым» на заданную дату.
Мой вопрос не о реализации логики запроса, а о том, как я должен назвать URL-адрес конечной точки?(Я думаю, но, возможно, ошибаюсь, важно, что itemID технически не является первичным ключом этой базы данных)
Мои мысли на данный момент таковы:
API/items/c-value
? itemID=1000
& date=2018-02-01
API/items/by-item-id/:itemID/c-values
? date=2018-02-01
API/items/c-value/:itemID/:date
Я вполненовичок в дизайне API и приветствовал бы любой вклад в то, что является правильным ответом, или если есть несколько правильных ответов, то какой из них выбрать и почему.
Cheers,
P