Forum Discussion

UncleMoose's avatar
UncleMoose
Regular Visitor
4 years ago

Allow yaml to define enum with different name and value

A common practice is to use enum to define coded persistence values such as:

 

Status:

   type: string

   enum:

   - name: ABANDONED

     value: A

  - name: ISSUED

    value: I

 

However this generates a JSON object as the value 

ABANDONED_A("{name: ABANDONED, value: A}")

 

Is this not possible with OAS3?

  • HKosova's avatar
    HKosova
    SmartBear Alumni (Retired)

    Is this not possible with OAS3?


    OpenAPI 3.0 does not have a way to annotate individual enum values, but this is possible in OpenAPI 3.1 using oneOf + const (once tooling support is available):

    Status:
      oneOf:
        - title: ABANDONED
          const: A
        - title: ISSUED
          const: I

     

    • gtludwig's avatar
      gtludwig
      Visitor

      I am trying to implement this as well in my open API specification, but IntelliJ is marking "const" as a prohibited property.

      • nmrao's avatar
        nmrao
        Champion Level 3
        That could be intellij's limitation.