swagger: '2.0'
info:
  description: 'blah'
  version: 1.0.0
  title: sample spec
host: fake.site.com
tags: []
schemes:
  - https
paths:
  /numberdata:
    post:
      operationId: getNumberHolder
      consumes:
        - application/json
      produces:
        - application/json
      parameters: []
      responses:
        '200':
          description: successful operation
          schema:
            $ref: '#/definitions/BaseObj'
securityDefinitions: {}
definitions:
  BaseObj:
    type: object
    discriminator: object_type
    required:
      - id
      - object_type
    properties:
      id:
        type: integer
        format: int64
      object_type:
        type: string
  SubObjType:
    type: string
    enum:
      - daily
      - monthly
      - quarterly
      - yearly
  SubObj:
    x-discriminator-value: sub-obj
    allOf:
      - $ref: '#/definitions/BaseObj'
      - type: object
        discriminator: sub_obj_type
        required:
          - sub_obj_type
        properties:
          sub_obj_type:
            $ref: '#/definitions/SubObjType'
          name:
            type: string
  DailySubObj:
    x-discriminator-value: daily
    allOf:
      - $ref: '#/definitions/SubObj'
      - type: object
        properties:
          day_of_month:
            type: integer
            format: int32