github.com/thetreep/go-swagger@v0.0.0-20240223100711-35af64f14f01/fixtures/bugs/2919/edge-api/shared/authenticate.yml (about)

     1  ---
     2  
     3  parameters:
     4    authMethod:
     5      name: method
     6      in: query
     7      required: true
     8      type: string
     9      enum:
    10        - password
    11        - cert
    12        - ext-jwt
    13  paths:
    14    authenticate:
    15      parameters:
    16        - $ref: '#/parameters/authMethod'
    17      post:
    18        summary: Authenticate via a method supplied via a query string parameter
    19        description: |
    20          Allowed authentication methods include "password", "cert", and "ext-jwt"
    21        security: [ ]
    22        tags:
    23          - Authentication
    24        operationId: authenticate
    25        parameters:
    26          - name: auth
    27            in: body
    28            required: false
    29            schema:
    30              $ref: '#/definitions/authenticate'
    31        responses:
    32          '200':
    33            $ref: './current-api-session.yml/#/responses/detailCurrentAPISession'
    34          '400':
    35            $ref: './standard-responses.yml#/responses/badRequestResponse'
    36          '403':
    37            $ref: './standard-responses.yml#/responses/invalidAuthResponse'
    38  
    39    authenticate-mfa:
    40      post:
    41        summary: Complete MFA authentication
    42        description: Completes MFA authentication by submitting a MFA time based one time token or backup code.
    43        security:
    44          - ztSession: [ ]
    45        tags:
    46          - Authentication
    47          - MFA
    48        operationId: authenticateMfa
    49        parameters:
    50          - name: mfaAuth
    51            in: body
    52            required: true
    53            description: 'An MFA validation request'
    54            schema:
    55              $ref: '#/definitions/mfaCode'
    56        responses:
    57          '200':
    58            $ref: './standard-responses.yml#/responses/emptyResponse'
    59          '401':
    60            $ref: './standard-responses.yml#/responses/emptyResponse'
    61  responses:
    62    $ref: 'standard-responses.yml#/responses'
    63  
    64  definitions:
    65    mfaCode:
    66      type: object
    67      required:
    68        - code
    69      properties:
    70        code:
    71          type: string
    72    password:
    73      type: string
    74      minLength: 5
    75      maxLength: 100
    76    password-nullable:
    77      type: string
    78      minLength: 5
    79      maxLength: 100
    80      x-nullable: true
    81    username:
    82      type: string
    83      minLength: 4
    84      maxLength: 100
    85    username-nullable:
    86      type: string
    87      minLength: 4
    88      maxLength: 100
    89      x-nullable: true
    90    envInfo:
    91      description: Environment information an authenticating client may provide
    92      properties:
    93        os:
    94          type: string
    95        arch:
    96          type: string
    97        osRelease:
    98          type: string
    99        osVersion:
   100          type: string
   101      type: object
   102    sdkInfo:
   103      description: SDK information an authenticating client may provide
   104      properties:
   105        type:
   106          type: string
   107        branch:
   108          type: string
   109        version:
   110          type: string
   111        revision:
   112          type: string
   113        appId:
   114          type: string
   115        appVersion:
   116          type: string
   117      type: object
   118    authenticate:
   119      type: object
   120      description: A generic authenticate object meant for use with the /authenticate path. Required fields depend on authentication method.
   121      properties:
   122        username:
   123          $ref: '#/definitions/username'
   124        password:
   125          $ref: '#/definitions/password'
   126        envInfo:
   127          $ref: '#/definitions/envInfo'
   128        sdkInfo:
   129          $ref: '#/definitions/sdkInfo'
   130        configTypes:
   131          $ref: 'config-types.yml#/definitions/configTypes'