Skip to content

Number stores under only default location even set "SipPeer" in ImportTnOrder class for "https://dashboard.bandwidth.com/api/v1/accounts/<accountId>/importTnOrders" POST api #71

@nrvmodi

Description

@nrvmodi

Checklist

  • Have you provided a description of the bug?
  • Have you provided your Environment information?
  • Have you provided a sample code snippet?
  • Have you provided a stack trace?
  • Have you outlined the expected behavior?

Description

importTnOrders api did not support SipPeerId. Number stores under only default location even set "SipPeer" in ImportTnOrder class

Environment Information

  • OS Version: (e.g. Windows 10)
  • SDK Version: (e.g. 1.1.0)
  • Environment: (e.g. Java JDK 15)

Sample Code Snippet

ImportTnOrder order = new ImportTnOrder();
        order.setCustomerOrderId(customerOrderId);
        order.setTelephoneNumberList(phoneNumbers);
        order.setLoaAuthorizingPerson(csp.getAuthorizingPersonName());
        ServiceAddress serviceAddress = new ServiceAddress();
        serviceAddress.setHouseNumber(csp.getHouseNumber());
        serviceAddress.setStreetName(csp.getStreetName());
        serviceAddress.setCity(csp.getCity());
        serviceAddress.setStateCode(csp.getStateCode());
        serviceAddress.setZip(csp.getZip());
        serviceAddress.setCountry(csp.getCountry());


        Subscriber subscriber = new Subscriber();
        subscriber.setBusinessName(csp.getName());
        subscriber.setServiceAddress(serviceAddress);
        subscriber.setName(csp.getName());
        subscriber.setFirstName(csp.getName());
        subscriber.setLastName(csp.getName());
order.setSubscriber(subscriber);
        order.setSiteId(Integer.valueOf(csp.getSubAccountId()));
order.setSipPeer(12345); //It will not use this 12345 location. It will use only default location

ImportTnOrdersResponse importTnOrdersResponse = ImportTnOrder.Create(client, order);

Expected Behavior

Numbers must be imported inside that 12345 location.
I have checked the API and it is working fine.

Suggested Fix

Not working code

@XmlRootElement(name="ImportTnOrder")
@XmlAccessorType(XmlAccessType.FIELD)
public class ImportTnOrder extends BaseModel {

    @XmlElement( name = "SipPeer") //XML element should be SipPeerId instead of SipPeer
    private int sipPeer;
@XmlRootElement(name="ImportTnOrder")
@XmlAccessorType(XmlAccessType.FIELD)
public class ImportTnOrder extends BaseModel {

    @XmlElement( name = "SipPeerId") //XML element should be SipPeerId 
    private int sipPeer;

Working curl

curl --location 'https://dashboard.bandwidth.com/api/v1/accounts/<ACCOUNT_ID>/importTnOrders' \
--header 'Content-Type: application/xml' \
--header 'Authorization: Basic <TOKEN>' \
--data '<ImportTnOrder>
   <CustomerOrderId>123</CustomerOrderId>
    <SiteId>109733</SiteId>
    <SipPeerId>897815</SipPeerId>
   <Subscriber>
      <Name>ABC Inc.</Name>
      <ServiceAddress>
         <HouseNumber>11235</HouseNumber>
         <StreetName>Back</StreetName>
         <City>Denver</City>
         <StateCode>CO</StateCode>
         <Zip>27541</Zip>
         <County>Canyon</County>
      </ServiceAddress>
   </Subscriber>
   <LoaAuthorizingPerson>markmacc</LoaAuthorizingPerson>
   <TelephoneNumbers>
        <TelephoneNumber>2673453603</TelephoneNumber>
        <TelephoneNumber>2673453703</TelephoneNumber>
    </TelephoneNumbers>
</ImportTnOrder>    '

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions