func GenerateHtml(apiCall *models.ApiCall) { shouldAddPathSpec := true for k, apiSpec := range spec.ApiSpecs { if apiSpec.Path == apiCall.CurrentPath && apiSpec.HttpVerb == apiCall.MethodType { shouldAddPathSpec = false apiCall.Id = count count += 1 deleteCommonHeaders(apiCall) avoid := false for _, currentApiCall := range spec.ApiSpecs[k].Calls { if apiCall.RequestBody == currentApiCall.RequestBody && apiCall.ResponseCode == currentApiCall.ResponseCode && apiCall.ResponseBody == currentApiCall.ResponseBody { avoid = true } } if !avoid { spec.ApiSpecs[k].Calls = append(apiSpec.Calls, *apiCall) } } } if shouldAddPathSpec { apiSpec := models.ApiSpec{ HttpVerb: apiCall.MethodType, Path: apiCall.CurrentPath, } apiCall.Id = count count += 1 deleteCommonHeaders(apiCall) apiSpec.Calls = append(apiSpec.Calls, *apiCall) spec.ApiSpecs = append(spec.ApiSpecs, apiSpec) } filePath, err := filepath.Abs(config.DocPath) dataFile, err := os.Create(filePath + ".json") if err != nil { log.Println(err) return } defer dataFile.Close() data, err := json.Marshal(spec) if err != nil { log.Println(err) return } _, err = dataFile.Write(data) if err != nil { log.Println(err) return } generateHtml() }