MCPcopy Index your code
hub / github.com/coder/coder / templateVersionDynamicParametersWebsocket

Method templateVersionDynamicParametersWebsocket

coderd/parameters.go:48–70  ·  view source on GitHub ↗

@Summary Open dynamic parameters WebSocket by template version @ID open-dynamic-parameters-websocket-by-template-version @Security CoderSessionToken @Tags Templates @Param templateversion path string true "Template version ID" format(uuid) @Success 101 @Router /api/v2/templateversions/{templateversi

(rw http.ResponseWriter, r *http.Request)

Source from the content-addressed store, hash-verified

46// @Success 101
47// @Router /api/v2/templateversions/{templateversion}/dynamic-parameters [get]
48func (api *API) templateVersionDynamicParametersWebsocket(rw http.ResponseWriter, r *http.Request) {
49 apikey := httpmw.APIKey(r)
50 userID := apikey.UserID
51
52 qUserID := r.URL.Query().Get("user_id")
53 if qUserID != "" && qUserID != codersdk.Me {
54 uid, err := uuid.Parse(qUserID)
55 if err != nil {
56 httpapi.Write(r.Context(), rw, http.StatusBadRequest, codersdk.Response{
57 Message: "Invalid user_id query parameter",
58 Detail: err.Error(),
59 })
60 return
61 }
62 userID = uid
63 }
64
65 api.templateVersionDynamicParameters(true, codersdk.DynamicParametersRequest{
66 ID: -1,
67 Inputs: map[string]string{},
68 OwnerID: userID,
69 })(rw, r)
70}
71
72// The `listen` control flag determines whether to open a websocket connection to
73// handle the request or not. This same function is used to 'evaluate' a template

Callers

nothing calls this directly

Calls 7

APIKeyFunction · 0.92
WriteFunction · 0.92
GetMethod · 0.65
ParseMethod · 0.65
ContextMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected