Skip to content

Commit 3e42549

Browse files
committed
Fix swagger user_id path parameter view
1 parent cecfe30 commit 3e42549

File tree

5 files changed

+14
-14
lines changed

5 files changed

+14
-14
lines changed

controller/user.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ func NewUser(
2727
// @Tags User
2828
// @Accept json
2929
// @Produce json
30-
// @Param id path string true "User ID"
31-
// @Success 200 {object} model.UserByIDResponse "Get user by ID"
32-
// @Failure 400 {object} swagger.StatusBadRequest
33-
// @Failure 403 {object} swagger.StatusForbidden
34-
// @Failure 500 {object} swagger.StatusInternalError
30+
// @Param user_id path string true "User ID"
31+
// @Success 200 {object} model.UserByIDResponse "Get user by ID"
32+
// @Failure 400 {object} swagger.StatusBadRequest
33+
// @Failure 403 {object} swagger.StatusForbidden
34+
// @Failure 500 {object} swagger.StatusInternalError
3535
// @Router /user/{id} [get]
3636
func (controller *User) UserByID(ctx *gin.Context) {
3737
// Validate path params

docs/docs.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ const docTemplate = `{
3636
{
3737
"type": "string",
3838
"description": "User ID",
39-
"name": "id",
39+
"name": "user_id",
4040
"in": "path",
4141
"required": true
4242
}
@@ -148,7 +148,7 @@ const docTemplate = `{
148148

149149
// SwaggerInfo holds exported Swagger Info so clients can modify it
150150
var SwaggerInfo = &swag.Spec{
151-
Version: "1.1",
151+
Version: "1.0",
152152
Host: "localhost:8080",
153153
BasePath: "/api/v1",
154154
Schemes: []string{},

docs/index.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -348,11 +348,11 @@
348348
55.627 l 55.6165,55.627 -231.245496,231.24803 c -127.185,127.1864
349349
-231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,
350350
-104.0616 -231.873,-231.248 z
351-
" fill="currentColor"></path></g></svg></div></div><div class="sc-jdwyG knmTbM api-content"><div class="sc-dntaoT bvhSud"><div class="sc-kLhKbu dECWTf"><div class="sc-fAUdSK dFrZq api-info"><h1 class="sc-ixGGxD sc-geoRQH kHkxTT dZsYqS">Go API<!-- --> <span>(<!-- -->1.1<!-- -->)</span></h1><p>Download OpenAPI specification<!-- -->:<a download="openapi.json" target="_blank" class="sc-kEsJEW enkzRg">Download</a></p><div class="sc-epnzzT sc-eMwmJz drsioI dWZUhK"><div class="sc-kBAPdo gmEXff"><div class="sc-ftmehX eeVPfW"><span class="sc-gbwXoZ bcPxPq">API Support<!-- -->:<!-- --> <a href="mailto:support@gmail.com">support@gmail.com</a></span> <span class="sc-gbwXoZ bcPxPq">URL: <a href="https://example.com/">https://example.com/</a></span> <!-- --> </div></div></div><div data-role="redoc-summary" html="" class="sc-epnzzT sc-eMwmJz drsioI dWZUhK"></div><div data-role="redoc-description" html="&lt;p&gt;GO API documentation&lt;/p&gt;
351+
" fill="currentColor"></path></g></svg></div></div><div class="sc-jdwyG knmTbM api-content"><div class="sc-dntaoT bvhSud"><div class="sc-kLhKbu dECWTf"><div class="sc-fAUdSK dFrZq api-info"><h1 class="sc-ixGGxD sc-geoRQH kHkxTT dZsYqS">Go API<!-- --> <span>(<!-- -->1.0<!-- -->)</span></h1><p>Download OpenAPI specification<!-- -->:<a download="openapi.json" target="_blank" class="sc-kEsJEW enkzRg">Download</a></p><div class="sc-epnzzT sc-eMwmJz drsioI dWZUhK"><div class="sc-kBAPdo gmEXff"><div class="sc-ftmehX eeVPfW"><span class="sc-gbwXoZ bcPxPq">API Support<!-- -->:<!-- --> <a href="mailto:support@gmail.com">support@gmail.com</a></span> <span class="sc-gbwXoZ bcPxPq">URL: <a href="https://example.com/">https://example.com/</a></span> <!-- --> </div></div></div><div data-role="redoc-summary" html="" class="sc-epnzzT sc-eMwmJz drsioI dWZUhK"></div><div data-role="redoc-description" html="&lt;p&gt;GO API documentation&lt;/p&gt;
352352
" class="sc-epnzzT sc-eMwmJz drsioI dWZUhK"><p>GO API documentation</p>
353353
</div></div></div></div><div id="tag/User" data-section-id="tag/User" class="sc-dntaoT bvhSud"><div class="sc-kLhKbu dECWTf"><div class="sc-fAUdSK dFrZq"><h2 class="sc-khLCKb wHiQv"><a class="sc-jwIPbr hbTOAm" href="#tag/User" aria-label="tag/User"></a>User</h2></div></div></div><div id="tag/User/paths/~1user~1{id}/get" data-section-id="tag/User/paths/~1user~1{id}/get" class="sc-dntaoT aYCdu"><div class="sc-kLhKbu dECWTf"><div class="sc-fAUdSK dFrZq"><h2 class="sc-khLCKb wHiQv"><a class="sc-jwIPbr hbTOAm" href="#tag/User/paths/~1user~1{id}/get" aria-label="tag/User/paths/~1user~1{id}/get"></a>Get user by ID<!-- --> </h2><div class="sc-fantwC exRUVh"><div html="&lt;p&gt;Get user by ID&lt;/p&gt;
354354
" class="sc-epnzzT sc-eMwmJz drsioI dWZUhK"><p>Get user by ID</p>
355-
</div></div><div><h5 class="sc-dpBQxM eJAAZj">path<!-- --> Parameters</h5><table class="sc-dprtRQ eNFxPe"><tbody><tr class="last "><td kind="field" title="id" class="sc-ovuCP sc-eauhAA iyKqKI iQpMVv"><span class="sc-gQaihK kPDxnK"></span><span class="property-name">id</span><div class="sc-CNKsk sc-hGZxvd hPAOR feFoaC">required</div></td><td class="sc-fFoeYl cHXoZJ"><div><div><span class="sc-CNKsk sc-cqgMZH hPAOR dWKYKL"></span><span class="sc-CNKsk sc-gQkENW hPAOR bIEFFi">string</span></div> <div><div html="&lt;p&gt;User ID&lt;/p&gt;
355+
</div></div><div><h5 class="sc-dpBQxM eJAAZj">path<!-- --> Parameters</h5><table class="sc-dprtRQ eNFxPe"><tbody><tr class="last "><td kind="field" title="user_id" class="sc-ovuCP sc-eauhAA iyKqKI iQpMVv"><span class="sc-gQaihK kPDxnK"></span><span class="property-name">user_id</span><div class="sc-CNKsk sc-hGZxvd hPAOR feFoaC">required</div></td><td class="sc-fFoeYl cHXoZJ"><div><div><span class="sc-CNKsk sc-cqgMZH hPAOR dWKYKL"></span><span class="sc-CNKsk sc-gQkENW hPAOR bIEFFi">string</span></div> <div><div html="&lt;p&gt;User ID&lt;/p&gt;
356356
" class="sc-epnzzT sc-eMwmJz drsioI ewnBNs"><p>User ID</p>
357357
</div></div></div></td></tr></tbody></table></div><div><h3 class="sc-edsqmr dheqgt">Responses</h3><div><button class="sc-gohMHu cnBopK"><svg class="sc-cHqXqK hmCwJW" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-bKXUjo beMorW">200<!-- --> </strong><div html="&lt;p&gt;Get user by ID&lt;/p&gt;
358358
" class="sc-epnzzT sc-eMwmJz drsioI dWZUhK sc-drVZOg jtjIAv"><p>Get user by ID</p>
@@ -364,7 +364,7 @@
364364
" class="sc-epnzzT sc-eMwmJz drsioI dWZUhK sc-drVZOg jtjIAv"><p>Internal Server Error</p>
365365
</div></button></div></div></div><div class="sc-ivxoEo sc-ghWlax gOjFGl oECKJ"><div class="sc-duWCru dWZoid"><button class="sc-iPHsxv ebcgbH"><span type="get" class="sc-txhaY IVbnb http-verb get">get</span><span class="sc-etPtWW iqHzp">/user/{id}</span><svg class="sc-cHqXqK fmmJjS" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ePpfBx ddApzj"><div class="sc-dwGkES evaCJX"><div html="" class="sc-epnzzT sc-eMwmJz drsioI ewnBNs"></div><div tabindex="0" role="button"><div class="sc-hSyjfr gufODt"><span>https://localhost:8080/api/v1</span>/user/{id}</div></div></div></div></div><div><h3 class="sc-keTIit zvQzH"> <!-- -->Response samples<!-- --> </h3><div class="sc-bMTdWJ fbQvpV" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="tab:R2eeq:0" aria-selected="true" aria-disabled="false" aria-controls="panel:R2eeq:0" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="tab:R2eeq:1" aria-selected="false" aria-disabled="false" aria-controls="panel:R2eeq:1" data-rttab="true">400</li><li class="tab-error" role="tab" id="tab:R2eeq:2" aria-selected="false" aria-disabled="false" aria-controls="panel:R2eeq:2" data-rttab="true">403</li><li class="tab-error" role="tab" id="tab:R2eeq:3" aria-selected="false" aria-disabled="false" aria-controls="panel:R2eeq:3" data-rttab="true">500</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="panel:R2eeq:0" aria-labelledby="tab:R2eeq:0"><div><div class="sc-Rjrgp dIDLbO"><span class="sc-fufdwm eqWzJe">Content type</span><div class="sc-UblHX kKXAng">application/json</div></div><div class="sc-FFETS kqHNPM"><div class="sc-eDHQDy mMhCU"><div class="sc-uYFMi hhzNne"><button><div class="sc-eWPXlR ezdXRP">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-epnzzT drsioI sc-giBObj iyEpFV"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"user"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"created_at"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"email"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"updated_at"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"username"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel:R2eeq:1" aria-labelledby="tab:R2eeq:1"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel:R2eeq:2" aria-labelledby="tab:R2eeq:2"></div><div class="react-tabs__tab-panel" role="tabpanel" id="panel:R2eeq:3" aria-labelledby="tab:R2eeq:3"></div></div></div></div></div></div></div><div class="sc-eEVuZf ifLiBE"></div></div></div>
366366
<script>
367-
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.0.0","info":{"contact":{"email":"support@gmail.com","name":"API Support","url":"https://example.com/"},"description":"GO API documentation","title":"Go API","version":"1.1"},"paths":{"/user/{id}":{"get":{"description":"Get user by ID","parameters":[{"description":"User ID","in":"path","name":"id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Get user by ID","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model.UserByIDResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/swagger.StatusBadRequest"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/swagger.StatusForbidden"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/swagger.StatusInternalError"}}}}},"summary":"Get user by ID","tags":["User"]}}},"servers":[{"url":"//localhost:8080/api/v1"}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic"}},"schemas":{"model.User":{"properties":{"created_at":{"type":"string"},"email":{"type":"string"},"id":{"type":"string"},"updated_at":{"type":"string"},"username":{"type":"string"}},"type":"object"},"model.UserByIDResponse":{"properties":{"user":{"$ref":"#/components/schemas/model.User"}},"type":"object"},"swagger.StatusBadRequest":{"properties":{"code":{"example":"BAD_REQUEST","type":"string"},"message":{"example":"Bad request","type":"string"}},"type":"object"},"swagger.StatusForbidden":{"properties":{"code":{"example":"FORBIDDEN","type":"string"},"message":{"example":"You don't have permission to access this resource","type":"string"}},"type":"object"},"swagger.StatusInternalError":{"properties":{"code":{"example":"INTERNAL_ERROR","type":"string"},"message":{"example":"Internal server error","type":"string"}},"type":"object"}}}}},"searchIndex":{"store":["tag/User","tag/User/paths/~1user~1{id}/get"],"index":{"version":"2.3.9","fields":["title","description"],"fieldVectors":[["title/0",[0,0.155]],["description/0",[]],["title/1",[0,0.118,1,0.16]],["description/1",[0,0.095,1,0.129,2,0.492]]],"invertedIndex":[["id",{"_index":1,"title":{"1":{}},"description":{"1":{}}}],["user",{"_index":0,"title":{"0":{},"1":{}},"description":{"1":{}}}],["user/{id",{"_index":2,"title":{},"description":{"1":{}}}]],"pipeline":[]}},"options":{}};
367+
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.0.0","info":{"contact":{"email":"support@gmail.com","name":"API Support","url":"https://example.com/"},"description":"GO API documentation","title":"Go API","version":"1.0"},"paths":{"/user/{id}":{"get":{"description":"Get user by ID","parameters":[{"description":"User ID","in":"path","name":"user_id","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Get user by ID","content":{"application/json":{"schema":{"$ref":"#/components/schemas/model.UserByIDResponse"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/swagger.StatusBadRequest"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/swagger.StatusForbidden"}}}},"500":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/swagger.StatusInternalError"}}}}},"summary":"Get user by ID","tags":["User"]}}},"servers":[{"url":"//localhost:8080/api/v1"}],"components":{"securitySchemes":{"BasicAuth":{"type":"http","scheme":"basic"}},"schemas":{"model.User":{"properties":{"created_at":{"type":"string"},"email":{"type":"string"},"id":{"type":"string"},"updated_at":{"type":"string"},"username":{"type":"string"}},"type":"object"},"model.UserByIDResponse":{"properties":{"user":{"$ref":"#/components/schemas/model.User"}},"type":"object"},"swagger.StatusBadRequest":{"properties":{"code":{"example":"BAD_REQUEST","type":"string"},"message":{"example":"Bad request","type":"string"}},"type":"object"},"swagger.StatusForbidden":{"properties":{"code":{"example":"FORBIDDEN","type":"string"},"message":{"example":"You don't have permission to access this resource","type":"string"}},"type":"object"},"swagger.StatusInternalError":{"properties":{"code":{"example":"INTERNAL_ERROR","type":"string"},"message":{"example":"Internal server error","type":"string"}},"type":"object"}}}}},"searchIndex":{"store":["tag/User","tag/User/paths/~1user~1{id}/get"],"index":{"version":"2.3.9","fields":["title","description"],"fieldVectors":[["title/0",[0,0.155]],["description/0",[]],["title/1",[0,0.118,1,0.16]],["description/1",[0,0.095,1,0.129,2,0.492]]],"invertedIndex":[["id",{"_index":1,"title":{"1":{}},"description":{"1":{}}}],["user",{"_index":0,"title":{"0":{},"1":{}},"description":{"1":{}}}],["user/{id",{"_index":2,"title":{},"description":{"1":{}}}]],"pipeline":[]}},"options":{}};
368368

369369
var container = document.getElementById('redoc');
370370
Redoc.hydrate(__redoc_state, container);

docs/swagger.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
"url": "https://example.com/",
99
"email": "support@gmail.com"
1010
},
11-
"version": "1.1"
11+
"version": "1.0"
1212
},
1313
"host": "localhost:8080",
1414
"basePath": "/api/v1",
@@ -30,7 +30,7 @@
3030
{
3131
"type": "string",
3232
"description": "User ID",
33-
"name": "id",
33+
"name": "user_id",
3434
"in": "path",
3535
"required": true
3636
}

docs/swagger.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ info:
5353
url: https://example.com/
5454
description: GO API documentation
5555
title: Go API
56-
version: "1.1"
56+
version: "1.0"
5757
paths:
5858
/user/{id}:
5959
get:
@@ -63,7 +63,7 @@ paths:
6363
parameters:
6464
- description: User ID
6565
in: path
66-
name: id
66+
name: user_id
6767
required: true
6868
type: string
6969
produces:

0 commit comments

Comments
 (0)