{"id":16085701,"url":"https://github.com/iamraphson/jusibe-java-lib","last_synced_at":"2026-02-10T20:09:42.090Z","repository":{"id":57729334,"uuid":"66738656","full_name":"iamraphson/jusibe-java-lib","owner":"iamraphson","description":" JAVA Client Library for Jusibe SMS REST API Service ","archived":false,"fork":false,"pushed_at":"2016-09-14T22:05:22.000Z","size":24,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-11T17:46:04.747Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://jusibe.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/iamraphson.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-08-27T22:40:55.000Z","updated_at":"2020-06-15T12:52:34.000Z","dependencies_parsed_at":"2022-09-10T21:51:22.668Z","dependency_job_id":null,"html_url":"https://github.com/iamraphson/jusibe-java-lib","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/iamraphson/jusibe-java-lib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamraphson%2Fjusibe-java-lib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamraphson%2Fjusibe-java-lib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamraphson%2Fjusibe-java-lib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamraphson%2Fjusibe-java-lib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iamraphson","download_url":"https://codeload.github.com/iamraphson/jusibe-java-lib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iamraphson%2Fjusibe-java-lib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271747023,"owners_count":24813604,"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","status":"online","status_checked_at":"2025-08-23T02:00:09.327Z","response_time":69,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-10-09T13:09:03.409Z","updated_at":"2026-02-10T20:09:37.043Z","avatar_url":"https://github.com/iamraphson.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"### Jusibe-java-lib\n\n \u003e Jusibe Library for JAVA☕️. This is based on the Official API Documentation provided by [Jusibe](https://jusibe.com/docs/) a Nigerian SMS Service.\n\n\n### Registration\n\nFirst, you will need to first create an account at [Jusibe.com](https://jusibe.com/signup/) and obtain your Public key and Access Token.\n\nOnce you have created an account, you can access your Public key and Access Token from the [API Keys](https://jusibe.com/cp/?section=api-keys).\n\n# Installation\n\n## Prerequisites\n\n- Java version Oracle JDK 7, 8 or OpenJDK 7\n\n### Maven\nInclude the following in your `pom.xml` for Maven:\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.unicodelabs\u003c/groupId\u003e\n    \u003cartifactId\u003ejusibe-java-lib\u003c/artifactId\u003e\n    \u003cversion\u003e1.0.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n###Jar-File\nYou can also download the jar file from the latest release on the [releases page](https://github.com/iamraphson/jusibe-java-lib/releases).\n\n##Usage\nA Jusibe class provides three public methods for accessing the API. Instantianting the class is as given below:\n\n\n```java\nfinal Jusibe client = new Jusibe();\n```\n\nIts constructor takes two string parameters:\n\n```java\npublic final String PUBLIC_KEY = \"[Enter Public Key Here]\";\npublic final String ACCESS_TOKEN = \"[Enter Access Token]\";\n\nfinal Jusibe client = new Jusibe(publicKey, accessToken);\n```\n\n### Jusibe Class Methods\nIts methods are:\n\n#### Send SMS\nThis lets you make a request to the Jusibe API, to send an SMS. It takes a `java.util.Map\u003cString, String\u003e` object as a parameter and returns a `com.iamraphson.jusibe.core.utils.JusibeResponse` object.\n\n##### Usage\n```java\ntry {\n    final Jusibe client = new Jusibe(\"{PUBLIC_KEY}\", \"{ACCESS_TOKEN}\");\n    final Map\u003cString, String\u003e smsParams = new HashMap\u003cString, String\u003e();\n\n    smsParams.put(\"to\", \"XXXXXXXXXX\"); // Replace with a valid phone number\n    smsParams.put(\"from\", \"Jusibe Joe\"); // Replace with a valid Sender\n    smsParams.put(\"message\", \"Welcome to Jusibe JAVA lib\");\n\n    JusibeResponse smsResponse = client.sendSMS(smsParams);\n    System.out.println(smsResponse.toString());\n\n    JSONObject smsResultObject = (JSONObject)new JSONParser().parse(smsResponse.getResponseMessage());\n    if(smsResponse.getResponseCode() == 200){\n        System.out.println(\"your SMS Message ID is \" + smsResultObject.get(\"message_id\"));\n        System.out.println(\"your SMS Status is \" + smsResultObject.get(\"status\"));\n        System.out.println(\"SMS credit used is \" + smsResultObject.get(\"sms_credits_used\"));\n        System.out.println(\"your request speed is \" + smsResultObject.get(\"request_speed\"));\n    } else {\n        System.out.println(smsResultObject.get(\"error\"));\n    }\n} catch (IsNullException ex) {\n    System.out.println(ex.getMessage());\n} catch (IOException ex) {\n    System.out.println(ex.getMessage());\n} catch (ParseException ex) {\n    System.out.println(ex.getMessage());\n}\n```\n#### Check SMS Delivery Status\nThis gives you information on the delivery status of previous sent messages. It takes a single paramter: `string messageID` and returns a `com.iamraphson.jusibe.core.utils.JusibeResponse` object\n\n##### Usage\n```java\ntry {\n    final Jusibe client = new Jusibe(\"{PUBLIC_KEY}\", \"{ACCESS_TOKEN}\");\n    JusibeResponse deliveryResponse = client.checkDeliveryStatus(\"w719zxz58q\");\n    System.out.println(deliveryResponse.toString());\n    JSONObject deliveryResultObject = (JSONObject)new JSONParser().parse(deliveryResponse.getResponseMessage());\n    if(deliveryResponse.getResponseCode() == 200){\n        System.out.println(\"your SMS Status is \" + deliveryResultObject.get(\"status\"));\n        System.out.println(\"your SMS Message ID is \" + deliveryResultObject.get(\"message_id\"));\n        System.out.println(\"your SMS Sent Date is \" + deliveryResultObject.get(\"date_sent\"));\n        System.out.println(\"your SMS Delivered Date is \" + deliveryResultObject.get(\"date_delivered\"));\n        System.out.println(\"your request speed is \" + deliveryResultObject.get(\"request_speed\"));\n    } else {\n        System.out.println(deliveryResultObject.get(\"error\"));\n    }\n} catch (IsNullException ex) {\n    System.out.println(ex.getMessage());\n} catch (IOException ex) {\n    System.out.println(ex.getMessage());\n} catch (ParseException ex) {\n    System.out.println(ex.getMessage());\n}\n```\n\n#### Get Credits\nThis makes an authentication request to the Jusibe API, and returns a `com.iamraphson.jusibe.core.utils.JusibeResponse` as Response.\n\n##### Usage\n```java\ntry{\n    final Jusibe client = new Jusibe(\"{PUBLIC_KEY}\", \"{ACCESS_TOKEN}\");\n    JusibeResponse balResponse = client.checkAvailableCredits();\n    System.out.println(balResponse.toString());\n    JSONObject balResultObject = (JSONObject)new JSONParser().parse(balResponse.getResponseMessage());\n    if(balResponse.getResponseCode() == 200){\n        System.out.println(\"your SMS balance is \" + balResultObject.get(\"sms_credits\"));\n        System.out.println(\"your request speed is \" + balResultObject.get(\"request_speed\"));\n    } else {\n        System.out.println(balResultObject.get(\"error\"));\n    }\n} catch (IsNullException ex) {\n    System.out.println(ex.getMessage());\n} catch (IOException ex) {\n    System.out.println(ex.getMessage());\n} catch (ParseException ex) {\n    System.out.println(ex.getMessage());\n}\n```\n\n### Jusibe Models\nYou may have seen references to Classes such as `com.iamraphson.jusibe.core.utils.JusibeResponse` in above sections of this documents.\n- `JusibeResponse` class\n      - `string responseCode`\n      - `string responseMessage`\n      - `string getResponseCode()`\n      - `setResponseCode(int responseCode)`\n      - `string getResponseMessage()`\n      - `setResponseMessage(String responseMessage)`\n\n# Example\nHere is an example\n\n```java\npackage com.iamraphson.jusibe.core.example;\n\nimport com.iamraphson.jusibe.core.Jusibe;\nimport com.iamraphson.jusibe.core.exceptions.IsNullException;\nimport com.iamraphson.jusibe.core.utils.JusibeResponse;\nimport java.io.IOException;\nimport java.util.HashMap;\nimport java.util.Map;\nimport java.util.logging.Level;\nimport java.util.logging.Logger;\nimport org.json.simple.JSONObject;\nimport org.json.simple.parser.JSONParser;\nimport org.json.simple.parser.ParseException;\n\n/**\n * @author Raphson\n */\npublic class App {\n    public static final String PUBLIC_KEY = \"XXXXXXXXXXXXXXXXXXXXXXXXXX\";\n    public static final String ACCESS_TOKEN = \"XXXXXXXXXXXXXXXXXXXXXXXXXXX\";\n\n    public static void main( String[] args ){\n        try {\n            final Jusibe client = new Jusibe(PUBLIC_KEY, ACCESS_TOKEN);\n            final Map\u003cString, String\u003e smsParams = new HashMap\u003cString, String\u003e();\n\n            smsParams.put(\"to\", \"xxxxxxxxxxxx\"); // Replace with a valid phone number\n            smsParams.put(\"from\", \"iamraphson\"); // Replace with a valid phone number in your account\n            smsParams.put(\"message\", \"Welcome to Jusibe JAVA lib\");\n\n            JusibeResponse smsResponse = client.sendSMS(smsParams);\n            System.out.println(smsResponse.toString());\n\n            JSONObject smsResultObject =\n                    (JSONObject)new JSONParser().parse(smsResponse.getResponseMessage());\n            if(smsResponse.getResponseCode() == 200){\n                System.out.println(\"your SMS Message ID is \" + smsResultObject.get(\"message_id\"));\n                System.out.println(\"your SMS Status is \" + smsResultObject.get(\"status\"));\n                System.out.println(\"SMS credit used is \" + smsResultObject.get(\"sms_credits_used\"));\n                System.out.println(\"your request speed is \" + smsResultObject.get(\"request_speed\"));\n            } else {\n                System.out.println(smsResultObject.get(\"error\"));\n            }\n\n\n            JusibeResponse balResponse = client.checkAvailableCredits();\n            System.out.println(balResponse.toString());\n            JSONObject balResultObject =\n                        (JSONObject)new JSONParser().parse(balResponse.getResponseMessage());\n            if(balResponse.getResponseCode() == 200){\n                System.out.println(\"your SMS balance is \" + balResultObject.get(\"sms_credits\"));\n                System.out.println(\"your request speed is \" + balResultObject.get(\"request_speed\"));\n            } else {\n                System.out.println(balResultObject.get(\"error\"));\n            }\n\n\n            JusibeResponse deliveryResponse =\n                    client.checkDeliveryStatus(\"w719zxz58q\");\n            System.out.println(deliveryResponse.toString());\n            JSONObject deliveryResultObject =\n                        (JSONObject)new JSONParser().parse(deliveryResponse.getResponseMessage());\n            if(deliveryResponse.getResponseCode() == 200){\n                System.out.println(\"your SMS Status is \" + deliveryResultObject.get(\"status\"));\n                System.out.println(\"your SMS Message ID is \" + deliveryResultObject.get(\"message_id\"));\n                System.out.println(\"your SMS Sent Date is \" + deliveryResultObject.get(\"date_sent\"));\n                System.out.println(\"your SMS Delivered Date is \"\n                        + deliveryResultObject.get(\"date_delivered\"));\n                System.out.println(\"your request speed is \" + deliveryResultObject.get(\"request_speed\"));\n            } else {\n                System.out.println(deliveryResultObject.get(\"error\"));\n            }\n\n\n        } catch (IsNullException ex) {\n            Logger.getLogger(App.class.getName()).log(Level.SEVERE, null, ex);\n        } catch (IOException ex) {\n            Logger.getLogger(App.class.getName()).log(Level.SEVERE, null, ex);\n        } catch (ParseException ex) {\n            Logger.getLogger(App.class.getName()).log(Level.SEVERE, null, ex);\n        }\n    }\n\n}\n```\n## Contributing\n\nPlease feel free to fork this package and contribute by submitting a pull request to enhance the functionalities.\n\n\n## Security Vulnerabilities\n\nIf you discover a security vulnerability within Jusibe java library , please send an e-mail to Ayeni Olusegun at nsegun5@gmail.com. All security vulnerabilities will be promptly addressed.\n\n## How can I thank you?\n\nWhy not star the github repo? I'd love the attention! Why not share the link for this repository on Twitter or HackerNews? Spread the word!\n\nDon't forget to [follow me on twitter](https://twitter.com/iamraphson)!\n\nThanks!\nAyeni Olusegun.\n\n## License\n\nThe MIT License (MIT). Please see [License File](LICENSE.md) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiamraphson%2Fjusibe-java-lib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiamraphson%2Fjusibe-java-lib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiamraphson%2Fjusibe-java-lib/lists"}