/* * Vikunja API * * This is the documentation for the [Vikunja](http://vikunja.io) API. Vikunja is a cross-plattform Todo-application with a lot of features, such as sharing lists with users or teams. # Authorization **JWT-Auth:** Main authorization method, used for most of the requests. Needs `Authorization: Bearer `-header to authenticate successfully. **BasicAuth:** Only used when requesting tasks via caldav. * * API version: 0.8+21-854fde1e4c * Contact: hello@vikunja.io * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) */ package swagger import ( "encoding/json" "fmt" "golang.org/x/net/context" "io/ioutil" "net/http" "net/url" "strings" ) // Linger please var ( _ context.Context ) type TeamApiService service /* TeamApiService Get teams Returns all teams the current user is part of. * @param ctx context.Context for authentication, logging, tracing, etc. @param optional (nil or map[string]interface{}) with one or more of: @param "p" (int32) The page number. Used for pagination. If not provided, the first page of results is returned. @param "s" (string) Search teams by its name. @return []ModelsTeam*/ func (a *TeamApiService) TeamsGet(ctx context.Context, localVarOptionals map[string]interface{}) ([]ModelsTeam, *http.Response, error) { var ( localVarHttpMethod = strings.ToUpper("Get") localVarPostBody interface{} localVarFileName string localVarFileBytes []byte successPayload []ModelsTeam ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/teams" localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} if err := typeCheckParameter(localVarOptionals["p"], "int32", "p"); err != nil { return successPayload, nil, err } if err := typeCheckParameter(localVarOptionals["s"], "string", "s"); err != nil { return successPayload, nil, err } if localVarTempParam, localVarOk := localVarOptionals["p"].(int32); localVarOk { localVarQueryParams.Add("p", parameterToString(localVarTempParam, "")) } if localVarTempParam, localVarOk := localVarOptionals["s"].(string); localVarOk { localVarQueryParams.Add("s", parameterToString(localVarTempParam, "")) } // to determine the Content-Type header localVarHttpContentTypes := []string{"application/json"} // set Content-Type header localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) if localVarHttpContentType != "" { localVarHeaderParams["Content-Type"] = localVarHttpContentType } // to determine the Accept header localVarHttpHeaderAccepts := []string{ "application/json", } // set Accept header localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { return successPayload, nil, err } localVarHttpResponse, err := a.client.callAPI(r) if err != nil || localVarHttpResponse == nil { return successPayload, localVarHttpResponse, err } defer localVarHttpResponse.Body.Close() if localVarHttpResponse.StatusCode >= 300 { bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body) return successPayload, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes) } if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil { return successPayload, localVarHttpResponse, err } return successPayload, localVarHttpResponse, err } /* TeamApiService Deletes a team Delets a team. This will also remove the access for all users in that team. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Team ID @return ModelsMessage*/ func (a *TeamApiService) TeamsIdDelete(ctx context.Context, id int32) (ModelsMessage, *http.Response, error) { var ( localVarHttpMethod = strings.ToUpper("Delete") localVarPostBody interface{} localVarFileName string localVarFileBytes []byte successPayload ModelsMessage ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/teams/{id}" localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", fmt.Sprintf("%v", id), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} // to determine the Content-Type header localVarHttpContentTypes := []string{} // set Content-Type header localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) if localVarHttpContentType != "" { localVarHeaderParams["Content-Type"] = localVarHttpContentType } // to determine the Accept header localVarHttpHeaderAccepts := []string{ "application/json", } // set Accept header localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { return successPayload, nil, err } localVarHttpResponse, err := a.client.callAPI(r) if err != nil || localVarHttpResponse == nil { return successPayload, localVarHttpResponse, err } defer localVarHttpResponse.Body.Close() if localVarHttpResponse.StatusCode >= 300 { bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body) return successPayload, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes) } if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil { return successPayload, localVarHttpResponse, err } return successPayload, localVarHttpResponse, err } /* TeamApiService Add a user to a team Add a user to a team. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Team ID @param team The user to be added to a team. @return ModelsTeamMember*/ func (a *TeamApiService) TeamsIdMembersPut(ctx context.Context, id int32, team ModelsTeamMember) (ModelsTeamMember, *http.Response, error) { var ( localVarHttpMethod = strings.ToUpper("Put") localVarPostBody interface{} localVarFileName string localVarFileBytes []byte successPayload ModelsTeamMember ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/teams/{id}/members" localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", fmt.Sprintf("%v", id), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} // to determine the Content-Type header localVarHttpContentTypes := []string{"application/json"} // set Content-Type header localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) if localVarHttpContentType != "" { localVarHeaderParams["Content-Type"] = localVarHttpContentType } // to determine the Accept header localVarHttpHeaderAccepts := []string{ "application/json", } // set Accept header localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } // body params localVarPostBody = &team if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { return successPayload, nil, err } localVarHttpResponse, err := a.client.callAPI(r) if err != nil || localVarHttpResponse == nil { return successPayload, localVarHttpResponse, err } defer localVarHttpResponse.Body.Close() if localVarHttpResponse.StatusCode >= 300 { bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body) return successPayload, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes) } if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil { return successPayload, localVarHttpResponse, err } return successPayload, localVarHttpResponse, err } /* TeamApiService Remove a user from a team Remove a user from a team. This will also revoke any access this user might have via that team. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Team ID @param userID User ID @return ModelsMessage*/ func (a *TeamApiService) TeamsIdMembersUserIDDelete(ctx context.Context, id int32, userID int32) (ModelsMessage, *http.Response, error) { var ( localVarHttpMethod = strings.ToUpper("Delete") localVarPostBody interface{} localVarFileName string localVarFileBytes []byte successPayload ModelsMessage ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/teams/{id}/members/{userID}" localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", fmt.Sprintf("%v", id), -1) localVarPath = strings.Replace(localVarPath, "{"+"userID"+"}", fmt.Sprintf("%v", userID), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} // to determine the Content-Type header localVarHttpContentTypes := []string{} // set Content-Type header localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) if localVarHttpContentType != "" { localVarHeaderParams["Content-Type"] = localVarHttpContentType } // to determine the Accept header localVarHttpHeaderAccepts := []string{ "application/json", } // set Accept header localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { return successPayload, nil, err } localVarHttpResponse, err := a.client.callAPI(r) if err != nil || localVarHttpResponse == nil { return successPayload, localVarHttpResponse, err } defer localVarHttpResponse.Body.Close() if localVarHttpResponse.StatusCode >= 300 { bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body) return successPayload, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes) } if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil { return successPayload, localVarHttpResponse, err } return successPayload, localVarHttpResponse, err } /* TeamApiService Updates a team Updates a team. * @param ctx context.Context for authentication, logging, tracing, etc. @param id Team ID @param team The team with updated values you want to update. @return ModelsTeam*/ func (a *TeamApiService) TeamsIdPost(ctx context.Context, id int32, team ModelsTeam) (ModelsTeam, *http.Response, error) { var ( localVarHttpMethod = strings.ToUpper("Post") localVarPostBody interface{} localVarFileName string localVarFileBytes []byte successPayload ModelsTeam ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/teams/{id}" localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", fmt.Sprintf("%v", id), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} // to determine the Content-Type header localVarHttpContentTypes := []string{"application/json"} // set Content-Type header localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) if localVarHttpContentType != "" { localVarHeaderParams["Content-Type"] = localVarHttpContentType } // to determine the Accept header localVarHttpHeaderAccepts := []string{ "application/json", } // set Accept header localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } // body params localVarPostBody = &team if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { return successPayload, nil, err } localVarHttpResponse, err := a.client.callAPI(r) if err != nil || localVarHttpResponse == nil { return successPayload, localVarHttpResponse, err } defer localVarHttpResponse.Body.Close() if localVarHttpResponse.StatusCode >= 300 { bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body) return successPayload, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes) } if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil { return successPayload, localVarHttpResponse, err } return successPayload, localVarHttpResponse, err } /* TeamApiService Creates a new team Creates a new team in a given namespace. The user needs write-access to the namespace. * @param ctx context.Context for authentication, logging, tracing, etc. @param team The team you want to create. @return ModelsTeam*/ func (a *TeamApiService) TeamsPut(ctx context.Context, team ModelsTeam) (ModelsTeam, *http.Response, error) { var ( localVarHttpMethod = strings.ToUpper("Put") localVarPostBody interface{} localVarFileName string localVarFileBytes []byte successPayload ModelsTeam ) // create path and map variables localVarPath := a.client.cfg.BasePath + "/teams" localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} // to determine the Content-Type header localVarHttpContentTypes := []string{"application/json"} // set Content-Type header localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) if localVarHttpContentType != "" { localVarHeaderParams["Content-Type"] = localVarHttpContentType } // to determine the Accept header localVarHttpHeaderAccepts := []string{ "application/json", } // set Accept header localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) if localVarHttpHeaderAccept != "" { localVarHeaderParams["Accept"] = localVarHttpHeaderAccept } // body params localVarPostBody = &team if ctx != nil { // API Key Authentication if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { var key string if auth.Prefix != "" { key = auth.Prefix + " " + auth.Key } else { key = auth.Key } localVarHeaderParams["Authorization"] = key } } r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes) if err != nil { return successPayload, nil, err } localVarHttpResponse, err := a.client.callAPI(r) if err != nil || localVarHttpResponse == nil { return successPayload, localVarHttpResponse, err } defer localVarHttpResponse.Body.Close() if localVarHttpResponse.StatusCode >= 300 { bodyBytes, _ := ioutil.ReadAll(localVarHttpResponse.Body) return successPayload, localVarHttpResponse, reportError("Status: %v, Body: %s", localVarHttpResponse.Status, bodyBytes) } if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil { return successPayload, localVarHttpResponse, err } return successPayload, localVarHttpResponse, err }