github.com/w3security/vervet/v5@v5.3.1-0.20230618081846-5bd9b5d799dc/testdata/output/2021-06-07~experimental/spec.json (about)

     1  {
     2    "components": {
     3      "headers": {
     4        "DeprecationHeader": {
     5          "description": "A header containing the deprecation date of the underlying endpoint. For more information, please refer to the deprecation header RFC:\nhttps://tools.ietf.org/id/draft-dalal-deprecation-header-01.html\n",
     6          "example": "2021-07-01T00:00:00Z",
     7          "schema": {
     8            "format": "date-time",
     9            "type": "string"
    10          }
    11        },
    12        "RequestIdResponseHeader": {
    13          "description": "A header containing a unique id used for tracking this request. If you are reporting an issue to W3Security it's very helpful to provide this ID.\n",
    14          "example": "4b58e274-ec62-4fab-917b-1d2c48d6bdef",
    15          "schema": {
    16            "format": "uuid",
    17            "type": "string"
    18          }
    19        },
    20        "SunsetHeader": {
    21          "description": "A header containing the date of when the underlying endpoint will be removed. This header is only present if the endpoint has been deprecated. Please refer to the RFC for more information:\nhttps://datatracker.ietf.org/doc/html/rfc8594\n",
    22          "example": "2021-08-02T00:00:00Z",
    23          "schema": {
    24            "format": "date-time",
    25            "type": "string"
    26          }
    27        },
    28        "VersionRequestedResponseHeader": {
    29          "description": "A header containing the version of the endpoint requested by the caller.",
    30          "example": "2021-06-04",
    31          "schema": {
    32            "$ref": "#/components/schemas/QueryVersion"
    33          }
    34        },
    35        "VersionServedResponseHeader": {
    36          "description": "A header containing the version of the endpoint that was served by the API.",
    37          "example": "2021-06-04",
    38          "schema": {
    39            "$ref": "#/components/schemas/ActualVersion"
    40          }
    41        },
    42        "VersionStageResponseHeader": {
    43          "description": "A header containing the version stage of the endpoint. This stage describes the guarantees w3security provides surrounding stability of the endpoint.\n",
    44          "schema": {
    45            "enum": [
    46              "wip",
    47              "experimental",
    48              "beta",
    49              "ga",
    50              "deprecated",
    51              "sunset"
    52            ],
    53            "example": "ga",
    54            "type": "string"
    55          }
    56        }
    57      },
    58      "parameters": {
    59        "EndingBefore": {
    60          "description": "Return the page of results immediately before this cursor",
    61          "example": "v1.eyJpZCI6IjExMDAifQo=",
    62          "in": "query",
    63          "name": "ending_before",
    64          "schema": {
    65            "type": "string"
    66          }
    67        },
    68        "Limit": {
    69          "description": "Number of results to return per page",
    70          "example": 10,
    71          "in": "query",
    72          "name": "limit",
    73          "schema": {
    74            "default": 10,
    75            "format": "int32",
    76            "maximum": 100,
    77            "minimum": 10,
    78            "multipleOf": 10,
    79            "type": "integer"
    80          }
    81        },
    82        "Pagination": {
    83          "description": "The parameters used to paginate through a list of results from the API.",
    84          "in": "query",
    85          "name": "page",
    86          "schema": {
    87            "additionalProperties": false,
    88            "properties": {
    89              "after": {
    90                "type": "string"
    91              },
    92              "before": {
    93                "type": "string"
    94              },
    95              "size": {
    96                "format": "int32",
    97                "type": "integer"
    98              }
    99            },
   100            "type": "object"
   101          }
   102        },
   103        "StartingAfter": {
   104          "description": "Return the page of results immediately after this cursor",
   105          "example": "v1.eyJpZCI6IjEwMDAifQo=",
   106          "in": "query",
   107          "name": "starting_after",
   108          "schema": {
   109            "type": "string"
   110          }
   111        },
   112        "Version": {
   113          "description": "The requested version of the endpoint to process the request",
   114          "example": "2021-06-04",
   115          "in": "query",
   116          "name": "version",
   117          "required": true,
   118          "schema": {
   119            "$ref": "#/components/schemas/QueryVersion"
   120          }
   121        }
   122      },
   123      "responses": {
   124        "400": {
   125          "content": {
   126            "application/vnd.api+json": {
   127              "schema": {
   128                "$ref": "#/components/schemas/ErrorDocument"
   129              }
   130            }
   131          },
   132          "description": "Bad Request: A parameter provided as a part of the request was invalid.",
   133          "headers": {
   134            "deprecation": {
   135              "$ref": "#/components/headers/DeprecationHeader"
   136            },
   137            "w3security-request-id": {
   138              "$ref": "#/components/headers/RequestIdResponseHeader"
   139            },
   140            "w3security-version-lifecycle-stage": {
   141              "$ref": "#/components/headers/VersionStageResponseHeader"
   142            },
   143            "w3security-version-requested": {
   144              "$ref": "#/components/headers/VersionRequestedResponseHeader"
   145            },
   146            "w3security-version-served": {
   147              "$ref": "#/components/headers/VersionServedResponseHeader"
   148            },
   149            "sunset": {
   150              "$ref": "#/components/headers/SunsetHeader"
   151            }
   152          }
   153        },
   154        "401": {
   155          "content": {
   156            "application/vnd.api+json": {
   157              "schema": {
   158                "$ref": "#/components/schemas/ErrorDocument"
   159              }
   160            }
   161          },
   162          "description": "Unauthorized: the request requires an authentication token or a token with more permissions.",
   163          "headers": {
   164            "deprecation": {
   165              "$ref": "#/components/headers/DeprecationHeader"
   166            },
   167            "w3security-request-id": {
   168              "$ref": "#/components/headers/RequestIdResponseHeader"
   169            },
   170            "w3security-version-lifecycle-stage": {
   171              "$ref": "#/components/headers/VersionStageResponseHeader"
   172            },
   173            "w3security-version-requested": {
   174              "$ref": "#/components/headers/VersionRequestedResponseHeader"
   175            },
   176            "w3security-version-served": {
   177              "$ref": "#/components/headers/VersionServedResponseHeader"
   178            },
   179            "sunset": {
   180              "$ref": "#/components/headers/SunsetHeader"
   181            }
   182          }
   183        },
   184        "404": {
   185          "content": {
   186            "application/vnd.api+json": {
   187              "schema": {
   188                "$ref": "#/components/schemas/ErrorDocument"
   189              }
   190            }
   191          },
   192          "description": "Not Found: The resource being operated on could not be found.",
   193          "headers": {
   194            "deprecation": {
   195              "$ref": "#/components/headers/DeprecationHeader"
   196            },
   197            "w3security-request-id": {
   198              "$ref": "#/components/headers/RequestIdResponseHeader"
   199            },
   200            "w3security-version-lifecycle-stage": {
   201              "$ref": "#/components/headers/VersionStageResponseHeader"
   202            },
   203            "w3security-version-requested": {
   204              "$ref": "#/components/headers/VersionRequestedResponseHeader"
   205            },
   206            "w3security-version-served": {
   207              "$ref": "#/components/headers/VersionServedResponseHeader"
   208            },
   209            "sunset": {
   210              "$ref": "#/components/headers/SunsetHeader"
   211            }
   212          }
   213        },
   214        "500": {
   215          "content": {
   216            "application/vnd.api+json": {
   217              "schema": {
   218                "$ref": "#/components/schemas/ErrorDocument"
   219              }
   220            }
   221          },
   222          "description": "Internal Server Error: An error was encountered while attempting to process the request.",
   223          "headers": {
   224            "deprecation": {
   225              "$ref": "#/components/headers/DeprecationHeader"
   226            },
   227            "w3security-request-id": {
   228              "$ref": "#/components/headers/RequestIdResponseHeader"
   229            },
   230            "w3security-version-lifecycle-stage": {
   231              "$ref": "#/components/headers/VersionStageResponseHeader"
   232            },
   233            "w3security-version-requested": {
   234              "$ref": "#/components/headers/VersionRequestedResponseHeader"
   235            },
   236            "w3security-version-served": {
   237              "$ref": "#/components/headers/VersionServedResponseHeader"
   238            },
   239            "sunset": {
   240              "$ref": "#/components/headers/SunsetHeader"
   241            }
   242          }
   243        }
   244      },
   245      "schemas": {
   246        "ActualVersion": {
   247          "description": "Resolved API version",
   248          "pattern": "^((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?)$",
   249          "type": "string"
   250        },
   251        "Error": {
   252          "additionalProperties": false,
   253          "example": {
   254            "detail": "Not Found",
   255            "status": "404"
   256          },
   257          "properties": {
   258            "detail": {
   259              "description": "A human-readable explanation specific to this occurrence of the problem.",
   260              "example": "The request was missing these required fields: ...",
   261              "type": "string"
   262            },
   263            "id": {
   264              "description": "A unique identifier for this particular occurrence of the problem.",
   265              "example": "f16c31b5-6129-4571-add8-d589da9be524",
   266              "format": "uuid",
   267              "type": "string"
   268            },
   269            "meta": {
   270              "additionalProperties": true,
   271              "example": {
   272                "key": "value"
   273              },
   274              "type": "object"
   275            },
   276            "source": {
   277              "additionalProperties": false,
   278              "example": {
   279                "pointer": "/data/attributes"
   280              },
   281              "properties": {
   282                "parameter": {
   283                  "description": "A string indicating which URI query parameter caused the error.",
   284                  "example": "param1",
   285                  "type": "string"
   286                },
   287                "pointer": {
   288                  "description": "A JSON Pointer [RFC6901] to the associated entity in the request document.",
   289                  "example": "/data/attributes",
   290                  "type": "string"
   291                }
   292              },
   293              "type": "object"
   294            },
   295            "status": {
   296              "description": "The HTTP status code applicable to this problem, expressed as a string value.",
   297              "example": "400",
   298              "pattern": "^[45]\\d\\d$",
   299              "type": "string"
   300            }
   301          },
   302          "required": [
   303            "status",
   304            "detail"
   305          ],
   306          "type": "object"
   307        },
   308        "ErrorDocument": {
   309          "additionalProperties": false,
   310          "example": {
   311            "errors": [
   312              {
   313                "detail": "Permission denied for this resource",
   314                "status": "403"
   315              }
   316            ],
   317            "jsonapi": {
   318              "version": "1.0"
   319            }
   320          },
   321          "properties": {
   322            "errors": {
   323              "example": [
   324                {
   325                  "detail": "Permission denied for this resource",
   326                  "status": "403"
   327                }
   328              ],
   329              "items": {
   330                "$ref": "#/components/schemas/Error"
   331              },
   332              "minItems": 1,
   333              "type": "array"
   334            },
   335            "jsonapi": {
   336              "$ref": "#/components/schemas/JsonApi"
   337            }
   338          },
   339          "required": [
   340            "jsonapi",
   341            "errors"
   342          ],
   343          "type": "object"
   344        },
   345        "HelloWorld": {
   346          "additionalProperties": false,
   347          "properties": {
   348            "attributes": {
   349              "additionalProperties": false,
   350              "properties": {
   351                "message": {
   352                  "type": "string"
   353                },
   354                "requestSubject": {
   355                  "additionalProperties": false,
   356                  "properties": {
   357                    "clientId": {
   358                      "format": "uuid",
   359                      "type": "string"
   360                    },
   361                    "publicId": {
   362                      "format": "uuid",
   363                      "type": "string"
   364                    },
   365                    "type": {
   366                      "type": "string"
   367                    }
   368                  },
   369                  "required": [
   370                    "publicId",
   371                    "type"
   372                  ],
   373                  "type": "object"
   374                }
   375              },
   376              "required": [
   377                "message",
   378                "requestSubject"
   379              ],
   380              "type": "object"
   381            },
   382            "id": {
   383              "format": "uuid",
   384              "type": "string"
   385            },
   386            "type": {
   387              "type": "string"
   388            }
   389          },
   390          "required": [
   391            "type",
   392            "id",
   393            "attributes"
   394          ],
   395          "type": "object"
   396        },
   397        "JsonApi": {
   398          "additionalProperties": false,
   399          "example": {
   400            "version": "1.0"
   401          },
   402          "properties": {
   403            "version": {
   404              "description": "Version of the JSON API specification this server supports.",
   405              "example": "1.0",
   406              "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)$",
   407              "type": "string"
   408            }
   409          },
   410          "required": [
   411            "version"
   412          ],
   413          "type": "object"
   414        },
   415        "LinkProperty": {
   416          "example": "https://example.com/api/resource",
   417          "oneOf": [
   418            {
   419              "description": "A string containing the link’s URL.",
   420              "example": "https://example.com/api/resource",
   421              "type": "string"
   422            },
   423            {
   424              "additionalProperties": false,
   425              "example": {
   426                "href": "https://example.com/api/resource"
   427              },
   428              "properties": {
   429                "href": {
   430                  "description": "A string containing the link’s URL.",
   431                  "example": "https://example.com/api/resource",
   432                  "type": "string"
   433                },
   434                "meta": {
   435                  "$ref": "#/components/schemas/Meta"
   436                }
   437              },
   438              "required": [
   439                "href"
   440              ],
   441              "type": "object"
   442            }
   443          ]
   444        },
   445        "Links": {
   446          "additionalProperties": false,
   447          "properties": {
   448            "first": {
   449              "$ref": "#/components/schemas/LinkProperty"
   450            },
   451            "last": {
   452              "$ref": "#/components/schemas/LinkProperty"
   453            },
   454            "next": {
   455              "$ref": "#/components/schemas/LinkProperty"
   456            },
   457            "prev": {
   458              "$ref": "#/components/schemas/LinkProperty"
   459            },
   460            "related": {
   461              "$ref": "#/components/schemas/LinkProperty"
   462            },
   463            "self": {
   464              "$ref": "#/components/schemas/LinkProperty"
   465            }
   466          },
   467          "type": "object"
   468        },
   469        "Meta": {
   470          "additionalProperties": true,
   471          "description": "Free-form object that may contain non-standard information.",
   472          "example": {
   473            "key1": "value1",
   474            "key2": {
   475              "sub_key": "sub_value"
   476            },
   477            "key3": [
   478              "array_value1",
   479              "array_value2"
   480            ]
   481          },
   482          "type": "object"
   483        },
   484        "Project": {
   485          "additionalProperties": false,
   486          "properties": {
   487            "attributes": {
   488              "additionalProperties": false,
   489              "properties": {
   490                "created": {
   491                  "description": "The date that the project was created on",
   492                  "example": "2021-05-29T09:50:54.014Z",
   493                  "type": "string"
   494                },
   495                "hostname": {
   496                  "description": "The hostname for a CLI project, null if not set",
   497                  "nullable": true,
   498                  "type": "string"
   499                },
   500                "name": {
   501                  "type": "string"
   502                },
   503                "origin": {
   504                  "description": "The origin the project was added from",
   505                  "example": "github",
   506                  "type": "string"
   507                },
   508                "status": {
   509                  "description": "Describes if a project is currently monitored or it is de-activated",
   510                  "example": "active",
   511                  "type": "string"
   512                },
   513                "type": {
   514                  "description": "The package manager of the project",
   515                  "example": "maven",
   516                  "type": "string"
   517                }
   518              },
   519              "required": [
   520                "name",
   521                "created",
   522                "origin",
   523                "type",
   524                "status"
   525              ],
   526              "type": "object"
   527            },
   528            "id": {
   529              "description": "The ID.",
   530              "example": "331ede0a-de94-456f-b788-166caeca58bf",
   531              "type": "string"
   532            },
   533            "type": {
   534              "description": "Content type.",
   535              "example": "projects",
   536              "type": "string"
   537            }
   538          },
   539          "required": [
   540            "type",
   541            "id",
   542            "attributes"
   543          ],
   544          "type": "object"
   545        },
   546        "QueryVersion": {
   547          "description": "Requested API version",
   548          "pattern": "^(wip|work-in-progress|experimental|beta|((([0-9]{4})-([0-1][0-9]))-((3[01])|(0[1-9])|([12][0-9]))(~(wip|work-in-progress|experimental|beta))?))$",
   549          "type": "string"
   550        }
   551      }
   552    },
   553    "info": {
   554      "title": "Registry",
   555      "version": "3.0.0"
   556    },
   557    "openapi": "3.0.3",
   558    "paths": {
   559      "/examples/hello-world/{id}": {
   560        "get": {
   561          "description": "Get a single result from the hello-world example",
   562          "operationId": "helloWorldGetOne",
   563          "parameters": [
   564            {
   565              "$ref": "#/components/parameters/Version"
   566            },
   567            {
   568              "$ref": "#/components/parameters/Pagination"
   569            },
   570            {
   571              "description": "The id of the hello-world example entity to be retrieved.",
   572              "in": "path",
   573              "name": "id",
   574              "required": true,
   575              "schema": {
   576                "type": "string"
   577              }
   578            }
   579          ],
   580          "responses": {
   581            "200": {
   582              "content": {
   583                "application/vnd.api+json": {
   584                  "schema": {
   585                    "additionalProperties": false,
   586                    "properties": {
   587                      "data": {
   588                        "$ref": "#/components/schemas/HelloWorld"
   589                      },
   590                      "jsonapi": {
   591                        "$ref": "#/components/schemas/JsonApi"
   592                      },
   593                      "links": {
   594                        "$ref": "#/components/schemas/Links"
   595                      }
   596                    },
   597                    "required": [
   598                      "jsonapi",
   599                      "data",
   600                      "links"
   601                    ],
   602                    "type": "object"
   603                  }
   604                }
   605              },
   606              "description": "A hello world entity being requested is returned",
   607              "headers": {
   608                "w3security-request-id": {
   609                  "$ref": "#/components/headers/RequestIdResponseHeader"
   610                },
   611                "w3security-version-requested": {
   612                  "$ref": "#/components/headers/VersionRequestedResponseHeader"
   613                },
   614                "w3security-version-served": {
   615                  "$ref": "#/components/headers/VersionServedResponseHeader"
   616                }
   617              }
   618            },
   619            "400": {
   620              "$ref": "#/components/responses/400"
   621            },
   622            "401": {
   623              "$ref": "#/components/responses/401"
   624            },
   625            "404": {
   626              "$ref": "#/components/responses/404"
   627            },
   628            "500": {
   629              "$ref": "#/components/responses/500"
   630            }
   631          },
   632          "x-w3security-api-releases": [
   633            "2021-06-01~experimental",
   634            "2021-06-07~experimental",
   635            "2021-06-13~beta"
   636          ],
   637          "x-w3security-api-version": "2021-06-07~experimental",
   638          "x-w3security-deprecated-by": "2021-06-13~beta",
   639          "x-w3security-sunset-eligible": "2021-06-14"
   640        },
   641        "x-w3security-api-resource": "hello-world"
   642      },
   643      "/openapi": {
   644        "get": {
   645          "description": "List available versions of OpenAPI specification",
   646          "operationId": "listAPIVersions",
   647          "responses": {
   648            "200": {
   649              "content": {
   650                "application/vnd.api+json": {
   651                  "schema": {
   652                    "items": {
   653                      "type": "string"
   654                    },
   655                    "type": "array"
   656                  }
   657                }
   658              },
   659              "description": "List of available versions is returned",
   660              "headers": {
   661                "w3security-request-id": {
   662                  "$ref": "#/components/headers/RequestIdResponseHeader"
   663                },
   664                "w3security-version-requested": {
   665                  "$ref": "#/components/headers/VersionRequestedResponseHeader"
   666                },
   667                "w3security-version-served": {
   668                  "$ref": "#/components/headers/VersionServedResponseHeader"
   669                }
   670              }
   671            },
   672            "400": {
   673              "$ref": "#/components/responses/400"
   674            },
   675            "401": {
   676              "$ref": "#/components/responses/401"
   677            },
   678            "404": {
   679              "$ref": "#/components/responses/404"
   680            },
   681            "500": {
   682              "$ref": "#/components/responses/500"
   683            }
   684          }
   685        }
   686      },
   687      "/openapi/{version}": {
   688        "get": {
   689          "description": "Get OpenAPI specification effective at version.",
   690          "operationId": "getAPIVersion",
   691          "parameters": [
   692            {
   693              "description": "The requested version of the API",
   694              "in": "path",
   695              "name": "version",
   696              "required": true,
   697              "schema": {
   698                "type": "string"
   699              }
   700            }
   701          ],
   702          "responses": {
   703            "200": {
   704              "content": {
   705                "application/vnd.api+json": {
   706                  "schema": {
   707                    "type": "object"
   708                  }
   709                },
   710                "application/x-yaml": {
   711                  "schema": {
   712                    "type": "object"
   713                  }
   714                }
   715              },
   716              "description": "OpenAPI specification matching requested version is returned",
   717              "headers": {
   718                "w3security-request-id": {
   719                  "$ref": "#/components/headers/RequestIdResponseHeader"
   720                },
   721                "w3security-version-requested": {
   722                  "$ref": "#/components/headers/VersionRequestedResponseHeader"
   723                },
   724                "w3security-version-served": {
   725                  "$ref": "#/components/headers/VersionServedResponseHeader"
   726                }
   727              }
   728            },
   729            "400": {
   730              "$ref": "#/components/responses/400"
   731            },
   732            "401": {
   733              "$ref": "#/components/responses/401"
   734            },
   735            "404": {
   736              "$ref": "#/components/responses/404"
   737            },
   738            "500": {
   739              "$ref": "#/components/responses/500"
   740            }
   741          }
   742        }
   743      },
   744      "/orgs/{orgId}/projects": {
   745        "get": {
   746          "description": "Get a list of an organization's projects.",
   747          "operationId": "getOrgsProjects",
   748          "parameters": [
   749            {
   750              "$ref": "#/components/parameters/Version"
   751            },
   752            {
   753              "$ref": "#/components/parameters/StartingAfter"
   754            },
   755            {
   756              "$ref": "#/components/parameters/EndingBefore"
   757            },
   758            {
   759              "$ref": "#/components/parameters/Limit"
   760            },
   761            {
   762              "description": "The id of the org to return a list of projects",
   763              "in": "path",
   764              "name": "orgId",
   765              "required": true,
   766              "schema": {
   767                "type": "string"
   768              }
   769            },
   770            {
   771              "description": "The options for filtering the result set",
   772              "in": "query",
   773              "name": "filters",
   774              "schema": {
   775                "additionalProperties": false,
   776                "properties": {
   777                  "attributes.criticality": {
   778                    "items": {
   779                      "type": "string"
   780                    },
   781                    "type": "array"
   782                  },
   783                  "attributes.environment": {
   784                    "items": {
   785                      "type": "string"
   786                    },
   787                    "type": "array"
   788                  },
   789                  "attributes.lifecycle": {
   790                    "items": {
   791                      "type": "string"
   792                    },
   793                    "type": "array"
   794                  },
   795                  "name": {
   796                    "type": "string"
   797                  },
   798                  "origin": {
   799                    "type": "string"
   800                  },
   801                  "status": {
   802                    "enum": [
   803                      "active",
   804                      "inactive"
   805                    ],
   806                    "type": "string"
   807                  },
   808                  "tags.includes": {
   809                    "items": {
   810                      "type": "string"
   811                    },
   812                    "type": "array"
   813                  },
   814                  "type": {
   815                    "type": "string"
   816                  }
   817                },
   818                "type": "object"
   819              }
   820            }
   821          ],
   822          "responses": {
   823            "200": {
   824              "content": {
   825                "application/vnd.api+json": {
   826                  "schema": {
   827                    "additionalProperties": false,
   828                    "properties": {
   829                      "data": {
   830                        "items": {
   831                          "$ref": "#/components/schemas/Project"
   832                        },
   833                        "type": "array"
   834                      },
   835                      "jsonapi": {
   836                        "$ref": "#/components/schemas/JsonApi"
   837                      },
   838                      "links": {
   839                        "$ref": "#/components/schemas/Links"
   840                      }
   841                    },
   842                    "required": [
   843                      "jsonapi",
   844                      "data",
   845                      "links"
   846                    ],
   847                    "type": "object"
   848                  }
   849                }
   850              },
   851              "description": "A list of projects is returned for the targeted org",
   852              "headers": {
   853                "w3security-request-id": {
   854                  "$ref": "#/components/headers/RequestIdResponseHeader"
   855                },
   856                "w3security-version-requested": {
   857                  "$ref": "#/components/headers/VersionRequestedResponseHeader"
   858                },
   859                "w3security-version-served": {
   860                  "$ref": "#/components/headers/VersionServedResponseHeader"
   861                }
   862              }
   863            },
   864            "400": {
   865              "$ref": "#/components/responses/400"
   866            },
   867            "401": {
   868              "$ref": "#/components/responses/401"
   869            },
   870            "404": {
   871              "$ref": "#/components/responses/404"
   872            },
   873            "500": {
   874              "$ref": "#/components/responses/500"
   875            }
   876          },
   877          "tags": [
   878            "Projects"
   879          ],
   880          "x-w3security-api-releases": [
   881            "2021-06-04~experimental"
   882          ],
   883          "x-w3security-api-version": "2021-06-04~experimental"
   884        },
   885        "x-w3security-api-resource": "projects"
   886      }
   887    },
   888    "servers": [
   889      {
   890        "description": "Test REST API",
   891        "url": "https://example.com/api/rest"
   892      }
   893    ],
   894    "tags": [
   895      {
   896        "description": "Projects",
   897        "name": "Projects"
   898      }
   899    ],
   900    "x-w3security-api-lifecycle": "sunset",
   901    "x-w3security-api-version": "2021-06-07~experimental"
   902  }