Class PhoneNumbersClient

java.lang.Object
com.azure.communication.phonenumbers.PhoneNumbersClient

public final class PhoneNumbersClient extends Object
Synchronous client for Communication service phone number operations.

Instantiating a synchronous Phone Numbers Client

 PhoneNumbersClient phoneNumberClient = new PhoneNumbersClientBuilder()
     .endpoint(endpoint)
     .credential(keyCredential)
     .httpClient(httpClient)
     .buildClient();
 
See Also:
  • Method Details

    • getPurchasedPhoneNumber

      public PurchasedPhoneNumber getPurchasedPhoneNumber(String phoneNumber)
      Gets information about a purchased phone number.

      Code Samples

       PurchasedPhoneNumber phoneNumber = phoneNumberClient.getPurchasedPhoneNumber("+18001234567");
       System.out.println("Phone Number Value: " + phoneNumber.getPhoneNumber());
       System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
       
      Parameters:
      phoneNumber - The phone number id in E.164 format. The leading plus can be either + or encoded as %2B.
      Returns:
      PurchasedPhoneNumber representing the purchased telephone number.
      Throws:
      NullPointerException - if phoneNumber is null.
    • getPurchasedPhoneNumberWithResponse

      public com.azure.core.http.rest.Response<PurchasedPhoneNumber> getPurchasedPhoneNumberWithResponse(String phoneNumber, com.azure.core.util.Context context)
      Gets information about a purchased phone number with response.

      Code Samples

       Response<PurchasedPhoneNumber> response = phoneNumberClient
               .getPurchasedPhoneNumberWithResponse("+18001234567", Context.NONE);
       PurchasedPhoneNumber phoneNumber = response.getValue();
       System.out.println("Phone Number Value: " + phoneNumber.getPhoneNumber());
       System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
       
      Parameters:
      phoneNumber - The phone number id in E.164 format. The leading plus can be either + or encoded as %2B.
      context - A Context representing the request context.
      Returns:
      PurchasedPhoneNumber representing the purchased telephone number.
      Throws:
      NullPointerException - if phoneNumber is null.
    • listPurchasedPhoneNumbers

      public com.azure.core.http.rest.PagedIterable<PurchasedPhoneNumber> listPurchasedPhoneNumbers()
      Gets the list of the purchased phone numbers.

      Code Samples

       PagedIterable<PurchasedPhoneNumber> phoneNumbers = phoneNumberClient.listPurchasedPhoneNumbers();
       PurchasedPhoneNumber phoneNumber = phoneNumbers.iterator().next();
       System.out.println("Phone Number Value: " + phoneNumber.getPhoneNumber());
       System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
       
      Returns:
      A PagedIterable of PurchasedPhoneNumber instances representing purchased telephone numbers.
    • listPurchasedPhoneNumbers

      public com.azure.core.http.rest.PagedIterable<PurchasedPhoneNumber> listPurchasedPhoneNumbers(com.azure.core.util.Context context)
      Gets the list of the purchased phone numbers with context.

      Code Samples

       PagedIterable<PurchasedPhoneNumber> phoneNumbers = phoneNumberClient.listPurchasedPhoneNumbers(Context.NONE);
       PurchasedPhoneNumber phoneNumber = phoneNumbers.iterator().next();
       System.out.println("Phone Number Value: " + phoneNumber.getPhoneNumber());
       System.out.println("Phone Number Country Code: " + phoneNumber.getCountryCode());
       
      Parameters:
      context - A Context representing the request context.
      Returns:
      A PagedIterable of PurchasedPhoneNumber instances representing purchased telephone numbers.
    • beginSearchAvailablePhoneNumbers

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,PhoneNumberSearchResult> beginSearchAvailablePhoneNumbers(String countryCode, PhoneNumberType phoneNumberType, PhoneNumberAssignmentType assignmentType, PhoneNumberCapabilities capabilities)
      Starts the search for available phone numbers to purchase. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PhoneNumberCapabilities capabilities = new PhoneNumberCapabilities()
               .setCalling(PhoneNumberCapabilityType.INBOUND)
               .setSms(PhoneNumberCapabilityType.INBOUND_OUTBOUND);
      
       SyncPoller<PhoneNumberOperation, PhoneNumberSearchResult> poller = phoneNumberClient
               .beginSearchAvailablePhoneNumbers("US", PhoneNumberType.TOLL_FREE,
                       PhoneNumberAssignmentType.APPLICATION, capabilities);
       PollResponse<PhoneNumberOperation> response = poller.waitForCompletion();
       String searchId = "";
      
       if (LongRunningOperationStatus.SUCCESSFULLY_COMPLETED == response.getStatus()) {
           PhoneNumberSearchResult searchResult = poller.getFinalResult();
           searchId = searchResult.getSearchId();
           System.out.println("Searched phone numbers: " + searchResult.getPhoneNumbers());
           System.out.println("Search expires by: " + searchResult.getSearchExpiresBy());
           System.out.println("Phone number costs:" + searchResult.getCost().getAmount());
       }
       
      Parameters:
      countryCode - The ISO 3166-2 country code.
      phoneNumberType - PhoneNumberType The phone number type.
      assignmentType - PhoneNumberAssignmentType The phone number assignment type.
      capabilities - PhoneNumberCapabilities The phone number capabilities.
      Returns:
      A SyncPoller object with the reservation result.
      Throws:
      NullPointerException - if countryCode or searchRequest is null.
    • beginSearchAvailablePhoneNumbers

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,PhoneNumberSearchResult> beginSearchAvailablePhoneNumbers(String countryCode, PhoneNumberType phoneNumberType, PhoneNumberAssignmentType assignmentType, PhoneNumberCapabilities capabilities, PhoneNumberSearchOptions searchOptions, com.azure.core.util.Context context)
      Starts the search for available phone numbers to purchase. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PhoneNumberCapabilities capabilities = new PhoneNumberCapabilities()
               .setCalling(PhoneNumberCapabilityType.INBOUND)
               .setSms(PhoneNumberCapabilityType.INBOUND_OUTBOUND);
       PhoneNumberSearchOptions searchOptions = new PhoneNumberSearchOptions().setAreaCode("800").setQuantity(1);
      
       SyncPoller<PhoneNumberOperation, PhoneNumberSearchResult> poller = phoneNumberClient
               .beginSearchAvailablePhoneNumbers("US", PhoneNumberType.TOLL_FREE,
                       PhoneNumberAssignmentType.APPLICATION, capabilities, searchOptions, Context.NONE);
       PollResponse<PhoneNumberOperation> response = poller.waitForCompletion();
       String searchId = "";
      
       if (LongRunningOperationStatus.SUCCESSFULLY_COMPLETED == response.getStatus()) {
           PhoneNumberSearchResult searchResult = poller.getFinalResult();
           searchId = searchResult.getSearchId();
           System.out.println("Searched phone numbers: " + searchResult.getPhoneNumbers());
           System.out.println("Search expires by: " + searchResult.getSearchExpiresBy());
           System.out.println("Phone number costs:" + searchResult.getCost().getAmount());
       }
       
      Parameters:
      countryCode - The ISO 3166-2 country code.
      phoneNumberType - PhoneNumberType The phone number type.
      assignmentType - PhoneNumberAssignmentType The phone number assignment type.
      capabilities - PhoneNumberCapabilities The phone number capabilities.
      searchOptions - The phone number search options.
      context - A Context representing the request context.
      Returns:
      A SyncPoller object with the reservation result.
      Throws:
      NullPointerException - if countryCode or searchRequest is null.
    • beginPurchasePhoneNumbers

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,PurchasePhoneNumbersResult> beginPurchasePhoneNumbers(String searchId)
      Starts the purchase of the phone number(s) in the search result associated with a given id. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PollResponse<PhoneNumberOperation> purchaseResponse =
           phoneNumberClient.beginPurchasePhoneNumbers(searchId).waitForCompletion();
       System.out.println("Purchase phone numbers is complete: " + purchaseResponse.getStatus());
       
      Parameters:
      searchId - ID of the search
      Returns:
      A SyncPoller object with PurchasePhoneNumbersResult.
      Throws:
      NullPointerException - if searchId is null.
    • beginPurchasePhoneNumbers

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,PurchasePhoneNumbersResult> beginPurchasePhoneNumbers(String searchId, com.azure.core.util.Context context)
      Starts the purchase of the phone number(s) in the search result associated with a given id. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PollResponse<PhoneNumberOperation> purchaseResponse = phoneNumberClient
               .beginPurchasePhoneNumbers(searchId, Context.NONE).waitForCompletion();
       System.out.println("Purchase phone numbers is complete: " + purchaseResponse.getStatus());
       
      Parameters:
      searchId - ID of the search
      context - A Context representing the request context.
      Returns:
      A SyncPoller object with PurchasePhoneNumbersResult.
      Throws:
      NullPointerException - if searchId is null.
    • beginReleasePhoneNumber

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,ReleasePhoneNumberResult> beginReleasePhoneNumber(String phoneNumber)
      Starts the update of capabilities for a purchased phone number. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PollResponse<PhoneNumberOperation> releaseResponse =
           phoneNumberClient.beginReleasePhoneNumber("+18001234567").waitForCompletion();
       System.out.println("Release phone number is complete: " + releaseResponse.getStatus());
       
      Parameters:
      phoneNumber - The phone number id in E.164 format. The leading plus can be either + or encoded as %2B.
      Returns:
      A SyncPoller object with ReleasePhoneNumberResult.
      Throws:
      NullPointerException - if phoneNumber is null.
    • beginReleasePhoneNumber

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,ReleasePhoneNumberResult> beginReleasePhoneNumber(String phoneNumber, com.azure.core.util.Context context)
      Starts the update of capabilities for a purchased phone number. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PollResponse<PhoneNumberOperation> releaseResponse = phoneNumberClient
               .beginReleasePhoneNumber("+18001234567", Context.NONE).waitForCompletion();
       System.out.println("Release phone number is complete: " + releaseResponse.getStatus());
       
      Parameters:
      phoneNumber - The phone number id in E.164 format. The leading plus can be either + or encoded as %2B.
      context - A Context representing the request context.
      Returns:
      A SyncPoller object with ReleasePhoneNumberResult.
      Throws:
      NullPointerException - if phoneNumber is null.
    • beginUpdatePhoneNumberCapabilities

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,PurchasedPhoneNumber> beginUpdatePhoneNumberCapabilities(String phoneNumber, PhoneNumberCapabilities capabilities)
      Update capabilities of a purchased phone number. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PhoneNumberCapabilities capabilities = new PhoneNumberCapabilities();
       capabilities
               .setCalling(PhoneNumberCapabilityType.INBOUND)
               .setSms(PhoneNumberCapabilityType.INBOUND_OUTBOUND);
      
       SyncPoller<PhoneNumberOperation, PurchasedPhoneNumber> poller = phoneNumberClient
               .beginUpdatePhoneNumberCapabilities("+18001234567", capabilities);
       PollResponse<PhoneNumberOperation> response = poller.waitForCompletion();
      
       if (LongRunningOperationStatus.SUCCESSFULLY_COMPLETED == response.getStatus()) {
           PurchasedPhoneNumber phoneNumber = poller.getFinalResult();
           System.out.println("Phone Number Calling capabilities: " + phoneNumber.getCapabilities().getCalling());
           System.out.println("Phone Number SMS capabilities: " + phoneNumber.getCapabilities().getSms());
       }
       
      Parameters:
      phoneNumber - The phone number id in E.164 format. The leading plus can be either + or encoded as %2B.
      capabilities - Update capabilities of a purchased phone number.
      Returns:
      A SyncPoller object with purchased phone number.
      Throws:
      NullPointerException - if phoneNumber or capabilities is null.
    • beginUpdatePhoneNumberCapabilities

      public com.azure.core.util.polling.SyncPoller<PhoneNumberOperation,PurchasedPhoneNumber> beginUpdatePhoneNumberCapabilities(String phoneNumber, PhoneNumberCapabilities capabilities, com.azure.core.util.Context context)
      Update capabilities of a purchased phone number. This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.

      Code Samples

       PhoneNumberCapabilities capabilities = new PhoneNumberCapabilities();
       capabilities
               .setCalling(PhoneNumberCapabilityType.INBOUND)
               .setSms(PhoneNumberCapabilityType.INBOUND_OUTBOUND);
      
       SyncPoller<PhoneNumberOperation, PurchasedPhoneNumber> poller = phoneNumberClient
               .beginUpdatePhoneNumberCapabilities("+18001234567", capabilities, Context.NONE);
       PollResponse<PhoneNumberOperation> response = poller.waitForCompletion();
      
       if (LongRunningOperationStatus.SUCCESSFULLY_COMPLETED == response.getStatus()) {
           PurchasedPhoneNumber phoneNumber = poller.getFinalResult();
           System.out.println("Phone Number Calling capabilities: " + phoneNumber.getCapabilities().getCalling());
           System.out.println("Phone Number SMS capabilities: " + phoneNumber.getCapabilities().getSms());
       }
       
      Parameters:
      phoneNumber - The phone number id in E.164 format. The leading plus can be either + or encoded as %2B.
      capabilities - Update capabilities of a purchased phone number.
      context - A Context representing the request context.
      Returns:
      A SyncPoller object with purchased phone number.
      Throws:
      NullPointerException - if phoneNumber or capabilities is null.
    • listAvailableCountries

      public com.azure.core.http.rest.PagedIterable<PhoneNumberCountry> listAvailableCountries()
      Gets the list of the available countries.
      Returns:
      A PagedIterable of PhoneNumberCountry instances representing available countries.
    • listAvailableCountries

      public com.azure.core.http.rest.PagedIterable<PhoneNumberCountry> listAvailableCountries(com.azure.core.util.Context context)
      Gets the list of the purchased phone numbers with context.
      Parameters:
      context - A Context representing the request context.
      Returns:
      A PagedIterable of PhoneNumberCountry instances representing purchased telephone numbers.
    • listAvailableLocalities

      public com.azure.core.http.rest.PagedIterable<PhoneNumberLocality> listAvailableLocalities(String countryCode, String administrativeDivision)
      Gets the list of the available localities. I.e. cities, towns.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      administrativeDivision - An optional parameter. The name or short name of the state/province within which to list the localities.
      Returns:
      A PagedIterable of PhoneNumberLocality instances representing available localities with phone numbers.
    • listAvailableLocalities

      public com.azure.core.http.rest.PagedIterable<PhoneNumberLocality> listAvailableLocalities(String countryCode, String administrativeDivision, com.azure.core.util.Context context)
      Gets the list of the available localities. I.e. cities, towns.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      administrativeDivision - An optional parameter. The name or short name of the state/province within which to list the localities.
      context - A Context representing the request context.
      Returns:
      A PagedIterable of PhoneNumberLocality instances representing available localities with phone numbers.
    • listAvailableTollFreeAreaCodes

      public com.azure.core.http.rest.PagedIterable<com.azure.communication.phonenumbers.implementation.models.PhoneNumberAreaCode> listAvailableTollFreeAreaCodes(String countryCode)
      Gets the list of the available Toll-Free area codes for a given country.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      Returns:
      A PagedIterable of PhoneNumberAreaCode instances representing available area codes.
    • listAvailableTollFreeAreaCodes

      public com.azure.core.http.rest.PagedIterable<com.azure.communication.phonenumbers.implementation.models.PhoneNumberAreaCode> listAvailableTollFreeAreaCodes(String countryCode, com.azure.core.util.Context context)
      Gets the list of the available Toll-Free area codes for a given country.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      context - A Context representing the request context.
      Returns:
      A PagedIterable of PhoneNumberAreaCode instances representing available area codes.
    • listAvailableGeographicAreaCodes

      public com.azure.core.http.rest.PagedIterable<com.azure.communication.phonenumbers.implementation.models.PhoneNumberAreaCode> listAvailableGeographicAreaCodes(String countryCode, PhoneNumberAssignmentType assignmentType, String locality, String administrativeDivision)
      Gets the list of the available Geographic area codes for a given country and locality.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      assignmentType - PhoneNumberAssignmentType The phone number assignment type.
      locality - The name of the locality (e.g. city or town name) in which to fetch area codes.
      administrativeDivision - An optional parameter. The name of the administrative division (e.g. state or province) of the locality.
      Returns:
      A PagedIterable of PhoneNumberAreaCode instances representing purchased telephone numbers.
    • listAvailableGeographicAreaCodes

      public com.azure.core.http.rest.PagedIterable<com.azure.communication.phonenumbers.implementation.models.PhoneNumberAreaCode> listAvailableGeographicAreaCodes(String countryCode, PhoneNumberAssignmentType assignmentType, String locality, String administrativeDivision, com.azure.core.util.Context context)
      Gets the list of the available Geographic area codes for a given country and locality.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      assignmentType - PhoneNumberAssignmentType The phone number assignment type.
      locality - The name of the locality (e.g. city or town name) in which to fetch area codes.
      administrativeDivision - An optional parameter. The name of the administrative division (e.g. state or province) of the locality.
      context - A Context representing the request context.
      Returns:
      A PagedIterable of PhoneNumberAreaCode instances representing purchased telephone numbers.
    • listAvailableOfferings

      public com.azure.core.http.rest.PagedIterable<PhoneNumberOffering> listAvailableOfferings(String countryCode, PhoneNumberType phoneNumberType, PhoneNumberAssignmentType assignmentType)
      Gets the list of the available phone number offerings for the given country.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      phoneNumberType - PhoneNumberType Optional parameter. Restrict the offerings to the phone number type.
      assignmentType - PhoneNumberAssignmentType Optional parameter. Restrict the offerings to the assignment type.
      Returns:
      A PagedIterable of PurchasedPhoneNumber instances representing purchased telephone numbers.
    • listAvailableOfferings

      public com.azure.core.http.rest.PagedIterable<PhoneNumberOffering> listAvailableOfferings(String countryCode, PhoneNumberType phoneNumberType, PhoneNumberAssignmentType assignmentType, com.azure.core.util.Context context)
      Gets the list of the available phone number offerings for the given country.
      Parameters:
      countryCode - The ISO 3166-2 country code.
      phoneNumberType - PhoneNumberType Optional parameter. Restrict the offerings to the phone number type.
      assignmentType - PhoneNumberAssignmentType Optional parameter. Restrict the offerings to the assignment type.
      context - A Context representing the request context.
      Returns:
      A PagedIterable of PurchasedPhoneNumber instances representing purchased telephone numbers.