diff --git a/README.md b/README.md
index edfc7096..2cdd9057 100644
--- a/README.md
+++ b/README.md
@@ -409,6 +409,22 @@ Authentication schemes defined for the API:
- **Authorization URL**:
- **Scopes**: N/A
+
+### Custom Token URL
+
+By default, access tokens are requested from the token URL defined by the API. To use a different token endpoint, call `setTokenUrl` on the `ApiClient` before making a request:
+
+```java
+ApiClient client = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET", null);
+client.setTokenUrl("https://your-token-endpoint.example.com/oauth2/token");
+```
+
+Pass that client to any API class as usual. Note that:
+
+- The value must be an absolute URL. Anything else throws an `IllegalArgumentException`.
+- Any access token already acquired from the previous token URL is discarded, so the next request acquires a new one from the endpoint you set.
+- The client must have been created with credentials (as above). Calling `setTokenUrl` on a client built without them throws a `RuntimeException`.
+
## Recommendation
diff --git a/custom_templates/libraries/okhttp-gson/ApiClient.mustache b/custom_templates/libraries/okhttp-gson/ApiClient.mustache
index d19a7063..9dc34778 100644
--- a/custom_templates/libraries/okhttp-gson/ApiClient.mustache
+++ b/custom_templates/libraries/okhttp-gson/ApiClient.mustache
@@ -693,6 +693,26 @@ public class ApiClient {
throw new RuntimeException("No OAuth2 authentication configured!");
}
+ {{#hasOAuthMethods}}
+ /**
+ * Helper method to set the token URL for the first OAuth2 authentication.
+ * Any access token acquired from the previous token URL is discarded, so the
+ * next request will acquire a new one from the given endpoint.
+ *
+ * @param tokenUrl The token URL. The value must be an absolute URL.
+ * @throws java.lang.IllegalArgumentException If the token URL is not an absolute URL
+ */
+ public void setTokenUrl(String tokenUrl) {
+ for (Authentication auth : authentications.values()) {
+ if (auth instanceof RetryingOAuth) {
+ ((RetryingOAuth) auth).setTokenUrl(tokenUrl);
+ return;
+ }
+ }
+ throw new RuntimeException("No OAuth2 authentication configured!");
+ }
+ {{/hasOAuthMethods}}
+
/**
* Helper method to set credentials for AWSV4 Signature
*
diff --git a/custom_templates/libraries/okhttp-gson/README.mustache b/custom_templates/libraries/okhttp-gson/README.mustache
index de1a697e..0df46460 100644
--- a/custom_templates/libraries/okhttp-gson/README.mustache
+++ b/custom_templates/libraries/okhttp-gson/README.mustache
@@ -187,6 +187,24 @@ Class | Method | HTTP request | Description
{{/isOAuth}}
{{/authMethods}}
+{{#hasOAuthMethods}}
+
+### Custom Token URL
+
+By default, access tokens are requested from the token URL defined by the API. To use a different token endpoint, call `setTokenUrl` on the `ApiClient` before making a request:
+
+```java
+ApiClient client = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET", null);
+client.setTokenUrl("https://your-token-endpoint.example.com/oauth2/token");
+```
+
+Pass that client to any API class as usual. Note that:
+
+- The value must be an absolute URL. Anything else throws an `IllegalArgumentException`.
+- Any access token already acquired from the previous token URL is discarded, so the next request acquires a new one from the endpoint you set.
+- The client must have been created with credentials (as above). Calling `setTokenUrl` on a client built without them throws a `RuntimeException`.
+
+{{/hasOAuthMethods}}
## Recommendation
diff --git a/custom_templates/libraries/okhttp-gson/auth/RetryingOAuth.mustache b/custom_templates/libraries/okhttp-gson/auth/RetryingOAuth.mustache
index 82f51812..4352d79e 100644
--- a/custom_templates/libraries/okhttp-gson/auth/RetryingOAuth.mustache
+++ b/custom_templates/libraries/okhttp-gson/auth/RetryingOAuth.mustache
@@ -35,6 +35,10 @@ public class RetryingOAuth extends OAuth implements Interceptor {
private String clientId;
private String clientSecret;
+ private String tokenUrl;
+ private OAuthFlow flow;
+ private Map parameters;
+
/**
* @param client An OkHttp client
* @param tokenRequestBuilder A token request builder
@@ -70,12 +74,10 @@ public class RetryingOAuth extends OAuth implements Interceptor {
this(OAuthClientRequest.tokenLocation(tokenUrl));
this.clientId = clientId;
this.clientSecret = clientSecret;
- setFlow(flow);
- if (parameters != null) {
- for (Map.Entry entry : parameters.entrySet()) {
- tokenRequestBuilder.setParameter(entry.getKey(), entry.getValue());
- }
- }
+ this.tokenUrl = tokenUrl;
+ this.flow = flow;
+ this.parameters = parameters;
+ buildTokenRequest();
}
/**
@@ -99,7 +101,17 @@ public class RetryingOAuth extends OAuth implements Interceptor {
this(client, OAuthClientRequest.tokenLocation(tokenUrl));
this.clientId = clientId;
this.clientSecret = clientSecret;
- setFlow(flow);
+ this.tokenUrl = tokenUrl;
+ this.flow = flow;
+ this.parameters = parameters;
+ buildTokenRequest();
+ }
+
+ private void buildTokenRequest() {
+ this.tokenRequestBuilder = OAuthClientRequest.tokenLocation(tokenUrl);
+ if (flow != null) {
+ setFlow(flow);
+ }
if (parameters != null) {
for (Map.Entry entry : parameters.entrySet()) {
tokenRequestBuilder.setParameter(entry.getKey(), entry.getValue());
@@ -113,6 +125,7 @@ public class RetryingOAuth extends OAuth implements Interceptor {
* @param flow The OAuth flow.
*/
public void setFlow(OAuthFlow flow) {
+ this.flow = flow;
switch(flow) {
case ACCESS_CODE:
tokenRequestBuilder.setGrantType(GrantType.AUTHORIZATION_CODE);
@@ -221,6 +234,32 @@ public class RetryingOAuth extends OAuth implements Interceptor {
return getAccessToken() == null || !getAccessToken().equals(requestAccessToken);
}
+ /**
+ * Gets the token URL used to acquire access tokens for this OAuth2 flow.
+ *
+ * @return The token URL
+ */
+ public String getTokenUrl() {
+ return tokenUrl;
+ }
+
+ /**
+ * Sets the token URL used to acquire access tokens for this OAuth2 flow.
+ * Any access token acquired from the previous token URL is discarded, so the
+ * next request will acquire a new one from the given endpoint.
+ *
+ * @param tokenUrl The token URL. The value must be an absolute URL.
+ * @throws java.lang.IllegalArgumentException If the token URL is not an absolute URL
+ */
+ public synchronized void setTokenUrl(String tokenUrl) {
+ if (tokenUrl == null || "".equals(tokenUrl) || !URI.create(tokenUrl).isAbsolute()) {
+ throw new IllegalArgumentException("OAuth2 token URL must be an absolute URL");
+ }
+ this.tokenUrl = tokenUrl;
+ buildTokenRequest();
+ setAccessToken(null);
+ }
+
/**
* Gets the token request builder
*
diff --git a/src/main/java/com/bandwidth/sdk/ApiClient.java b/src/main/java/com/bandwidth/sdk/ApiClient.java
index 3ca68245..09f2cef3 100644
--- a/src/main/java/com/bandwidth/sdk/ApiClient.java
+++ b/src/main/java/com/bandwidth/sdk/ApiClient.java
@@ -593,6 +593,24 @@ public void setAccessToken(String accessToken) {
throw new RuntimeException("No OAuth2 authentication configured!");
}
+ /**
+ * Helper method to set the token URL for the first OAuth2 authentication.
+ * Any access token acquired from the previous token URL is discarded, so the
+ * next request will acquire a new one from the given endpoint.
+ *
+ * @param tokenUrl The token URL. The value must be an absolute URL.
+ * @throws java.lang.IllegalArgumentException If the token URL is not an absolute URL
+ */
+ public void setTokenUrl(String tokenUrl) {
+ for (Authentication auth : authentications.values()) {
+ if (auth instanceof RetryingOAuth) {
+ ((RetryingOAuth) auth).setTokenUrl(tokenUrl);
+ return;
+ }
+ }
+ throw new RuntimeException("No OAuth2 authentication configured!");
+ }
+
/**
* Helper method to set credentials for AWSV4 Signature
*
diff --git a/src/main/java/com/bandwidth/sdk/auth/RetryingOAuth.java b/src/main/java/com/bandwidth/sdk/auth/RetryingOAuth.java
index 77dd6d98..3081ed04 100644
--- a/src/main/java/com/bandwidth/sdk/auth/RetryingOAuth.java
+++ b/src/main/java/com/bandwidth/sdk/auth/RetryingOAuth.java
@@ -45,6 +45,10 @@ public class RetryingOAuth extends OAuth implements Interceptor {
private String clientId;
private String clientSecret;
+ private String tokenUrl;
+ private OAuthFlow flow;
+ private Map parameters;
+
/**
* @param client An OkHttp client
* @param tokenRequestBuilder A token request builder
@@ -80,12 +84,10 @@ public RetryingOAuth(
this(OAuthClientRequest.tokenLocation(tokenUrl));
this.clientId = clientId;
this.clientSecret = clientSecret;
- setFlow(flow);
- if (parameters != null) {
- for (Map.Entry entry : parameters.entrySet()) {
- tokenRequestBuilder.setParameter(entry.getKey(), entry.getValue());
- }
- }
+ this.tokenUrl = tokenUrl;
+ this.flow = flow;
+ this.parameters = parameters;
+ buildTokenRequest();
}
/**
@@ -109,7 +111,17 @@ public RetryingOAuth(
this(client, OAuthClientRequest.tokenLocation(tokenUrl));
this.clientId = clientId;
this.clientSecret = clientSecret;
- setFlow(flow);
+ this.tokenUrl = tokenUrl;
+ this.flow = flow;
+ this.parameters = parameters;
+ buildTokenRequest();
+ }
+
+ private void buildTokenRequest() {
+ this.tokenRequestBuilder = OAuthClientRequest.tokenLocation(tokenUrl);
+ if (flow != null) {
+ setFlow(flow);
+ }
if (parameters != null) {
for (Map.Entry entry : parameters.entrySet()) {
tokenRequestBuilder.setParameter(entry.getKey(), entry.getValue());
@@ -123,6 +135,7 @@ public RetryingOAuth(
* @param flow The OAuth flow.
*/
public void setFlow(OAuthFlow flow) {
+ this.flow = flow;
switch(flow) {
case ACCESS_CODE:
tokenRequestBuilder.setGrantType(GrantType.AUTHORIZATION_CODE);
@@ -231,6 +244,32 @@ public synchronized boolean updateAccessToken(String requestAccessToken) throws
return getAccessToken() == null || !getAccessToken().equals(requestAccessToken);
}
+ /**
+ * Gets the token URL used to acquire access tokens for this OAuth2 flow.
+ *
+ * @return The token URL
+ */
+ public String getTokenUrl() {
+ return tokenUrl;
+ }
+
+ /**
+ * Sets the token URL used to acquire access tokens for this OAuth2 flow.
+ * Any access token acquired from the previous token URL is discarded, so the
+ * next request will acquire a new one from the given endpoint.
+ *
+ * @param tokenUrl The token URL. The value must be an absolute URL.
+ * @throws java.lang.IllegalArgumentException If the token URL is not an absolute URL
+ */
+ public synchronized void setTokenUrl(String tokenUrl) {
+ if (tokenUrl == null || "".equals(tokenUrl) || !URI.create(tokenUrl).isAbsolute()) {
+ throw new IllegalArgumentException("OAuth2 token URL must be an absolute URL");
+ }
+ this.tokenUrl = tokenUrl;
+ buildTokenRequest();
+ setAccessToken(null);
+ }
+
/**
* Gets the token request builder
*
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/ApiClientTest.java b/src/test/java/com/bandwidth/sdk/unit/api/ApiClientTest.java
index 607d1eb5..8a0a8da2 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/ApiClientTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/ApiClientTest.java
@@ -1,5 +1,6 @@
package com.bandwidth.sdk.unit.api;
+import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import okhttp3.OkHttpClient;
@@ -12,6 +13,7 @@
import static com.bandwidth.sdk.utils.TestingEnvironmentVariables.*;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.Matchers.hasKey;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -65,6 +67,38 @@ public void testBasePathConfiguration() {
assertThat(customBasePath, equalTo(client.getBasePath()));
}
+ @Test
+ public void testSetTokenUrl() {
+ String customTokenUrl = "https://api.example.com/oauth2/token";
+ ApiClient client = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ RetryingOAuth oauth = (RetryingOAuth) client.getAuthentication("OAuth2");
+
+ assertThat(oauth.getTokenUrl(), notNullValue());
+
+ client.setAccessToken("stale-access-token");
+ client.setTokenUrl(customTokenUrl);
+
+ assertThat(oauth.getTokenUrl(), equalTo(customTokenUrl));
+ assertThat(oauth.getAccessToken(), nullValue());
+ }
+
+ @Test
+ public void testSetTokenUrlWithInvalidUrl() {
+ ApiClient client = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+
+ Assertions.assertThrows(IllegalArgumentException.class, () -> client.setTokenUrl("/oauth2/token"));
+ Assertions.assertThrows(IllegalArgumentException.class, () -> client.setTokenUrl(null));
+ Assertions.assertThrows(IllegalArgumentException.class, () -> client.setTokenUrl(""));
+ }
+
+ @Test
+ public void testSetTokenUrlWithoutOAuthConfigured() {
+ ApiClient client = new ApiClient();
+
+ Assertions.assertThrows(RuntimeException.class,
+ () -> client.setTokenUrl("https://api.example.com/oauth2/token"));
+ }
+
@Test
public void testJsonGetter() {
ApiClient client = new ApiClient();
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/CallsApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/CallsApiTest.java
index 95665674..c382d5a9 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/CallsApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/CallsApiTest.java
@@ -44,6 +44,7 @@ public class CallsApiTest {
@BeforeAll
public static void setUp() {
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/ConferencesApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/ConferencesApiTest.java
index 94ac58f9..f368c161 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/ConferencesApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/ConferencesApiTest.java
@@ -40,6 +40,7 @@ public class ConferencesApiTest {
@BeforeAll
public static void setUp() {
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/EndpointsApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/EndpointsApiTest.java
index 81f6f388..7f2f4c11 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/EndpointsApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/EndpointsApiTest.java
@@ -39,6 +39,7 @@ public class EndpointsApiTest {
@BeforeAll
public static void setUp() {
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/MediaApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/MediaApiTest.java
index 78aef00f..6e45fb84 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/MediaApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/MediaApiTest.java
@@ -3,9 +3,7 @@
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiResponse;
-import com.bandwidth.sdk.Configuration;
import com.bandwidth.sdk.api.MediaApi;
-import com.bandwidth.sdk.auth.HttpBasicAuth;
import com.bandwidth.sdk.model.Media;
import static com.bandwidth.sdk.utils.TestingEnvironmentVariables.*;
@@ -22,17 +20,15 @@
@SuppressWarnings("null")
public class MediaApiTest {
- private static ApiClient defaultClient = Configuration.getDefaultApiClient();
- private static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
- private static MediaApi api = new MediaApi(defaultClient);
+ private static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ private static MediaApi api = new MediaApi(oauthClient);
private static File mediaData = new File("src/test/java/com/bandwidth/sdk/fixtures/java_cat.jpeg");
private static String mediaName = "java_binary_media";
@BeforeAll
public static void setUp() {
- Basic.setUsername(BW_USERNAME);
- Basic.setPassword(BW_PASSWORD);
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/MessagesApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/MessagesApiTest.java
index e95c8432..9b654f12 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/MessagesApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/MessagesApiTest.java
@@ -7,9 +7,7 @@
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiResponse;
-import com.bandwidth.sdk.Configuration;
import com.bandwidth.sdk.api.MessagesApi;
-import com.bandwidth.sdk.auth.HttpBasicAuth;
import com.bandwidth.sdk.model.ListMessageDirectionEnum;
import com.bandwidth.sdk.model.ListMessageItem;
import com.bandwidth.sdk.model.Message;
@@ -33,9 +31,8 @@
@SuppressWarnings("null")
public class MessagesApiTest {
- public static ApiClient defaultClient = Configuration.getDefaultApiClient();
- public static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
- public static MessagesApi api = new MessagesApi(defaultClient);
+ public static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ public static MessagesApi api = new MessagesApi(oauthClient);
private static String messageText = "Java SDK Test Message";
private static PriorityEnum messagePriority = PriorityEnum.HIGH;
@@ -43,8 +40,7 @@ public class MessagesApiTest {
@BeforeAll
public static void setUp() {
- Basic.setUsername(BW_USERNAME);
- Basic.setPassword(BW_PASSWORD);
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/MfaApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/MfaApiTest.java
index da214847..c8d0beba 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/MfaApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/MfaApiTest.java
@@ -6,9 +6,7 @@
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiResponse;
-import com.bandwidth.sdk.Configuration;
import com.bandwidth.sdk.api.MfaApi;
-import com.bandwidth.sdk.auth.HttpBasicAuth;
import com.bandwidth.sdk.model.CodeRequest;
import com.bandwidth.sdk.model.MessagingCodeResponse;
import com.bandwidth.sdk.model.VerifyCodeRequest;
@@ -24,17 +22,15 @@
@SuppressWarnings("null")
public class MfaApiTest {
- private static ApiClient defaultClient = Configuration.getDefaultApiClient();
- private static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
- private static MfaApi api = new MfaApi(defaultClient);
+ private static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ private static MfaApi api = new MfaApi(oauthClient);
private static String message = "Your temporary {NAME} {SCOPE} code is {CODE}";
private static Integer digits = 6;
@BeforeAll
public static void setUp() {
- Basic.setUsername(BW_USERNAME);
- Basic.setPassword(BW_PASSWORD);
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/MultiChannelApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/MultiChannelApiTest.java
index 9196e9c7..cdf3247d 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/MultiChannelApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/MultiChannelApiTest.java
@@ -3,9 +3,7 @@
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiResponse;
-import com.bandwidth.sdk.Configuration;
import com.bandwidth.sdk.api.MultiChannelApi;
-import com.bandwidth.sdk.auth.HttpBasicAuth;
import com.bandwidth.sdk.model.CreateMultiChannelMessageResponse;
import com.bandwidth.sdk.model.MessageDirectionEnum;
import com.bandwidth.sdk.model.MultiChannelChannelListRequestObject;
@@ -33,14 +31,12 @@
@SuppressWarnings("null")
public class MultiChannelApiTest {
- private static ApiClient defaultClient = Configuration.getDefaultApiClient();
- private static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
- private static MultiChannelApi api = new MultiChannelApi(defaultClient);
+ private static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ private static MultiChannelApi api = new MultiChannelApi(oauthClient);
@BeforeAll
public static void setUp() {
- Basic.setUsername(BW_USERNAME);
- Basic.setPassword(BW_PASSWORD);
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/PhoneNumberLookupApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/PhoneNumberLookupApiTest.java
index 11d6d676..fca57386 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/PhoneNumberLookupApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/PhoneNumberLookupApiTest.java
@@ -16,9 +16,7 @@
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiResponse;
-import com.bandwidth.sdk.Configuration;
import com.bandwidth.sdk.api.PhoneNumberLookupApi;
-import com.bandwidth.sdk.auth.HttpBasicAuth;
import com.bandwidth.sdk.model.AsyncLookupRequest;
import com.bandwidth.sdk.model.CompletedLookupStatusEnum;
import com.bandwidth.sdk.model.CreateAsyncBulkLookupResponse;
@@ -53,14 +51,12 @@
*/
@SuppressWarnings("null")
public class PhoneNumberLookupApiTest {
- private static ApiClient defaultClient = Configuration.getDefaultApiClient();
- private static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
- private static PhoneNumberLookupApi api = new PhoneNumberLookupApi(defaultClient);
+ private static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ private static PhoneNumberLookupApi api = new PhoneNumberLookupApi(oauthClient);
@BeforeAll
public static void setUp() {
- Basic.setUsername(BW_USERNAME);
- Basic.setPassword(BW_PASSWORD);
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/RecordingsApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/RecordingsApiTest.java
index 4bb04a73..faaa3396 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/RecordingsApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/RecordingsApiTest.java
@@ -39,6 +39,7 @@ public class RecordingsApiTest {
@BeforeAll
public static void setUp() {
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/StatisticsApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/StatisticsApiTest.java
index 754845e7..77257579 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/StatisticsApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/StatisticsApiTest.java
@@ -21,6 +21,7 @@ public class StatisticsApiTest {
@BeforeAll
public static void setUp() {
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/TollFreeVerificationApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/TollFreeVerificationApiTest.java
index 3aa6b326..4ab1c805 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/TollFreeVerificationApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/TollFreeVerificationApiTest.java
@@ -18,9 +18,7 @@
import com.bandwidth.sdk.ApiClient;
import com.bandwidth.sdk.ApiException;
import com.bandwidth.sdk.ApiResponse;
-import com.bandwidth.sdk.Configuration;
import com.bandwidth.sdk.api.TollFreeVerificationApi;
-import com.bandwidth.sdk.auth.HttpBasicAuth;
import com.bandwidth.sdk.model.Address;
import com.bandwidth.sdk.model.BusinessEntityTypeEnum;
import com.bandwidth.sdk.model.BusinessRegistrationTypeEnum;
@@ -51,9 +49,8 @@
@SuppressWarnings("null")
public class TollFreeVerificationApiTest {
- private static ApiClient defaultClient = Configuration.getDefaultApiClient();
- private static HttpBasicAuth Basic = (HttpBasicAuth) defaultClient.getAuthentication("Basic");
- private static TollFreeVerificationApi api = new TollFreeVerificationApi(defaultClient);
+ private static ApiClient oauthClient = new ApiClient(BW_CLIENT_ID, BW_CLIENT_SECRET, null);
+ private static TollFreeVerificationApi api = new TollFreeVerificationApi(oauthClient);
private static WebhookSubscriptionRequestSchema webhookSubscriptionRequestSchema = new WebhookSubscriptionRequestSchema()
.basicAuthentication(new TfvBasicAuthentication()
@@ -64,8 +61,7 @@ public class TollFreeVerificationApiTest {
@BeforeAll
public static void setUp() {
- Basic.setUsername(BW_USERNAME);
- Basic.setPassword(BW_PASSWORD);
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}
diff --git a/src/test/java/com/bandwidth/sdk/unit/api/TranscriptionsApiTest.java b/src/test/java/com/bandwidth/sdk/unit/api/TranscriptionsApiTest.java
index 511c0458..5f2cae8b 100644
--- a/src/test/java/com/bandwidth/sdk/unit/api/TranscriptionsApiTest.java
+++ b/src/test/java/com/bandwidth/sdk/unit/api/TranscriptionsApiTest.java
@@ -30,6 +30,7 @@ public class TranscriptionsApiTest {
@BeforeAll
public static void setUp() {
+ oauthClient.setAccessToken("abcd1234");
api.setCustomBaseUrl("http://127.0.0.1:4010");
}