Я новичок в RAML и недавно унаследовал проект, который мне нужно обновить, чтобы отразить новые спецификации.
Это довольно простой документ RAML, все, что я делаю, это добавляю новое свойство body, и я хотел бы показать несколько примеров.
Раньше для публикации требовалось свойство codeType1.
Теперь есть новое свойство codeType2, и требуется одно из двух. Таким образом, в теле сообщения должен быть либо codeType1, либо codeType2. Я не знаю, как выразить это требование в RAML.
Также я хотел бы привести два примера для каждого из сценариев.
Мне удалось добавить новый codeType, но я не знаю, как выразить правило проверки.
Вот что у меня сейчас:
#%RAML 1.0
title: Auth Service
version: v1
protocols: [HTTPS]
mediaType: application/json
/auth:
post:
description: Authenticate a client to the API.
body:
application/json:
properties:
{
"codeType1": {
type: string,
required: true
},
"codeType2":{
type: string,
required: true
},
"userId":{
type: string,
required: true
},
"password":{
type: string,
required: true
},
}
example:
{
"codeType1":"994056",
"codeType2":"##0023",
"userId":"[email protected]",
"password":"Abc123!",
}
responses:
200:
description: Successful authentication.
body:
application/json:
example:
{
"status": "success",
"message": "Authentication success",
"data": {
"token": "SDKFHDSLFDJSFDKJFDHSFLJKFHLSKFSFLKFLSDFJHSLHFSDF"
}
}