swagger-blocks icon indicating copy to clipboard operation
swagger-blocks copied to clipboard

How to set either one parameter be required?

Open 02040402 opened this issue 5 years ago • 1 comments

This way can set the special parameter required:

parameter do
  key :name, :id
  key :in, :path
  key :description, 'ID of pet to fetch'
  key :required, true
  key :type, :integer
  key :format, :int64
end

But if I want to let one of two parameters(either one is ok) be required as:

parameter do
  key :name, :id
  key :in, :path
  key :description, 'ID of pet to fetch'
  key :required, true
  key :type, :integer
  key :format, :int64
end

parameter do
  key :name, :user_id
  key :in, :path
  key :description, 'User ID of pet to fetch'
  key :required, true
  key :type, :integer
  key :format, :int64
end

Since each of them has key :required, true themselves. How to do in this case?

02040402 avatar Jul 23 '19 09:07 02040402

Hey, did you find a solution?

UPDATE: I've solved mine like this:

 one_of do
     key :required, %i[id]
 end

 one_of do
     key :required, %i[product_id]
 end

hcyildirim avatar Sep 30 '20 15:09 hcyildirim