简体   繁体   中英

swagger.io: Not a valid parameter definition on header required property

I'm documenting an API on swagger.io. When I try to define session_token as a required string property in the header, I get the error:

在此处输入图片说明

My definition matches the sample in the documentation so I'm not sure what s causing the issue.

Snippet

/customerVerifyLogin:
    post:
      summary: Validate verification code sent to authenticate login. Returns session_token
      parameters:
        - name: Authorization
          in: header
          type: string
          required: true
          default: Basic YWRtaW46WDRCbzViWnZTamlXU0hoZDFMOGNpUHkyUERzekUwU3I=
        - name: session_type
          in: header
          type: string
          enum: 
            - android
            - ios
          required: true
        - name: VerificationCode
          in: body
          type: string
          required: true
          description:
          schema:
            type: object
            properties:
              phone:
                type: string
                description: The mobile number to which the verification was sent.
              device_id:
                type: string
                description: ID that uniquely identifies the device
              code:
                in: body
                type: integer
                format: int32
                required: true
                description: Verification code to be validated.
      responses:
        200:
          description: Customer logged-in successfully.
          schema:
            $ref: '#/definitions/Customer'
      tags:
        - Verification
        - Login

a couple errors in your document:

  • VerificationCode shows type: string and schema: . For a body param ( in: body ), you can only use schema . Just delete the type: string .
  • Your definition for the property code has some unwanted fields:
    • Remove in: body . That's probably a copy/paste error
    • Remove required: true . That's not the correct way to say a property is required, move it to a sibling of the properties object like such:
 required: - code properties: code: # the rest of your definition 

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM