...

Text file src/github.com/go-openapi/loads/fixtures/bugs/1816/fixture-1816.yaml

Documentation: github.com/go-openapi/loads/fixtures/bugs/1816

     1swagger: '2.0'
     2info:
     3  version: "1.0.0"
     4  title: Service Manager
     5
     6schemes:
     7  - http
     8
     9produces:
    10  - application/vnd.cia.v1+json
    11
    12tags:
    13  - name: services
    14
    15basePath: /v1
    16
    17paths:
    18  /services:
    19    parameters:
    20      - name: "X-Request-Id"
    21        in: "header"
    22        description: Unique identifier associated with request
    23        required: true
    24        type: string
    25        format: uuid
    26    get:
    27      tags: [services]
    28      operationId: searchServices
    29      summary: Search for Services
    30      description: |
    31        To apply filter criteria use the following approach:
    32
    33        `?<field><operator><value>`
    34
    35        Example: `?name=Test`
    36
    37      parameters:
    38        - name: name
    39          in: query
    40          description: Search records by name
    41          required: false
    42          type: string
    43          minLength: 3
    44        - name: version
    45          in: query
    46          description: Search records by version
    47          required: false
    48          type: string
    49          minLength: 3
    50        - name: location
    51          in: query
    52          description: Search records by location
    53          required: false
    54          type: string
    55          minLength: 3
    56        - name: region
    57          in: query
    58          description: Search records by region
    59          required: false
    60          type: string
    61          minLength: 3
    62      responses:
    63        200:
    64          description: List of Services
    65          headers:
    66            X-Request-Id:
    67              description: Unique identifier associated with request
    68              type: string
    69              format: uuid
    70          schema:
    71            type: array
    72            items:
    73              $ref: "#/definitions/service_view"
    74        400:
    75          $ref: "#/responses/400"
    76        401:
    77          $ref: '#/responses/401'
    78        403:
    79          $ref: '#/responses/403'
    80        default:
    81          $ref: '#/responses/500'
    82
    83  /services/{serviceId}:
    84    parameters:
    85      - name: serviceId
    86        description: Unique identifier for Service
    87        in: path
    88        required: true
    89        type: string
    90        format: uuid
    91      - name: "X-Request-Id"
    92        in: "header"
    93        description: Unique identifier associated with request
    94        required: true
    95        type: string
    96        format: uuid
    97    get:
    98      tags: [services]
    99      operationId: viewService
   100      summary: View Service
   101      description: View Service
   102      responses:
   103        200:
   104          description: Service
   105          headers:
   106            X-Request-Id:
   107              description: Unique identifier associated with request
   108              type: string
   109              format: uuid
   110          schema:
   111            $ref: "#/definitions/service_view"
   112        400:
   113          $ref: "#/responses/400"
   114        401:
   115          $ref: '#/responses/401'
   116        403:
   117          $ref: '#/responses/403'
   118        404:
   119          $ref: '#/responses/404'
   120        default:
   121          $ref: '#/responses/500'
   122
   123  /services/{serviceId}/units:
   124    parameters:
   125      - name: serviceId
   126        description: Unique identifier for Service
   127        in: path
   128        required: true
   129        type: string
   130        format: uuid
   131      - name: "X-Request-Id"
   132        in: "header"
   133        description: Unique identifier associated with request
   134        required: true
   135        type: string
   136        format: uuid
   137    get:
   138      tags: [services]
   139      operationId: searchUnits
   140      summary: Search for Service Units
   141      description: |
   142        To apply filter criteria use the following approach:
   143
   144        `?<field><operator><value>`
   145
   146        Example: `?name=Test`
   147
   148      parameters:
   149        - name: name
   150          in: query
   151          description: Search records by name
   152          required: false
   153          type: string
   154          minLength: 3
   155        - name: type
   156          in: query
   157          description: Search records by type
   158          required: false
   159          type: string
   160          minLength: 3
   161      responses:
   162        200:
   163          description: List of Service Units
   164          headers:
   165            X-Request-Id:
   166              description: Unique identifier associated with request
   167              type: string
   168              format: uuid
   169          schema:
   170            type: array
   171            items:
   172              $ref: "#/definitions/unit_view"
   173        400:
   174          $ref: "#/responses/400"
   175        401:
   176          $ref: '#/responses/401'
   177        403:
   178          $ref: '#/responses/403'
   179        404:
   180          $ref: '#/responses/404'
   181        default:
   182          $ref: '#/responses/500'
   183
   184
   185  /services/{serviceId}/units/{unitId}:
   186    parameters:
   187      - name: serviceId
   188        description: Unique identifier for Service
   189        in: path
   190        required: true
   191        type: string
   192        format: uuid
   193      - name: unitId
   194        description: Unique identifier for Service Unit
   195        in: path
   196        required: true
   197        type: string
   198        format: uuid
   199      - name: "X-Request-Id"
   200        in: "header"
   201        description: Unique identifier associated with request
   202        required: true
   203        type: string
   204        format: uuid
   205    get:
   206      tags: [services]
   207      operationId: viewUnit
   208      summary: View Service Unit
   209      description: View Service Unit
   210      responses:
   211        200:
   212          description: Service Unit
   213          headers:
   214            X-Request-Id:
   215              description: Unique identifier associated with request
   216              type: string
   217              format: uuid
   218          schema:
   219            $ref: "#/definitions/unit_view"
   220        400:
   221          $ref: "#/responses/400"
   222        401:
   223          $ref: '#/responses/401'
   224        403:
   225          $ref: '#/responses/403'
   226        404:
   227          $ref: '#/responses/404'
   228        default:
   229          $ref: '#/responses/500'
   230
   231definitions:
   232
   233  service_view:
   234    title: Service View
   235    description: An order-able Service defined in Service Catalog.
   236    type: object
   237    properties:
   238      id:
   239        title: Service Identifier
   240        description: unique identifier for the service
   241        type: string
   242        format: uuid
   243        example: 3377f6e7-dd55-4639-bc54-65646fde2adc
   244      name:
   245        title: Service Name
   246        description: name for the service
   247        type: string
   248        example: OpenStack Service
   249      version:
   250        title: Service Version
   251        description: labeled variant of the service
   252        type: string
   253        example: Newton
   254      tenant_id:
   255        title: Service Providers Tenant
   256        description: The Tenant identifier for the Tenant providing the service
   257        type: string
   258        format: uuid
   259        example: 3377f6e7-dd55-4639-bc54-65646fde2adc
   260      location:
   261        title: Service Location
   262        description: location of the service
   263        type: string
   264        example: ALLN
   265      region:
   266        title: Service Region
   267        description: region of the service
   268        type: string
   269        example: US-EAST
   270      status:
   271        title: Service Status
   272        description: status of the service
   273        type: string
   274        enum: [CREATING, ACTIVE, UPDATING, DELETING, INACTIVE, DELETED, FAILED]
   275        example: ACTIVE
   276      tags:
   277        title: Service Tags
   278        description: tags to identify service properties
   279        type: array
   280        items:
   281          type: string
   282        x-omitempty: true
   283        example: [LA, ALPHA]
   284      metadata:
   285        title: Service Metadata
   286        description: metadata of the service
   287        type: object
   288        additionalProperties:
   289          type: string
   290      audit:
   291        $ref: "#/definitions/audit"
   292
   293  unit_view:
   294    title: Service Unit View
   295    description: A Service Unit for the Location defined in Service Catalog.
   296    type: object
   297    properties:
   298      id:
   299        title: Service Unit Identifier
   300        description: unique identifier for the service unit
   301        type: string
   302        format: uuid
   303        example: 3377f6e7-dd55-4639-bc54-65646fde2adc
   304      name:
   305        title: Service Unit Name
   306        description: name for the service unit
   307        type: string
   308        example: Example Service Unit
   309      type:
   310        title: Service Unit Type
   311        description: type of the service unit
   312        type: string
   313        example: VCPU
   314      description:
   315        title: Service Unit Description
   316        description: summary describing the service unit
   317        type: string
   318        example: Long description about the service unit
   319      cost:
   320        title: Service Unit Cost
   321        description: cost for the service unit
   322        type: number
   323        format: double
   324        example: 0.02
   325      period:
   326        title: Service Unit Cost Period
   327        description: cost period for the service unit
   328        type: string
   329        enum: [FLAT, HOURLY, MONTHLY]
   330        example: HOURLY
   331      cost_algorithm:
   332        title: Service Unit Consumption Cost Algorithm
   333        description: consumption cost algorithm for the service unit
   334        type: string
   335        enum: [SIMPLE_SUM, DAILY_MAX_AVG]
   336        example: SIMPLE_SUM
   337      quotas:
   338        title: Service Unit Quotas
   339        description: quotas defined for the service unit
   340        type: object
   341        additionalProperties:
   342          $ref: '#/definitions/quota'
   343      activated_at:
   344         title: Service Unit Cost Activation Timestamp
   345         description: >
   346             service unit activation date (inclusive) as YYYY-MM-DD with respect to the billing period
   347             always as the start of the billing period
   348         type: string
   349         example: 2018-02-01
   350      deactivated_at:
   351         title: Service Unit Cost Deactivation Timestamp
   352         description: >
   353             service unit deactivation date (exclusive) as YYYY-MM-DD with respect to the billing period
   354             - omitted if empty or the end of the billing period
   355         type: string
   356         example: 2018-03-01
   357      audit:
   358        $ref: "#/definitions/audit"
   359
   360  quota:
   361     title: Service Unit Quota
   362     description: quota details with values
   363     type: object
   364     properties:
   365       min:
   366         title: Minimum quota value
   367         type: number
   368         format: double
   369         minimum: 0.0
   370         example: 1.0
   371       max:
   372         title: Maximum quota value
   373         type: number
   374         format: double
   375         minimum: 0.0
   376         example: 1.0
   377       default:
   378         title: Default quota value
   379         type: number
   380         format: double
   381         minimum: 0.0
   382         example: 1.0
   383
   384  audit:
   385    title: Audit
   386    description: Audit trail details
   387    type: object
   388    properties:
   389      created_at:
   390        title: Created At
   391        description: timestamp when the record was created
   392        type: string
   393        format: date-time
   394        readOnly: true
   395      created_by:
   396        title: Created By
   397        description: entity that created the record
   398        type: string
   399        readOnly: true
   400      updated_at:
   401        title: Updated At
   402        description: timestamp when the record was updated
   403        type: string
   404        format: date-time
   405        readOnly: true
   406      updated_by:
   407        title: Updated By
   408        description: entity that updated the record
   409        type: string
   410        readOnly: true
   411
   412  error:
   413    title: Error
   414    description: |
   415      An error provides information about why the request failed.
   416    type: object
   417    required:
   418      - code
   419      - message
   420    properties:
   421      code:
   422        title: Code
   423        description: |
   424            Code identifies a specific type of error.
   425        type: string
   426      message:
   427        title: Message
   428        description: |
   429          The message provides details about the failure.
   430        type: string
   431
   432responses:
   433  400:
   434    description: |
   435      Invalid Request Error. Check error message in the response body for details.
   436    examples:
   437      application/json:
   438        code: EXAMPLE-001
   439        message: Missing required attribute 'name'.
   440    headers:
   441      X-Request-Id:
   442        description: Unique identifier associated with request
   443        type: string
   444        format: uuid
   445    schema:
   446      $ref: "#/definitions/error"
   447  401:
   448    description: |
   449      Authentication Failure
   450    examples:
   451      application/json:
   452        code: EXAMPLE-002
   453        message: Authentication failed bad password.
   454    headers:
   455      X-Request-Id:
   456        description: Unique identifier associated with request
   457        type: string
   458        format: uuid
   459    schema:
   460      $ref: "#/definitions/error"
   461  402:
   462    description: |
   463      Insufficient Funds
   464    examples:
   465      application/json:
   466        code: EXAMPLE-003
   467        message: Insufficient Funds to cover the cost of resource.
   468    headers:
   469      X-Request-Id:
   470        description: Unique identifier associated with request
   471        type: string
   472        format: uuid
   473    schema:
   474      $ref: "#/definitions/error"
   475  403:
   476    description: |
   477      Authorization Failure
   478    examples:
   479      application/json:
   480        code: EXAMPLE-004
   481        message: Not authorized to perform action.
   482    headers:
   483      X-Request-Id:
   484        description: Unique identifier associated with request
   485        type: string
   486        format: uuid
   487    schema:
   488      $ref: "#/definitions/error"
   489  404:
   490    description: |
   491      Resource not found
   492    examples:
   493      application/json:
   494        code: EXAMPLE-005
   495        message: Resource <id> does not exist.
   496    headers:
   497      X-Request-Id:
   498        description: Unique identifier associated with request
   499        type: string
   500        format: uuid
   501    schema:
   502      $ref: "#/definitions/error"
   503  409:
   504    description: |
   505      Conflict
   506    examples:
   507      application/json:
   508        code: EXAMPLE-006
   509        message: Resource already exists.
   510    headers:
   511      X-Request-Id:
   512        description: Unique identifier associated with request
   513        type: string
   514        format: uuid
   515    schema:
   516      $ref: "#/definitions/error"
   517  422:
   518    description: |
   519      Unprocessable Entity Failure
   520    examples:
   521      application/json:
   522        code: EXAMPLE-007
   523        message: Resource is not able to be updated.
   524    headers:
   525      X-Request-Id:
   526        description: Unique identifier associated with request
   527        type: string
   528        format: uuid
   529    schema:
   530      $ref: "#/definitions/error"
   531  500:
   532    description: |
   533      Internal Server Error. Check error entity in the response body for details.
   534    examples:
   535      application/json:
   536        code: EXAMPLE-009
   537        message: Internal server error.
   538    headers:
   539      X-Request-Id:
   540        description: Unique identifier associated with request
   541        type: string
   542        format: uuid
   543    schema:
   544      $ref: "#/definitions/error"
   545  503:
   546    description: |
   547      Service Unavailable
   548    examples:
   549      application/json:
   550        code: EXAMPLE-010
   551        message: Service Unavailable.
   552    headers:
   553      X-Request-Id:
   554        description: Unique identifier associated with request
   555        type: string
   556        format: uuid
   557    schema:
   558      $ref: "#/definitions/error"

View as plain text