При определении API с помощью Grape есть очень удобный способ проверки наличия и типа параметров, например:
params do
requires :param1, type: String
optional :param1, type: Integer
end
Однако я не вижу удобного способа указать, что два параметра являются взаимоисключающими. Например, это будет что-то вроде:
params do
requires :creatureName, type: String
requires
either :scaleType, type: String
or :furType, type: String
end
Меня интересуют предложения по наиболее удобному способу обойти это.