How can I denote decimal floating point in swagger specs?

ぃ、小莉子 提交于 2021-02-08 13:53:55

问题


I would like to denote decimal with 2 places and decimal with 1 place in my api documentation. I'm using swagger 2.0, Is there inbuilt defined type or any other 'round' parameter in the specs, or my only option is to use 'x-' extension?


回答1:


OpenAPI (fka Swagger) Specification uses a subset of JSON Schema to describe the data types.

If the parameter is passed as a number, you can try using multipleOf as suggested in this Q&A:

type: number
multipleOf: 0.1     # up to 1 decimal place,  e.g. 4.2
# multipleOf: 0.01  # up to 2 decimal places, e.g. 4.25

Hovewer, multipleOf validation against floating-point numbers can be unreliable due to floating-point math specifics.


If your number if passed as a string, you can specify a regex pattern for the desired number format:

type: string
pattern: your_regex


In any case, you can also document any restrictions verbally in the description.



来源:https://stackoverflow.com/questions/44968026/how-can-i-denote-decimal-floating-point-in-swagger-specs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!