diff --git a/src/main/java/com/twilio/rest/lookups/v1/PhoneNumberFetcher.java b/src/main/java/com/twilio/rest/lookups/v1/PhoneNumberFetcher.java index d441134e43..7ffecf9459 100644 --- a/src/main/java/com/twilio/rest/lookups/v1/PhoneNumberFetcher.java +++ b/src/main/java/com/twilio/rest/lookups/v1/PhoneNumberFetcher.java @@ -135,7 +135,7 @@ public PhoneNumber fetch(final TwilioRestClient client) { Request request = new Request( HttpMethod.GET, Domains.LOOKUPS.toString(), - "/v1/PhoneNumbers/" + this.pathPhoneNumber + "", + "/v1/PhoneNumbers/" + this.pathPhoneNumber.encode("utf-8") + "", client.getRegion() ); diff --git a/src/main/java/com/twilio/rest/pricing/v1/voice/NumberFetcher.java b/src/main/java/com/twilio/rest/pricing/v1/voice/NumberFetcher.java index 9549f2dad4..b72bdbd770 100644 --- a/src/main/java/com/twilio/rest/pricing/v1/voice/NumberFetcher.java +++ b/src/main/java/com/twilio/rest/pricing/v1/voice/NumberFetcher.java @@ -41,7 +41,7 @@ public Number fetch(final TwilioRestClient client) { Request request = new Request( HttpMethod.GET, Domains.PRICING.toString(), - "/v1/Voice/Numbers/" + this.pathNumber + "", + "/v1/Voice/Numbers/" + this.pathNumber.encode("utf-8") + "", client.getRegion() ); diff --git a/src/main/java/com/twilio/rest/pricing/v2/voice/NumberFetcher.java b/src/main/java/com/twilio/rest/pricing/v2/voice/NumberFetcher.java index 333ea74ce8..5c3f3bbd85 100644 --- a/src/main/java/com/twilio/rest/pricing/v2/voice/NumberFetcher.java +++ b/src/main/java/com/twilio/rest/pricing/v2/voice/NumberFetcher.java @@ -73,7 +73,7 @@ public Number fetch(final TwilioRestClient client) { Request request = new Request( HttpMethod.GET, Domains.PRICING.toString(), - "/v2/Voice/Numbers/" + this.pathDestinationNumber + "", + "/v2/Voice/Numbers/" + this.pathDestinationNumber.encode("utf-8") + "", client.getRegion() ); diff --git a/src/main/java/com/twilio/type/PhoneNumber.java b/src/main/java/com/twilio/type/PhoneNumber.java index 420cd0bf79..badd98b1d9 100644 --- a/src/main/java/com/twilio/type/PhoneNumber.java +++ b/src/main/java/com/twilio/type/PhoneNumber.java @@ -1,6 +1,7 @@ package com.twilio.type; import java.util.Objects; +import java.net.URLEncoder; public class PhoneNumber implements Endpoint { private final String rawNumber; @@ -36,4 +37,13 @@ public int hashCode() { public String toString() { return this.rawNumber; } + + public String encode(String enc) { + try { + return URLEncoder.encode(this.rawNumber, enc); + } + catch (Exception e) { + return this.rawNumber; + } + } } diff --git a/src/test/java/com/twilio/rest/lookups/v1/PhoneNumberTest.java b/src/test/java/com/twilio/rest/lookups/v1/PhoneNumberTest.java index 0b593ebfbd..7e57b6f422 100644 --- a/src/test/java/com/twilio/rest/lookups/v1/PhoneNumberTest.java +++ b/src/test/java/com/twilio/rest/lookups/v1/PhoneNumberTest.java @@ -41,7 +41,7 @@ public void testFetchRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.GET, Domains.LOOKUPS.toString(), - "/v1/PhoneNumbers/+15017122661"); + "/v1/PhoneNumbers/%2B15017122661"); twilioRestClient.request(request); times = 1; diff --git a/src/test/java/com/twilio/rest/pricing/v1/voice/NumberTest.java b/src/test/java/com/twilio/rest/pricing/v1/voice/NumberTest.java index 5b5b006d70..3e1fb02951 100644 --- a/src/test/java/com/twilio/rest/pricing/v1/voice/NumberTest.java +++ b/src/test/java/com/twilio/rest/pricing/v1/voice/NumberTest.java @@ -41,7 +41,7 @@ public void testFetchRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.GET, Domains.PRICING.toString(), - "/v1/Voice/Numbers/+15017122661"); + "/v1/Voice/Numbers/%2B15017122661"); twilioRestClient.request(request); times = 1; diff --git a/src/test/java/com/twilio/rest/pricing/v2/voice/NumberTest.java b/src/test/java/com/twilio/rest/pricing/v2/voice/NumberTest.java index 5ce0f576c9..103795cd57 100644 --- a/src/test/java/com/twilio/rest/pricing/v2/voice/NumberTest.java +++ b/src/test/java/com/twilio/rest/pricing/v2/voice/NumberTest.java @@ -41,7 +41,7 @@ public void testFetchRequest() { new NonStrictExpectations() {{ Request request = new Request(HttpMethod.GET, Domains.PRICING.toString(), - "/v2/Voice/Numbers/+15017122661"); + "/v2/Voice/Numbers/%2B15017122661"); twilioRestClient.request(request); times = 1;