github.com/grokify/go-ringcentral-client@v0.3.31/engagevoice/v1/client/api_agents.go (about) 1 /* 2 * RingCentral Engage Voice API 3 * 4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) 5 * 6 * API version: 1.0 7 * Generated by: OpenAPI Generator (https://openapi-generator.tech) 8 */ 9 10 package engagevoice 11 12 import ( 13 "context" 14 "fmt" 15 "io/ioutil" 16 "net/http" 17 "net/url" 18 "strings" 19 ) 20 21 // Linger please 22 var ( 23 _ context.Context 24 ) 25 26 type AgentsApiService service 27 28 /* 29 AgentsApiService Get Agent Groups 30 Returns a listing of agent groups for an account 31 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 32 * @param accountId 33 @return []AgentGroup 34 */ 35 func (a *AgentsApiService) GetAgentGroups(ctx context.Context, accountId string) ([]AgentGroup, *http.Response, error) { 36 var ( 37 localVarHttpMethod = http.MethodGet 38 localVarPostBody interface{} 39 localVarFormFileName string 40 localVarFileName string 41 localVarFileBytes []byte 42 localVarReturnValue []AgentGroup 43 ) 44 45 // create path and map variables 46 localVarPath := a.client.cfg.BasePath + "/admin/accounts/{accountId}/agentGroups" 47 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 48 49 localVarHeaderParams := make(map[string]string) 50 localVarQueryParams := url.Values{} 51 localVarFormParams := url.Values{} 52 53 // to determine the Content-Type header 54 localVarHttpContentTypes := []string{} 55 56 // set Content-Type header 57 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 58 if localVarHttpContentType != "" { 59 localVarHeaderParams["Content-Type"] = localVarHttpContentType 60 } 61 62 // to determine the Accept header 63 localVarHttpHeaderAccepts := []string{"application/json"} 64 65 // set Accept header 66 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 67 if localVarHttpHeaderAccept != "" { 68 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 69 } 70 if ctx != nil { 71 // API Key Authentication 72 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 73 var key string 74 if auth.Prefix != "" { 75 key = auth.Prefix + " " + auth.Key 76 } else { 77 key = auth.Key 78 } 79 localVarHeaderParams["X-Auth-Token"] = key 80 } 81 } 82 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 83 if err != nil { 84 return localVarReturnValue, nil, err 85 } 86 87 localVarHttpResponse, err := a.client.callAPI(r) 88 if err != nil || localVarHttpResponse == nil { 89 return localVarReturnValue, localVarHttpResponse, err 90 } 91 92 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 93 localVarHttpResponse.Body.Close() 94 if err != nil { 95 return localVarReturnValue, localVarHttpResponse, err 96 } 97 98 if localVarHttpResponse.StatusCode >= 300 { 99 newErr := GenericOpenAPIError{ 100 body: localVarBody, 101 error: localVarHttpResponse.Status, 102 } 103 if localVarHttpResponse.StatusCode == 200 { 104 var v []AgentGroup 105 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 106 if err != nil { 107 newErr.error = err.Error() 108 return localVarReturnValue, localVarHttpResponse, newErr 109 } 110 newErr.model = v 111 return localVarReturnValue, localVarHttpResponse, newErr 112 } 113 if localVarHttpResponse.StatusCode == 500 { 114 var v Error 115 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 116 if err != nil { 117 newErr.error = err.Error() 118 return localVarReturnValue, localVarHttpResponse, newErr 119 } 120 newErr.model = v 121 return localVarReturnValue, localVarHttpResponse, newErr 122 } 123 return localVarReturnValue, localVarHttpResponse, newErr 124 } 125 126 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 127 if err != nil { 128 newErr := GenericOpenAPIError{ 129 body: localVarBody, 130 error: err.Error(), 131 } 132 return localVarReturnValue, localVarHttpResponse, newErr 133 } 134 135 return localVarReturnValue, localVarHttpResponse, nil 136 } 137 138 /* 139 AgentsApiService Get Group Agents 140 Returns a listing of agents for an agent group 141 * @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). 142 * @param accountId 143 * @param agentGroupId 144 @return []Agent 145 */ 146 func (a *AgentsApiService) GetAgents(ctx context.Context, accountId string, agentGroupId string) ([]Agent, *http.Response, error) { 147 var ( 148 localVarHttpMethod = http.MethodGet 149 localVarPostBody interface{} 150 localVarFormFileName string 151 localVarFileName string 152 localVarFileBytes []byte 153 localVarReturnValue []Agent 154 ) 155 156 // create path and map variables 157 localVarPath := a.client.cfg.BasePath + "/admin/accounts/{accountId}/agentGroups/{agentGroupId}/agents" 158 localVarPath = strings.Replace(localVarPath, "{"+"accountId"+"}", fmt.Sprintf("%v", accountId), -1) 159 localVarPath = strings.Replace(localVarPath, "{"+"agentGroupId"+"}", fmt.Sprintf("%v", agentGroupId), -1) 160 161 localVarHeaderParams := make(map[string]string) 162 localVarQueryParams := url.Values{} 163 localVarFormParams := url.Values{} 164 165 // to determine the Content-Type header 166 localVarHttpContentTypes := []string{} 167 168 // set Content-Type header 169 localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes) 170 if localVarHttpContentType != "" { 171 localVarHeaderParams["Content-Type"] = localVarHttpContentType 172 } 173 174 // to determine the Accept header 175 localVarHttpHeaderAccepts := []string{"application/json"} 176 177 // set Accept header 178 localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts) 179 if localVarHttpHeaderAccept != "" { 180 localVarHeaderParams["Accept"] = localVarHttpHeaderAccept 181 } 182 if ctx != nil { 183 // API Key Authentication 184 if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok { 185 var key string 186 if auth.Prefix != "" { 187 key = auth.Prefix + " " + auth.Key 188 } else { 189 key = auth.Key 190 } 191 localVarHeaderParams["X-Auth-Token"] = key 192 } 193 } 194 r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFormFileName, localVarFileName, localVarFileBytes) 195 if err != nil { 196 return localVarReturnValue, nil, err 197 } 198 199 localVarHttpResponse, err := a.client.callAPI(r) 200 if err != nil || localVarHttpResponse == nil { 201 return localVarReturnValue, localVarHttpResponse, err 202 } 203 204 localVarBody, err := ioutil.ReadAll(localVarHttpResponse.Body) 205 localVarHttpResponse.Body.Close() 206 if err != nil { 207 return localVarReturnValue, localVarHttpResponse, err 208 } 209 210 if localVarHttpResponse.StatusCode >= 300 { 211 newErr := GenericOpenAPIError{ 212 body: localVarBody, 213 error: localVarHttpResponse.Status, 214 } 215 if localVarHttpResponse.StatusCode == 200 { 216 var v []Agent 217 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 218 if err != nil { 219 newErr.error = err.Error() 220 return localVarReturnValue, localVarHttpResponse, newErr 221 } 222 newErr.model = v 223 return localVarReturnValue, localVarHttpResponse, newErr 224 } 225 if localVarHttpResponse.StatusCode == 500 { 226 var v Error 227 err = a.client.decode(&v, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 228 if err != nil { 229 newErr.error = err.Error() 230 return localVarReturnValue, localVarHttpResponse, newErr 231 } 232 newErr.model = v 233 return localVarReturnValue, localVarHttpResponse, newErr 234 } 235 return localVarReturnValue, localVarHttpResponse, newErr 236 } 237 238 err = a.client.decode(&localVarReturnValue, localVarBody, localVarHttpResponse.Header.Get("Content-Type")) 239 if err != nil { 240 newErr := GenericOpenAPIError{ 241 body: localVarBody, 242 error: err.Error(), 243 } 244 return localVarReturnValue, localVarHttpResponse, newErr 245 } 246 247 return localVarReturnValue, localVarHttpResponse, nil 248 }