diff options
author | David Libeau <DavidLibeau@users.noreply.github.com> | 2018-07-28 14:38:49 -0400 |
---|---|---|
committer | Rigel Kent <par@rigelk.eu> | 2018-07-28 20:38:49 +0200 |
commit | fb72c19384192d57252e7cb73cdcf8d0876f37a0 (patch) | |
tree | f8c3b7ed616f0739d028dd14e9fbef32af7ad962 | |
parent | 469b29087bd8f98d87a32b87dacb346b6bf61db1 (diff) | |
download | PeerTube-fb72c19384192d57252e7cb73cdcf8d0876f37a0.tar.gz PeerTube-fb72c19384192d57252e7cb73cdcf8d0876f37a0.tar.zst PeerTube-fb72c19384192d57252e7cb73cdcf8d0876f37a0.zip |
Correct API documentation for search (#878)
-rw-r--r-- | support/doc/api/html/index.html | 331 | ||||
-rw-r--r-- | support/doc/api/openapi.yaml | 43 |
2 files changed, 200 insertions, 174 deletions
diff --git a/support/doc/api/html/index.html b/support/doc/api/html/index.html index bf9b6a17b..c65e8ea6c 100644 --- a/support/doc/api/html/index.html +++ b/support/doc/api/html/index.html | |||
@@ -136,9 +136,6 @@ | |||
136 | <a href="#operation--videos-privacies-get"> GET /videos/privacies </a> | 136 | <a href="#operation--videos-privacies-get"> GET /videos/privacies </a> |
137 | </li> | 137 | </li> |
138 | <li> | 138 | <li> |
139 | <a href="#operation--videos-search-get"> GET /videos/search </a> | ||
140 | </li> | ||
141 | <li> | ||
142 | <a href="#operation--videos--id--put"> PUT /videos/{id} </a> | 139 | <a href="#operation--videos--id--put"> PUT /videos/{id} </a> |
143 | </li> | 140 | </li> |
144 | <li> | 141 | <li> |
@@ -237,6 +234,14 @@ | |||
237 | </li> | 234 | </li> |
238 | </ul> | 235 | </ul> |
239 | </section> | 236 | </section> |
237 | <section> | ||
238 | <a href="#tag-Search">Search</a> | ||
239 | <ul> | ||
240 | <li> | ||
241 | <a href="#operation--search-videos-get"> GET /search/videos </a> | ||
242 | </li> | ||
243 | </ul> | ||
244 | </section> | ||
240 | <h5>Schema Definitions</h5> | 245 | <h5>Schema Definitions</h5> |
241 | <a href="#definition-VideoConstantNumber"> VideoConstantNumber </a> | 246 | <a href="#definition-VideoConstantNumber"> VideoConstantNumber </a> |
242 | <a href="#definition-VideoConstantString"> VideoConstantString </a> | 247 | <a href="#definition-VideoConstantString"> VideoConstantString </a> |
@@ -3223,158 +3228,6 @@ | |||
3223 | </div> | 3228 | </div> |
3224 | </div> | 3229 | </div> |
3225 | </div> | 3230 | </div> |
3226 | <div id="operation--videos-search-get" class="operation panel" data-traverse-target="operation--videos-search-get"> | ||
3227 | <!-- <section class="operation-tags row"> --> | ||
3228 | <!-- <div class="doc-copy"> --> | ||
3229 | <div class="operation-tags"> | ||
3230 | <a class="label" href="#tag-Video">Video</a> | ||
3231 | <!----> | ||
3232 | </div> | ||
3233 | <!-- </div> --> | ||
3234 | <!-- </section> --> | ||
3235 | <h2 class="operation-title"> | ||
3236 | <span class="operation-name"> | ||
3237 | <span class="operation-name">GET</span> | ||
3238 | <span class="operation-path">/videos/search</span> | ||
3239 | </span> | ||
3240 | </h2> | ||
3241 | <div class="doc-row"> | ||
3242 | <div class="doc-copy"> | ||
3243 | <section class="swagger-request-params"> | ||
3244 | <div class="prop-row prop-group"> | ||
3245 | <div class="prop-name"> | ||
3246 | <div class="prop-title">start: | ||
3247 | <span class="prop-type"> | ||
3248 | <span class="json-property-type">number</span> | ||
3249 | <span class="json-property-range" title="Value limits"></span> | ||
3250 | </span> | ||
3251 | </div> | ||
3252 | <div class="prop-subtitle"> in query </div> | ||
3253 | </div> | ||
3254 | <div class="prop-value"> | ||
3255 | <p>Offset</p> | ||
3256 | </div> | ||
3257 | </div> | ||
3258 | <div class="prop-row prop-group"> | ||
3259 | <div class="prop-name"> | ||
3260 | <div class="prop-title">count: | ||
3261 | <span class="prop-type"> | ||
3262 | <span class="json-property-type">number</span> | ||
3263 | <span class="json-property-range" title="Value limits"></span> | ||
3264 | </span> | ||
3265 | </div> | ||
3266 | <div class="prop-subtitle"> in query </div> | ||
3267 | </div> | ||
3268 | <div class="prop-value"> | ||
3269 | <p>Number of items</p> | ||
3270 | </div> | ||
3271 | </div> | ||
3272 | <div class="prop-row prop-group"> | ||
3273 | <div class="prop-name"> | ||
3274 | <div class="prop-title">sort: | ||
3275 | <span class="prop-type"> | ||
3276 | <span class="json-property-type">string</span> | ||
3277 | <span class="json-property-range" title="Value limits"></span> | ||
3278 | </span> | ||
3279 | </div> | ||
3280 | <div class="prop-subtitle"> in query </div> | ||
3281 | </div> | ||
3282 | <div class="prop-value"> | ||
3283 | <p>Sort column (-createdAt for example)</p> | ||
3284 | </div> | ||
3285 | </div> | ||
3286 | </section> | ||
3287 | </div> | ||
3288 | <div class="doc-examples"></div> | ||
3289 | </div> | ||
3290 | <div class="doc-row"> | ||
3291 | <div class="doc-copy"> | ||
3292 | <section class="swagger-responses"> | ||
3293 | <div class="prop-row prop-group"> | ||
3294 | <div class="prop-name"> | ||
3295 | <div class="prop-title">200 OK</div> | ||
3296 | <div class="prop-ref"> | ||
3297 | <span class="json-schema-ref-array"> | ||
3298 | <a class="json-schema-ref" href="#/definitions/Video">Video</a> | ||
3299 | </span> | ||
3300 | </div> | ||
3301 | <!-- <span class="swagger-global"></span> <span class="json-schema-reference"><a href=""></a></span> --> | ||
3302 | </div> | ||
3303 | <div class="prop-value"> | ||
3304 | <p>successful operation</p> | ||
3305 | </div> | ||
3306 | </div> | ||
3307 | <div class="prop-row prop-inner"> | ||
3308 | <div class="prop-name">type</div> | ||
3309 | <div class="prop-value"> | ||
3310 | <span class="json-property-type"> | ||
3311 | <span class="json-schema-ref-array"> | ||
3312 | <a class="json-schema-ref" href="#/definitions/Video">Video</a> | ||
3313 | </span> | ||
3314 | </span> | ||
3315 | <span class="json-property-range" title="Value limits"></span> | ||
3316 | </div> | ||
3317 | </div> | ||
3318 | </section> | ||
3319 | </div> | ||
3320 | <div class="doc-examples"> | ||
3321 | <h5>Response Content-Types: | ||
3322 | <span>application/json</span> | ||
3323 | </h5> | ||
3324 | <section> | ||
3325 | <h5>Response Example | ||
3326 | <span>(200 OK)</span> | ||
3327 | </h5> | ||
3328 | <!-- <div class="hljs"> --><pre><code class="hljs lang-json">[ | ||
3329 | { | ||
3330 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"number"</span>, | ||
3331 | <span class="hljs-attr">"uuid"</span>: <span class="hljs-string">"string"</span>, | ||
3332 | <span class="hljs-attr">"createdAt"</span>: <span class="hljs-string">"string"</span>, | ||
3333 | <span class="hljs-attr">"publishedAt"</span>: <span class="hljs-string">"string"</span>, | ||
3334 | <span class="hljs-attr">"updatedAt"</span>: <span class="hljs-string">"string"</span>, | ||
3335 | <span class="hljs-attr">"category"</span>: { | ||
3336 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"number"</span>, | ||
3337 | <span class="hljs-attr">"label"</span>: <span class="hljs-string">"string"</span> | ||
3338 | }, | ||
3339 | <span class="hljs-attr">"licence"</span>: { | ||
3340 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"number"</span>, | ||
3341 | <span class="hljs-attr">"label"</span>: <span class="hljs-string">"string"</span> | ||
3342 | }, | ||
3343 | <span class="hljs-attr">"language"</span>: { | ||
3344 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>, | ||
3345 | <span class="hljs-attr">"label"</span>: <span class="hljs-string">"string"</span> | ||
3346 | }, | ||
3347 | <span class="hljs-attr">"privacy"</span>: <span class="hljs-string">"string"</span>, | ||
3348 | <span class="hljs-attr">"description"</span>: <span class="hljs-string">"string"</span>, | ||
3349 | <span class="hljs-attr">"duration"</span>: <span class="hljs-string">"number"</span>, | ||
3350 | <span class="hljs-attr">"isLocal"</span>: <span class="hljs-string">"boolean"</span>, | ||
3351 | <span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>, | ||
3352 | <span class="hljs-attr">"thumbnailPath"</span>: <span class="hljs-string">"string"</span>, | ||
3353 | <span class="hljs-attr">"previewPath"</span>: <span class="hljs-string">"string"</span>, | ||
3354 | <span class="hljs-attr">"embedPath"</span>: <span class="hljs-string">"string"</span>, | ||
3355 | <span class="hljs-attr">"views"</span>: <span class="hljs-string">"number"</span>, | ||
3356 | <span class="hljs-attr">"likes"</span>: <span class="hljs-string">"number"</span>, | ||
3357 | <span class="hljs-attr">"dislikes"</span>: <span class="hljs-string">"number"</span>, | ||
3358 | <span class="hljs-attr">"nsfw"</span>: <span class="hljs-string">"boolean"</span>, | ||
3359 | <span class="hljs-attr">"account"</span>: { | ||
3360 | <span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>, | ||
3361 | <span class="hljs-attr">"displayName"</span>: <span class="hljs-string">"string"</span>, | ||
3362 | <span class="hljs-attr">"url"</span>: <span class="hljs-string">"string"</span>, | ||
3363 | <span class="hljs-attr">"host"</span>: <span class="hljs-string">"string"</span>, | ||
3364 | <span class="hljs-attr">"avatar"</span>: { | ||
3365 | <span class="hljs-attr">"path"</span>: <span class="hljs-string">"string"</span>, | ||
3366 | <span class="hljs-attr">"createdAt"</span>: <span class="hljs-string">"string"</span>, | ||
3367 | <span class="hljs-attr">"updatedAt"</span>: <span class="hljs-string">"string"</span> | ||
3368 | } | ||
3369 | } | ||
3370 | } | ||
3371 | ] | ||
3372 | </code></pre> | ||
3373 | <!-- </div> --> | ||
3374 | </section> | ||
3375 | </div> | ||
3376 | </div> | ||
3377 | </div> | ||
3378 | <div id="operation--videos--id--put" class="operation panel" data-traverse-target="operation--videos--id--put"> | 3231 | <div id="operation--videos--id--put" class="operation panel" data-traverse-target="operation--videos--id--put"> |
3379 | <!-- <section class="operation-tags row"> --> | 3232 | <!-- <section class="operation-tags row"> --> |
3380 | <!-- <div class="doc-copy"> --> | 3233 | <!-- <div class="doc-copy"> --> |
@@ -6328,6 +6181,174 @@ | |||
6328 | </div> | 6181 | </div> |
6329 | </div> | 6182 | </div> |
6330 | </div> | 6183 | </div> |
6184 | <h1 id="tag-Search" class="swagger-summary-tag" data-traverse-target="tag-Search">Search</h1> | ||
6185 | <div id="operation--search-videos-get" class="operation panel" data-traverse-target="operation--search-videos-get"> | ||
6186 | <!-- <section class="operation-tags row"> --> | ||
6187 | <!-- <div class="doc-copy"> --> | ||
6188 | <div class="operation-tags"> | ||
6189 | <a class="label" href="#tag-Search">Search</a> | ||
6190 | <!----> | ||
6191 | </div> | ||
6192 | <!-- </div> --> | ||
6193 | <!-- </section> --> | ||
6194 | <h2 class="operation-title"> | ||
6195 | <span class="operation-name"> | ||
6196 | <span class="operation-name">GET</span> | ||
6197 | <span class="operation-path">/search/videos</span> | ||
6198 | </span> | ||
6199 | </h2> | ||
6200 | <div class="doc-row"> | ||
6201 | <div class="doc-copy"> | ||
6202 | <section class="swagger-request-params"> | ||
6203 | <div class="prop-row prop-group"> | ||
6204 | <div class="prop-name"> | ||
6205 | <div class="prop-title">start: | ||
6206 | <span class="prop-type"> | ||
6207 | <span class="json-property-type">number</span> | ||
6208 | <span class="json-property-range" title="Value limits"></span> | ||
6209 | </span> | ||
6210 | </div> | ||
6211 | <div class="prop-subtitle"> in query </div> | ||
6212 | </div> | ||
6213 | <div class="prop-value"> | ||
6214 | <p>Offset</p> | ||
6215 | </div> | ||
6216 | </div> | ||
6217 | <div class="prop-row prop-group"> | ||
6218 | <div class="prop-name"> | ||
6219 | <div class="prop-title">count: | ||
6220 | <span class="prop-type"> | ||
6221 | <span class="json-property-type">number</span> | ||
6222 | <span class="json-property-range" title="Value limits"></span> | ||
6223 | </span> | ||
6224 | </div> | ||
6225 | <div class="prop-subtitle"> in query </div> | ||
6226 | </div> | ||
6227 | <div class="prop-value"> | ||
6228 | <p>Number of items</p> | ||
6229 | </div> | ||
6230 | </div> | ||
6231 | <div class="prop-row prop-group"> | ||
6232 | <div class="prop-name"> | ||
6233 | <div class="prop-title">sort: | ||
6234 | <span class="prop-type"> | ||
6235 | <span class="json-property-type">string</span> | ||
6236 | <span class="json-property-range" title="Value limits"></span> | ||
6237 | </span> | ||
6238 | </div> | ||
6239 | <div class="prop-subtitle"> in query </div> | ||
6240 | </div> | ||
6241 | <div class="prop-value"> | ||
6242 | <p>Sort column (-createdAt for example)</p> | ||
6243 | </div> | ||
6244 | </div> | ||
6245 | <div class="prop-row prop-group"> | ||
6246 | <div class="prop-name"> | ||
6247 | <div class="prop-title">query: | ||
6248 | <span class="prop-type"> | ||
6249 | <span class="json-property-type">string</span> | ||
6250 | <span class="json-property-range" title="Value limits"></span> | ||
6251 | </span> | ||
6252 | </div> | ||
6253 | <span class="json-property-required"></span> | ||
6254 | <div class="prop-subtitle"> in query </div> | ||
6255 | </div> | ||
6256 | <div class="prop-value"> | ||
6257 | <p>String to search</p> | ||
6258 | </div> | ||
6259 | </div> | ||
6260 | </section> | ||
6261 | </div> | ||
6262 | <div class="doc-examples"></div> | ||
6263 | </div> | ||
6264 | <div class="doc-row"> | ||
6265 | <div class="doc-copy"> | ||
6266 | <section class="swagger-responses"> | ||
6267 | <div class="prop-row prop-group"> | ||
6268 | <div class="prop-name"> | ||
6269 | <div class="prop-title">200 OK</div> | ||
6270 | <div class="prop-ref"> | ||
6271 | <span class="json-schema-ref-array"> | ||
6272 | <a class="json-schema-ref" href="#/definitions/Video">Video</a> | ||
6273 | </span> | ||
6274 | </div> | ||
6275 | <!-- <span class="swagger-global"></span> <span class="json-schema-reference"><a href=""></a></span> --> | ||
6276 | </div> | ||
6277 | <div class="prop-value"> | ||
6278 | <p>successful operation</p> | ||
6279 | </div> | ||
6280 | </div> | ||
6281 | <div class="prop-row prop-inner"> | ||
6282 | <div class="prop-name">type</div> | ||
6283 | <div class="prop-value"> | ||
6284 | <span class="json-property-type"> | ||
6285 | <span class="json-schema-ref-array"> | ||
6286 | <a class="json-schema-ref" href="#/definitions/Video">Video</a> | ||
6287 | </span> | ||
6288 | </span> | ||
6289 | <span class="json-property-range" title="Value limits"></span> | ||
6290 | </div> | ||
6291 | </div> | ||
6292 | </section> | ||
6293 | </div> | ||
6294 | <div class="doc-examples"> | ||
6295 | <h5>Response Content-Types: | ||
6296 | <span>application/json</span> | ||
6297 | </h5> | ||
6298 | <section> | ||
6299 | <h5>Response Example | ||
6300 | <span>(200 OK)</span> | ||
6301 | </h5> | ||
6302 | <!-- <div class="hljs"> --><pre><code class="hljs lang-json">[ | ||
6303 | { | ||
6304 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"number"</span>, | ||
6305 | <span class="hljs-attr">"uuid"</span>: <span class="hljs-string">"string"</span>, | ||
6306 | <span class="hljs-attr">"createdAt"</span>: <span class="hljs-string">"string"</span>, | ||
6307 | <span class="hljs-attr">"publishedAt"</span>: <span class="hljs-string">"string"</span>, | ||
6308 | <span class="hljs-attr">"updatedAt"</span>: <span class="hljs-string">"string"</span>, | ||
6309 | <span class="hljs-attr">"category"</span>: { | ||
6310 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"number"</span>, | ||
6311 | <span class="hljs-attr">"label"</span>: <span class="hljs-string">"string"</span> | ||
6312 | }, | ||
6313 | <span class="hljs-attr">"licence"</span>: { | ||
6314 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"number"</span>, | ||
6315 | <span class="hljs-attr">"label"</span>: <span class="hljs-string">"string"</span> | ||
6316 | }, | ||
6317 | <span class="hljs-attr">"language"</span>: { | ||
6318 | <span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>, | ||
6319 | <span class="hljs-attr">"label"</span>: <span class="hljs-string">"string"</span> | ||
6320 | }, | ||
6321 | <span class="hljs-attr">"privacy"</span>: <span class="hljs-string">"string"</span>, | ||
6322 | <span class="hljs-attr">"description"</span>: <span class="hljs-string">"string"</span>, | ||
6323 | <span class="hljs-attr">"duration"</span>: <span class="hljs-string">"number"</span>, | ||
6324 | <span class="hljs-attr">"isLocal"</span>: <span class="hljs-string">"boolean"</span>, | ||
6325 | <span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>, | ||
6326 | <span class="hljs-attr">"thumbnailPath"</span>: <span class="hljs-string">"string"</span>, | ||
6327 | <span class="hljs-attr">"previewPath"</span>: <span class="hljs-string">"string"</span>, | ||
6328 | <span class="hljs-attr">"embedPath"</span>: <span class="hljs-string">"string"</span>, | ||
6329 | <span class="hljs-attr">"views"</span>: <span class="hljs-string">"number"</span>, | ||
6330 | <span class="hljs-attr">"likes"</span>: <span class="hljs-string">"number"</span>, | ||
6331 | <span class="hljs-attr">"dislikes"</span>: <span class="hljs-string">"number"</span>, | ||
6332 | <span class="hljs-attr">"nsfw"</span>: <span class="hljs-string">"boolean"</span>, | ||
6333 | <span class="hljs-attr">"account"</span>: { | ||
6334 | <span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>, | ||
6335 | <span class="hljs-attr">"displayName"</span>: <span class="hljs-string">"string"</span>, | ||
6336 | <span class="hljs-attr">"url"</span>: <span class="hljs-string">"string"</span>, | ||
6337 | <span class="hljs-attr">"host"</span>: <span class="hljs-string">"string"</span>, | ||
6338 | <span class="hljs-attr">"avatar"</span>: { | ||
6339 | <span class="hljs-attr">"path"</span>: <span class="hljs-string">"string"</span>, | ||
6340 | <span class="hljs-attr">"createdAt"</span>: <span class="hljs-string">"string"</span>, | ||
6341 | <span class="hljs-attr">"updatedAt"</span>: <span class="hljs-string">"string"</span> | ||
6342 | } | ||
6343 | } | ||
6344 | } | ||
6345 | ] | ||
6346 | </code></pre> | ||
6347 | <!-- </div> --> | ||
6348 | </section> | ||
6349 | </div> | ||
6350 | </div> | ||
6351 | </div> | ||
6331 | <h1>Schema Definitions</h1> | 6352 | <h1>Schema Definitions</h1> |
6332 | <div id="definition-VideoConstantNumber" class="definition panel" data-traverse-target="definition-VideoConstantNumber"> | 6353 | <div id="definition-VideoConstantNumber" class="definition panel" data-traverse-target="definition-VideoConstantNumber"> |
6333 | <h2 class="panel-title"> | 6354 | <h2 class="panel-title"> |
diff --git a/support/doc/api/openapi.yaml b/support/doc/api/openapi.yaml index c84dc3307..7e290a41e 100644 --- a/support/doc/api/openapi.yaml +++ b/support/doc/api/openapi.yaml | |||
@@ -512,25 +512,6 @@ paths: | |||
512 | type: array | 512 | type: array |
513 | items: | 513 | items: |
514 | type: string | 514 | type: string |
515 | /videos/search: | ||
516 | get: | ||
517 | tags: | ||
518 | - Video | ||
519 | consumes: | ||
520 | - application/json | ||
521 | produces: | ||
522 | - application/json | ||
523 | parameters: | ||
524 | - $ref: "commons.yaml#/parameters/start" | ||
525 | - $ref: "commons.yaml#/parameters/count" | ||
526 | - $ref: "commons.yaml#/parameters/sort" | ||
527 | responses: | ||
528 | '200': | ||
529 | description: successful operation | ||
530 | schema: | ||
531 | type: array | ||
532 | items: | ||
533 | $ref: '#/definitions/Video' | ||
534 | "/videos/{id}": | 515 | "/videos/{id}": |
535 | put: | 516 | put: |
536 | security: | 517 | security: |
@@ -957,6 +938,30 @@ paths: | |||
957 | responses: | 938 | responses: |
958 | '204': | 939 | '204': |
959 | $ref: "commons.yaml#/responses/emptySuccess" | 940 | $ref: "commons.yaml#/responses/emptySuccess" |
941 | /search/videos: | ||
942 | get: | ||
943 | tags: | ||
944 | - Search | ||
945 | consumes: | ||
946 | - application/json | ||
947 | produces: | ||
948 | - application/json | ||
949 | parameters: | ||
950 | - $ref: "commons.yaml#/parameters/start" | ||
951 | - $ref: "commons.yaml#/parameters/count" | ||
952 | - $ref: "commons.yaml#/parameters/sort" | ||
953 | - name: query | ||
954 | in: query | ||
955 | required: true | ||
956 | type: string | ||
957 | description: 'String to search' | ||
958 | responses: | ||
959 | '200': | ||
960 | description: successful operation | ||
961 | schema: | ||
962 | type: array | ||
963 | items: | ||
964 | $ref: '#/definitions/Video' | ||
960 | definitions: | 965 | definitions: |
961 | VideoConstantNumber: | 966 | VideoConstantNumber: |
962 | properties: | 967 | properties: |