/// <summary> /// This function makes API call to create contact operation /// </summary> public string createContact(string data) { APIRequest apiRequest = new APIRequest("contacts"); apiRequest.contentType = "application/json"; apiRequest.setBinaryData(data); if (apiService.post(apiRequest)) { return apiService.apiResponse.location; } throw new Exception(apiService.errorResponse); }
/// <summary> /// This funtion makes API call to send SMS /// </summary> public byte[] textToSpeech(string data) { APIRequest apiRequest = new APIRequest("textToSpeech"); apiRequest.accept = "audio/amr-wb"; apiRequest.contentType = "text/plain"; apiRequest.setBinaryData(data); if (apiService.post(apiRequest)) { return apiService.apiResponse.getResponseBinary(); } return null; }
/// <summary> /// This function makes API call to update messages /// </summary> public bool updateMessages(string data) { APIRequest apiRequest = new APIRequest("messages"); apiRequest.accept = "application/json"; apiRequest.contentType = "application/json"; apiRequest.setBinaryData(data); if (apiService.put(apiRequest)) { return true; } throw new Exception(apiService.errorResponse); }
/// <summary> /// This function gets access token with post request /// </summary> public bool RevokeToken(TokenTypeHint tokenType, String token) { TokenTypeHint t = tokenType; var query = HttpUtility.ParseQueryString(String.Empty); string oauthParameters = String.Empty; switch (t) { case TokenTypeHint.AccessToken: query["client_id"] = apiKey; query["client_secret"] = secretKey; query["token"] = token; query["token_type_hint"] = "access_token"; break; case TokenTypeHint.RefreshToken: query["client_id"] = apiKey; query["client_secret"] = secretKey; query["token"] = token; query["token_type_hint"] = "refresh_token"; break; } oauthParameters = query.ToString(); if (!String.IsNullOrEmpty(oauthParameters)) { var revokeService = new APIService(endPoint, "/oauth/v4/"); var apiRequest = new APIRequest("revoke"); apiRequest.requireAccessToken = false; apiRequest.contentType = "application/x-www-form-urlencoded"; apiRequest.setBinaryData(oauthParameters); if (revokeService.post(apiRequest)) { return true; } } throw new Exception(apiService.errorResponse); }
/// <summary> /// This function gets access token with post request /// </summary> public bool GetAccessToken(AccessTokenType type) { AccessTokenType t = type; var query = HttpUtility.ParseQueryString(String.Empty); string oauthParameters = String.Empty; switch (t) { case AccessTokenType.AuthorizationCode: query["grant_type"] = "authorization_code"; query["client_id"] = apiKey; query["client_secret"] = secretKey; query["code"] = authCode; break; case AccessTokenType.RefreshToken: query["grant_type"] = "refresh_token"; query["client_id"] = apiKey; query["client_secret"] = secretKey; query["refresh_token"] = refreshToken; break; case AccessTokenType.ClientCredentials: query["grant_type"] = "client_credentials"; query["client_id"] = apiKey; query["client_secret"] = secretKey; query["scope"] = scope; break; } oauthParameters = query.ToString(); if (!String.IsNullOrEmpty(oauthParameters)) { var apiRequest = new APIRequest("token"); apiRequest.requireAccessToken = false; apiRequest.contentType = "application/x-www-form-urlencoded"; apiRequest.accept = "application/json"; apiRequest.setBinaryData(oauthParameters); if (apiService.post(apiRequest)) { accessTokenJson = apiService.apiResponse.getResponseData(); this.ResetTokenVariables(); return true; } } throw new Exception(apiService.errorResponse); }
/// <summary> /// This function makes API call to update group operation /// </summary> public bool updateGroup(string groupID, string data) { APIRequest apiRequest = new APIRequest("groups/" + groupID); apiRequest.contentType = "application/json"; apiRequest.setBinaryData(data); if (apiService.patch(apiRequest)) { return true; } throw new Exception(apiService.errorResponse); }
/// <summary> /// This funtion makes API call to send SMS /// </summary> /// <param name="data">JSON string</param> public OutboundSMSResponseObj.RootObject sendSMS(string add, string msg) { var obSMSreqObj = new OutboundSMSRequestObj.RootObject() { outboundSMSRequest = new OutboundSMSRequestObj.OutboundSMSRequest() { address = add, message = msg } }; var serializer = new JavaScriptSerializer(); var data = serializer.Serialize(obSMSreqObj); APIRequest apiRequest = new APIRequest("outbox"); apiRequest.accept = "application/json"; apiRequest.contentType = "application/json"; apiRequest.setBinaryData(data); if (apiService.post(apiRequest)) { OutboundSMSResponseObj responseObj = new OutboundSMSResponseObj(); return responseObj.deserializeOutboundSMSResponse(apiService.apiResponse.getResponseData()); } throw new Exception(apiService.errorResponse); }