{"id":20364365,"url":"https://github.com/bandwidth/java-bandwidth-iris","last_synced_at":"2026-01-27T23:18:59.583Z","repository":{"id":21727686,"uuid":"25049362","full_name":"Bandwidth/java-bandwidth-iris","owner":"Bandwidth","description":"Java Client Library for Bandwidth's Phone Number Dashboard (AKA Dashboard, Iris) ","archived":false,"fork":false,"pushed_at":"2025-04-07T13:04:44.000Z","size":445,"stargazers_count":4,"open_issues_count":4,"forks_count":9,"subscribers_count":18,"default_branch":"main","last_synced_at":"2025-04-07T14:23:31.869Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://bandwidth.com","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Bandwidth.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-10-10T19:08:06.000Z","updated_at":"2025-04-07T13:04:47.000Z","dependencies_parsed_at":"2023-02-12T03:45:18.070Z","dependency_job_id":"f51b7ae3-6aa2-4171-a213-ee6448ad82b5","html_url":"https://github.com/Bandwidth/java-bandwidth-iris","commit_stats":null,"previous_names":["bandwidthcom/java-bandwidth-iris"],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bandwidth%2Fjava-bandwidth-iris","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bandwidth%2Fjava-bandwidth-iris/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bandwidth%2Fjava-bandwidth-iris/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bandwidth%2Fjava-bandwidth-iris/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bandwidth","download_url":"https://codeload.github.com/Bandwidth/java-bandwidth-iris/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248519391,"owners_count":21117756,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T00:11:25.287Z","updated_at":"2025-10-27T11:19:31.394Z","avatar_url":"https://github.com/Bandwidth.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# java-bandwidth-iris\n\nJava Client library for IRIS / BBS API\n\n## Installing\n\nBandwidth Java IRIS SDK uses Maven. The jars are available from a public Maven repository\n\nUse the following dependency in your project:\n```\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.bandwidth.sdk\u003c/groupId\u003e\n  \u003cartifactId\u003ebandwidth-java-iris-sdk\u003c/artifactId\u003e\n  \u003cversion\u003e1.0\u003c/version\u003e\n  \u003cscope\u003ecompile\u003c/scope\u003e\n\u003c/dependency\u003e\n```\n\nIf you want to compile it yourself, here's how:\n```bash\n$ git clone git@github.com:bandwidthcom/java-bandwidth-iris.git\n$ cd java-bandwidth-iris\n$ mvn install\n```\n\n## Usage\n\nCreating the client\n```Java\nIrisClient client = new IrisClient(accountId, username, password);\n\n// You can then use the client to call a particular object's methods, e.g.\nSite s = new Site();\nSite returnSite = Site.create(client, s);\n\n```\n\n## Examples\nThere is an 'examples' folder in the source tree that shows how each of the API objects work with simple example code.\nTo run each of the examples, set them as run targets in your IDE, then set the following system environment variables:\n\n```\nexport BANDWIDTH_IRIS_ACCOUNTID=\u003cyouraccountid\u003e\nexport BANDWIDTH_IRIS_USERNAME=\u003cyourusername\u003e\nexport BANDWIDTH_IRIS_PASSWORD=\u003cyourpassword\u003e\nexport BANDWIDTH_IRIS_URL=https://dashboard.bandwidth.com\n```\n\n\n## API Objects\n### General principles\nWhen fetching objects from the API, it will always return an object that has the client\ninstantiated so that you can call dependent methods as well as update, delete.\n\nExample:\n```Java\nSite newSite = new Site();\nnewSite.setName(\"My New Site\");\n\nSite s = Site.create(client, newSite);\ns.setName(\"Some Other Name\");\ns.update();\n//then\ns.delete();// etc\n```\n\nEach entity, where appropriate has a get, list, create, update and delete method\n\n## Available Numbers\n```\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"areaCode\", \"205\");\nquery.put(\"enableTNDetail\", true);\nquery.put(\"quantity\", 2);\n\nList\u003cTelephoneNumberDetail\u003e numbers = (List\u003cTelephoneNumberDetail\u003e) AvailableNumbers.search(client, query);\nfor (TelephoneNumberDetail number : numbers)\n{\n    System.out.println(String.format(\"Full number: %s : Rate Center: %s\", number.getFullNumber(), number.getRateCenter()));\n}\n```\n\n## Available NpaNxx\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"areaCode\", \"805\");\nquery.put(\"quantity\", 2);\nList\u003cAvailableNpaNxx\u003e availableNpaNxxList = AvailableNpaNxx.list(client, query);\nfor(AvailableNpaNxx npaNxx : availableNpaNxxList){\n    System.out.println(\n      String.format(\"City: %s | Npa: %s | Nxx: %s | State: %s \", npaNxx.getCity(), npaNxx.getNpa(),\n              npaNxx.getNxx(), npaNxx.getState())\n    );\n}\n\n\n```\n\n## Cities\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"state\", \"NC\");\n\nList\u003cCity\u003e cities = City.list(client, query);\nfor(City c : cities){\n    System.out.println(String.format(\"Name: %s | RcAbbreviation: %s\", c.getName(), c.getRcAbbreviation()));\n}\n```\n\n## Covered Rate Centers\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"state\", \"NC\");\n\nList\u003cCoveredRateCenter\u003e rateCenters = CoveredRateCenter.list(client, query);\nfor(CoveredRateCenter rc : rateCenters){\n    System.out.println(String.format(\"Name: %s | Abbreviation: %s | State: %s | Lata: %s\", rc.getName(),\n            rc.getAbbreviation(), rc.getState(), rc.getLata()));\n}\n```\n\n\n## Disconnect Numbers\nThe Disconnect object is used to disconnect numbers from an account.  Creates a disconnect order that can be tracked\n\n### Create Disconnect\n```Java\nDisconnectTelephoneNumberOrder disco = new DisconnectTelephoneNumberOrder();\ndisco.setName(\"A test order\");\ndisco.getDisconnectTelephoneNumberOrderType().getTelephoneNumberList().add(\"9195551212\");\n\nDisconnectTelephoneNumberOrderResponse response = DisconnectTelephoneNumberOrder.create(client, disco);\n```\n\n### Get Disconnect\n```Java\nDisconnectTelephoneNumberOrderResponse response = DisconnectTelephoneNumberOrder.get(client, \"orderId\");\n```\n\n\n## Dlda\n\n### Create Ddla\n```Java\nDldaTnGroup dldaTnGroup = new DldaTnGroup();\ndldaTnGroup.getTelephoneNumberList().add(\"9195551212\");\ndldaTnGroup.setAccountType(\"RESIDENTIAL\");\ndldaTnGroup.setListingType(\"LISTED\");\nDldaOrder order = new DldaOrder();\norder.getDldaTnGroups().add(dldaTnGroup);\n\nDldaOrder newOrder = DldaOrder.create(client, order);\n\n```\n\n### Get Dlda\n```Java\nDldaOrder order = DldaOrder.get(client, \"orderId\");\n```\n\n### List Dldas\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"telephoneNumber\", \"9195551212\");\n\nResponseSelectWrapper wrapper = DldaOrder.list(client, query);\n```\n## In Service Numbers\n\n### List InService Numbers\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"state\", \"NC\");\n\nTNs tns = InserviceNumber.list(client, query);\n```\n\n## Lidb\n\n### Create\n```Java\nLidbTnGroup group = new LidbTnGroup();\ngroup.getTelephoneNumberList().add(\"9195551212\");\nLidbOrder order = new LidbOrder();\norder.getLidbTnGroupList().add(group);\norder = LidbOrder.create(client, order);\n```\n### Get Lidb\n```Java\nLidbOrder order = LidbOrder.get(client, \"orderId\");\n```\n\n## LNP Checker\n### Check LNP\n```Java\nNumberPortabilityRequest request = new NumberPortabilityRequest();\nrequest.getTnList().add(\"9195551212\");\nNumberPortabilityResponse response = LnpChecker.checkLnp(client, request, \"true\");\nSystem.out.println(response.getPortableNumbers().get(0));\n```\n\n## Orders\n### Create Order\n```Java\nOrder o = new Order();\no.setName(\"A New Order\");\nExistingTelephoneNumberOrderType existingTelephoneNumberOrderType = new ExistingTelephoneNumberOrderType();\nexistingTelephoneNumberOrderType.getTelephoneNumberList().add(\"2052865046\");\no.setExistingTelephoneNumberOrderType(existingTelephoneNumberOrderType);\n\nOrderResponse createdOrder = Order.create(client, o);\n```\n### Get Order\n```Java\nOrder o = Order.get(client, \"orderId\");\n```\n### Order Instance Methods\n```Javas\norder.update();\norder.delete();\norder.getNotes()\norder.addNote(Note n);\n```\n\n## Port Ins\n### Create PortIn\n```Java\nLnpOrder order = new LnpOrder();\norder.setSiteId(getFirstSite().getId());\norder.setPeerId(getFirstSipPeer().getPeerId());\norder.setBillingTelephoneNumber(\"9195551212\");\nSubscriber s = new Subscriber();\ns.setSubscriberType(\"BUSINESS\");\ns.setBusinessName(\"Company\");\nServiceAddress serviceAddress = new ServiceAddress();\nserviceAddress.setHouseNumber(\"123\");\nserviceAddress.setStreetName(\"Anywhere St\");\nserviceAddress.setCity(\"Raleigh\");\nserviceAddress.setStateCode(\"NC\");\nserviceAddress.setZip(\"27609\");\ns.setServiceAddress(serviceAddress);\norder.setSubscriber(s);\norder.setLoaAuthorizingPerson(\"Joe Blow\");\norder.getListOfPhoneNumbers().add(\"9195551212\");\n\norder = LnpOrder.create(client, order);\n\n```\n## Get PortIn\n```Javascript\nLnpOrder order = LnpOrder.get(client, \"orderId\");\n```\n\n### PortIn Instance methods\n```Java\norder.update(client, LnpOrderSupp supp);\norder.delete();\n```\n### PortIn File Management\n```Java\norder.uploadLoa(File file, LoaFileType type);\norder.updateLoa(File file, LoaFileType type);\norder.deleteLoa(String fileName);\norder.getLoaMetaData(String fileName);\norder.updateLoaMetaData(String fileName, FileMetaData metaData);\norder.deleteLoaMetaData(String fileName);\n\n```\n\n## Rate Centers\n### List Ratecenters\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"state\", \"NC\");\nquery.put(\"available\", true);\n\nList\u003cRateCenter\u003e rateCenters = RateCenter.list(client,query);\nfor(RateCenter rc : rateCenters){\n    System.out.println(String.format(\"Name: %s | Abbreviation: %s\", rc.getName(), rc.getAbbreviation()));\n}\n\n```\n\n## SIP Peers\n### Create SIP Peer\n```Java\nHost host = new Host();\nhost.setHostName(\"new host\");\n\nTerminationHost termHost = new TerminationHost();\ntermHost.setHostName(\"term host\");\ntermHost.setPort(\"5060\");\n\nSipPeer peer = new SipPeer();\npeer.setPeerName(\"A new Sip Peer\");\npeer.setDefaultPeer(false);\npeer.setShortMessagingProtocol(\"SMPP\");\npeer.setSiteId(getFirstSite().getId());\n\npeer.getVoiceHosts().add(host);\npeer.getSmsHosts().add(host);\npeer.getTerminationHosts().add(termHost);\n\npeer = SipPeer.create(client, getFirstSite().getId(), peer);\n\n```\n### Get SIP Peer\n```Java\nSipPeer peer = SipPeer.get(client, \"siteId\", \"peerId\");\n```\n### List SIP Peers\n```Java\nList\u003cSipPeer\u003e peers = SipPeer.list(client, \"siteId\");\n```\n### Delete SIP Peer\n```Java\nSipPeer peer = SipPeer.get(client, \"peerId\");\npeer.delete()\n```\n### SipPeer TN Methods\n```Java\npeer.updateTn(sipPeerTelephoneNumber);\npeer.getTn(\"number\");\npeer.moveTns(sipPeerTelephoneNumbers);\n```\n\n### Enable SMS Settings\n```java\n// Zone1 for US \u0026 Canada enabled by default\nSipPeerSmsFeature settings = new SipPeerSmsFeature();\nsettings.setTollFree(true);\nsettings.setShortCode(true);\npeer.enableSms(settings);\n```\n\n### Enable MMS \n```java\npeer.enableMms();\n```\n\n### Associate a SipPeer with a Messaging Application\n```java\nSipPeerMessagingApplicationsSettings settings = new SipPeerMessagingApplicationsSettings();\nsettings.setApplicationId(\"abcd-1234\");\n\npeer.updateMessagingApplicationSettings(settings);\n```\n\n## Sites\n\n### Create A Site\nA site is what is called Location in the web UI.\n```Java\nSite s = new Site();\ns.setName(\"My New Site\");\n\ns = Site.create(client, s);\n```\n\n### Updating a Site\n```Java\nSite s = Site.get(client, \"siteId\");\ns.setName(\"New Name\");\ns.update();\n```\n### Deleting a Site\n```Java\nSite s = Site.get(client, \"siteId\");\ns.delete();\n```\n### Listing All Sites\n```Java\nList\u003cSite\u003e sites = Site.list(client);\n\n```\n\n## Subscriptions\n### Create Subscription\n```Java\nSubscription subscription = new Subscription();\nsubscription.setOrderType(\"orders\");\nsubscription.setOrderId(\"orderId\");\nEmailSubscription emailSubscription = new EmailSubscription();\nemailSubscription.setEmail(\"test@test.com\");\nemailSubscription.setDigestRequested(\"NONE\");\nsubscription.setEmailSubscription(emailSubscription);\nSubscription createdSubscription = Subscription.create(client, subscription);\n```\n### Get Subscription\n```Java\nSubscription s = Subscription.get(client, \"subscriptionId\");\n```\n### List Subscriptions\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"orderType\", \"orders\");\n\nList\u003cSubscription\u003e subscriptions = Subscription.list(client, query);\n\n```\n### Subscription Instance Methods\n```Java\nsubscription.update();\nsubcription.delete();\n```\n\n## TNs\n### Get TN\n```Java\nTelephoneNumberDetail detail = Tns.getTnDetails(getClient(), \"9195551212\");\n```\n### List TNs\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003cString, Object\u003e();\nquery.put(\"state\", \"NC\");\n\nTelephoneNumbersResponse response = Tns.list(getClient(),query );\n```\n\n## TN Reservation\n### Create TN Reservation\n```Java\nReservation r = new Reservation();\nr.getReservedTn().add(\"9195551212\");\nr = Reservation.create(client, r);\n\n```\n### Get TN Reservation\n```Java\nReservation r = Reservation.get(client, \"9195551212\");\n\n```\n### Delete TN Reservation\n```Java\nReservation r = Reservation.get(client, \"9195551212\");\nr.delete();\n\n```\n\n## ImportTnOrder\n\n### Create ImportTnOrder\n\n```Java\nImportTnOrder order = new ImportTnOrder();\norder.setSiteId(100);\norder.setSipPeer(303);\n\nServiceAddress address = new ServiceAddress();\naddress.setHouseNumber(\"123\");\naddress.setStreetName(\"Main st\");\naddress.setCity(\"Raleigh\");\naddress.setStateCode(\"NC\");\naddress.setZip(\"27606\");\n\nSubscriber sub = new Subscriber();\nsub.setBusinessName(\"test business llc\");\nsub.setName(\"Bandwidth\");\nsub.setFirstName(\"Band\");\nsub.setLastName(\"Width\");\nsub.setServiceAddress(address);\n\nList\u003cString\u003e telephoneNumberList = new ArrayList\u003cString\u003e();\ntelephoneNumberList.add(\"9195551234\");\n\norder.setSiteId(14480);\norder.setSipPeer(522211);\norder.setTelephoneNumberList(telephoneNumberList);\norder.setSubscriber(sub);\norder.setLoaAuthorizingPerson(\"Bandwidth\");\n\nImportTnOrderResponse response = ImportTnOrder.Create(client, order );\n```\n\n### List ImportTnOrders\n\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003c\u003e();\nquery.put(\"CustomerOrderId\", \"id\");\n\nImportTnOrders response = ImportTnOrder.List(client, query);\n```\n\n### Get ImportTnOrder by Id\n\n```Java\nImportTnOrder response = ImportTnOrder.Get(client, orderId );\n```\n\n### Get ImportTnOrder History by Id\n\n```Java\nOrderHistoryWrapper response = ImportTnOrder.GetHistory(client, orderId );\n```\n\n## RemoveImportedTnOrders\n\n### Create RemoveImportedTnOrder\n\n```Java\nList\u003cString\u003e tnList = new ArrayList\u003cString\u003e();\ntelephoneNumberList.add(\"9195551234\");\n\nRemoveImportedTnOrder order = new RemoveImportedTnOrder();\norder.setTelephoneNumberList( tnList );\n\nRemoveImportedTnOrderResponse response = RemoveImportedTnOrder.Create(client, order);\n```\n\n### List RemoveImportedTnOrders\n\n```Java\nMap\u003cString, Object\u003e query = new HashMap\u003c\u003e();\nquery.put(\"status \", \"PARTIAL\");\n\nRemoveImportedTnOrders response = RemoveImportedTnOrder.List(client, query);\n```\n\n### Get RemoveImportedTnOrder by Id\n\n```Java\nRemoveImportedTnOrder response = RemoveImportedTnOrder.Get(client, orderId);\n```\n\n### Get RemoveImportedTnOrder History by Id\n\n```Java\nOrderHistoryWrapper response = RemoveImportedTnOrder.GetHistory(client, orderId);\n```\n\n## ImportTnChecker\n\n### Check Importability of Tns\n\n```Java\nImportTnCheckerPayload payload = new ImportTnCheckerPayload();\npayload.setTelephoneNumberList( tnList );\n\nImportTnCheckerResponse response = ImportTnChecker.Check(client, payload);\n```\n\n## Csr Order\n\n### Create Csr\n\n```Java\nCsr csr = new Csr();\ncsr.setCity(\"Raleigh\");\n\nCsrResponse response = Csr.Create(client, csr);\n```\n\n### Get Csr\n\n```Java\nCsrResponse response = Csr.Get(client, orderId);\n```\n\n### Replace Csr\n\n```Java\nCsr csr = new Csr();\ncsr.setCity(\"Raleigh\");\n\nCsrResponse response = Csr.Replace(client, orderId, csr);\n```\n\n### Get Csr Notes\n\n```Java\nNotes response = Csr.GetNotes(client, orderId);\n```\n\n### Add Note to Csr\n\n```Java\nNote note = new Note();\nnote.setDescription(\"This is a csr note\");\n\nIrisResponse response = Csr.AddNote(client, orderId, note );\n```\n\n### Update Note on Csr\n\n```Java\nNote note = new Note();\nnote.setDescription(\"This is a csr note\");\n\nIrisResponse response = Csr.UpdateNote(client, orderId, noteId, note );\n```\n\n## Emergency Notification\n\n### Create Recipients\n```java\nEmergencyNotificationRecipient recipient = new EmergencyNotificationRecipient();\nrecipient.setEmailAddress(\"test@example.com\");\n\nEmergencyNotificationRecipientsResponse response = EmergencyNotification.createRecipients(client, recipient);\n```\n\n### List Recipients\n```java\nMap\u003cString, String\u003e query = new HashMap\u003cString, Object\u003e();\nquery.add(\"ModifiedByUser\", \"jgilmore\");\n\nEmergencyNotificationRecipientsResponse response = EmergencyNotification.listRecipients(client, query);\n```\n\n### Get Recipients\n```java\nEmergencyNotificationRecipientsResponse response = EmergencyNotification.getRecipients(client, recipientsId);\n```\n\n### Replace Recipients\n```java\nEmergencyNotificationRecipient recipient = new EmergencyNotificationRecipient();\nrecipient.setEmailAddress(\"test@example.com\");\n\nEmergencyNotificationRecipientsResponse response = EmergencyNotification.replaceRecipients(client, recipient, recipientsId);\n```\n\n### Delete Recipient\n```java\nIrisResponse response = EmergencyNotification.deleteRecipients(client, recipientsId);\n```\n\n### Create Group Orders\n```java\nEmergencyNotificationGroupOrder groupOrder = new EmergencyNotificationGroupOrder();\ngroupOrder.setCustomerOrderId(\"customerId\");\n\nEmergencyNotificationGroupOrderResponse response = EmergencyNotification.createGroupOrders(client, groupOrder);\n```\n\n### Modify Group Orders\n```java\nEmergencyNotificationGroupOrderResponse response = EmergencyNotification.createGroupOrders(client, new EmergencyNotificationGroupOrder());\n```\n\n### List Group Orders\n```java\nEmergencyNotificationGroupOrderResponse response = EmergencyNotification.listGroupOrders(client, query);\n```\n\n### Get Group Orders\n```java\nEmergencyNotificationGroupOrderResponse response = EmergencyNotification.getGroupOrders(client, orderId);\n```\n\n### List Groups\n```java\nEmergencyNotificationGroupsResponse response = EmergencyNotification.listGroups(client, query);\n```\n\n### Get Groups\n```java\nEmergencyNotificationGroupsResponse response = EmergencyNotification.getGroups(client, orderId);\n```\n\n### Create Endpoint Order\n```java\nEmergencyNotificationEndpointOrderResponse response = EmergencyNotification.createEndpointOrder(client, new EmergencyNotificationEndpointOrder());\n```\n\n### List Endpoint Orders\n```java\nEmergencyNotificationEndpointOrderResponse response = EmergencyNotification.listEndpointOrders(client, query);\n```\n\n### Get Endpoint Orders\n```java\nEmergencyNotificationEndpointOrderResponse response = EmergencyNotification.getEndpointOrder(client, orderId);\n```\n\n## Aeuis\n\n### Get Aeui\n\n```java\nAlternateEndUserIdentifierResponse response = Aeui.get(client, id);\n```\n\n### List Aeuis\n```java\nAlternateEndUserIdentifiersResponse response = Aeui.list(client, query);\n```\n\n## Tn Options\n\n### Tn Options Create\n\nCreates a TN Option order to assign line features to the telephone number.\n\n#### Create PortOutPasscode\n\n```java\nTnOptionOrder order = new TnOptionOrder();\norder.setTnOptionGroups(new ArrayList\u003c\u003e());\norder.setCustomerOrderId(\"TnOptionOrder1\");\n\nTnOptionGroup optionGroup = new TnOptionGroup();\noptionGroup.setPortOutPasscode(\"12abd38\");// PortOutPasscode set here\noptionGroup.setTelephoneNumbers(new ArrayList\u003c\u003e());\noptionGroup.getTelephoneNumbers().add(\"2018551020\");\n\norder.getTnOptionGroups().add(optionGroup);\n\nTnOptionOrderResponse response = TnOptions.create(client, order);\n```\n\n#### Create Call Forward Number\n\n```java\nTnOptionOrder order = new TnOptionOrder();\norder.setTnOptionGroups(new ArrayList\u003c\u003e());\norder.setCustomerOrderId(\"TnOptionOrder1\");\n\nTnOptionGroup optionGroup = new TnOptionGroup();\noptionGroup.setCallForward(\"2018551022\");// Call Forward set here\noptionGroup.setTelephoneNumbers(new ArrayList\u003c\u003e());\noptionGroup.getTelephoneNumbers().add(\"2018551020\");\n\norder.getTnOptionGroups().add(optionGroup);\n\nTnOptionOrderResponse response = TnOptions.create(client, order);\n```\n\n#### Enable SMS\n\n```java\nTnOptionOrder order = new TnOptionOrder();\norder.setTnOptionGroups(new ArrayList\u003c\u003e());\norder.setCustomerOrderId(\"TnOptionOrder1\");\n\nTnOptionGroup optionGroup = new TnOptionGroup();\noptionGroup.setSms(\"on\");// SMS set true here\noptionGroup.setTelephoneNumbers(new ArrayList\u003c\u003e());\noptionGroup.getTelephoneNumbers().add(\"2018551020\");\n\norder.getTnOptionGroups().add(optionGroup);\n\nTnOptionOrderResponse response = TnOptions.create(client, order);\n```\n\n### Get Tn Option (No Error)\n\n```java\nTnOptionOrder response = TnOptions.get(client, orderId);\n```\n\n### Get Tn Option (With Error)\n\n```java\nTnOptionOrder response = TnOptions.get(client, orderId);\n\nSystem.out.println(response.getErrors().size());// 1\nSystem.out.println(response.getErrors().get(0).getCode()); // 5076\nSystem.out.println(response.getErrors().get(0).getDescription()); // Telephone number is not available.\nSystem.out.println(response.getErrors().get(0).getTelephoneNumber());// 2018551025\n```\n\n### List Tn Options\n\n```java\nHashMap\u003cString, Object\u003e query = new HashMap\u003c\u003e();\nquery.put(\"tn\", \"9199918388\");\n\nTnOptionOrders response = TnOptions.list(client, query);\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbandwidth%2Fjava-bandwidth-iris","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbandwidth%2Fjava-bandwidth-iris","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbandwidth%2Fjava-bandwidth-iris/lists"}