cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

The Sinch Java SDK was designed for developers. The SDK components are built with the specific language first and foremost in mind. After that, our focus was to keep the design simple for users that only want to leverage specific API calls they use but ensure customizability and future-proof access to other parts of our infrastructure. 

 

The Java SDK has added common capabilities to further streamline the interaction with our platform: 

  • We have provided a simple HTTP component for ease of use.
  • We have provided automated token management/refresh code, so developers can use the system without micromanaging their authorization/authentication.
  • We have provided webhook helpers to serialize/deserialize in communication with our servers and validate webhook authentication.

Another goal of ours while designing this new Java SDK was to mimic our REST APIs as much as possible, while still providing a Java developer experience.  We also use IDE type hints which, along with the REST API specification, allows the user to perform most API interactions without the need to use reference documentation.  With all these common items, we hope to build out consistent frameworks with functionality all users will commonly leverage.


Discoverability is one of the key components of great DX, hence Java SDK namespaces are small and specific yet descriptive. For example:
var response = SinchClient
               .numbers()

               .available()
               .list(AvailableNumberListAllRequestParameters.builder()
                         .setType(NumberType.MOBILE)
                         .setRegionCode("US")
                         .build());

The main client class organizes the Sinch product portfolio (called domains within SDK) and its features into hierarchy that produces an API that is easy to read and discover.

 

Java Blog.jpg

Currently, we support Java 8 and later LTS versions. Language versions will be supported until EOL.

Two 3rd party libraries are used by the Java SDK, the HTTP Apache client and Jackson.. Serialization/deserialization are managed by the SDK for webhooks integration.

For now, SMS, Numbers, Verification and Voice APIs are supported, with other public Sinch APIs to be added soon. We also provide online Javadocs for additional information.

For further details and to download our SDK, please refer to:
GitHub: https://github.com/sinch/sinch-sdk-java
Maven: https://central.sonatype.com/artifact/com.sinch.sdk/sinch-sdk-java

Featured Article
Version history
Last update:
‎03-28-2024 04:17 AM
Updated by: