{"id":29842998,"url":"https://github.com/pelioniot/mbed-cloud-sdk-java","last_synced_at":"2026-01-11T17:38:53.766Z","repository":{"id":55013401,"uuid":"95459293","full_name":"PelionIoT/mbed-cloud-sdk-java","owner":"PelionIoT","description":"Pelion Device Management SDK for Java","archived":false,"fork":false,"pushed_at":"2021-10-16T04:10:05.000Z","size":19619,"stargazers_count":6,"open_issues_count":7,"forks_count":6,"subscribers_count":61,"default_branch":"master","last_synced_at":"2023-07-26T21:16:33.920Z","etag":null,"topics":["arm","cloud","device-management","iot","iot-cloud","java-library","java-sdk","lwm2m","mbed","mbed-cloud-apis","mbed-cloud-sdk","sdk-java"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PelionIoT.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-06-26T15:06:56.000Z","updated_at":"2023-07-26T21:16:33.921Z","dependencies_parsed_at":"2022-08-14T09:01:16.906Z","dependency_job_id":null,"html_url":"https://github.com/PelionIoT/mbed-cloud-sdk-java","commit_stats":null,"previous_names":["armmbed/mbed-cloud-sdk-java"],"tags_count":18,"template":null,"template_full_name":null,"purl":"pkg:github/PelionIoT/mbed-cloud-sdk-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PelionIoT%2Fmbed-cloud-sdk-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PelionIoT%2Fmbed-cloud-sdk-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PelionIoT%2Fmbed-cloud-sdk-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PelionIoT%2Fmbed-cloud-sdk-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PelionIoT","download_url":"https://codeload.github.com/PelionIoT/mbed-cloud-sdk-java/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PelionIoT%2Fmbed-cloud-sdk-java/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267710136,"owners_count":24131935,"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-07-29T02:00:12.549Z","response_time":2574,"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":["arm","cloud","device-management","iot","iot-cloud","java-library","java-sdk","lwm2m","mbed","mbed-cloud-apis","mbed-cloud-sdk","sdk-java"],"created_at":"2025-07-29T15:41:32.425Z","updated_at":"2025-10-24T17:39:39.377Z","avatar_url":"https://github.com/PelionIoT.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pelion Cloud SDK for Java\n[![No Maintenance Intended](http://unmaintained.tech/badge.svg)](http://unmaintained.tech/)\n\n----\n\u003e Due to a redirected focus onto future development of the Pelion Device Management APIs, this SDK Is no longer actively supported and there is no commitment for future maintenance releases.\n\u003e\n\u003e The open source project and corresponding packages for this SDK remain publicly available. \n\u003e\n\u003eExisting applications developed using the SDK will continue to operate against existing Pelion Device Management REST APIs (assuming that those APIs are not subject to the deprecation process for commercial customers). New APIs supported by Pelion Device Management will only be available through the REST APIs. \n\u003e\n\u003eIt is recommended that for ongoing development, applications which previously used the SDK should be migrated over time to access the Pelion Device Management REST APIs directly. \n\u003e\n\u003ePlease see this [page](https://www.pelion.com/docs/device-management/current/mbed-cloud-sdk-references/moving-from-the-pelion-device-management-sdks-to-the-apis.html), which provides additional information on using the REST APIs. By following this guide, you will learn how to build a web application using the REST APIs directly.\n\n----\n\nThe Pelion Device Management SDK (formerly known as Mbed Cloud SDK) provides a simplified interface to the [Pelion Device Management APIs](https://www.mbed.com/en/platform/cloud/) by exposing functionality using conventions and paradigms familiar to Java developers.\n\n## Prerequisites\n* Java \u003e 1.7   _tested with [Oracle JRE](http://www.oracle.com/technetwork/java/javase/downloads/index.html)_\n\n## Logging\n* The SDK uses **[SLF4j](https://www.slf4j.org/)** and hence, any supported logging framework  (e.g. java.util.logging, logback, log4j) can be used by your application.\n\n## Distribution\nIn order to best meet your requirements, Java SDK is packaged in three different ways:\n* Individual Jars\n* Distribution ZIP. See related [gradle plugin](https://docs.gradle.org/current/userguide/javaLibraryDistribution_plugin.html) for more details.\n* A [fat jar](https://github.com/johnrengelman/shadow) comprising the SDK and all its dependencies.\n\n## Getting started\n[ ![Download](https://api.bintray.com/packages/armmbed/mbed-cloud-sdk/mbed-cloud-sdk/images/download.svg) ](https://bintray.com/armmbed/mbed-cloud-sdk/mbed-cloud-sdk/_latestVersion)\n\nArtefacts listed above are published on [JCenter](https://bintray.com/armmbed/mbed-cloud-sdk) and [Maven Central](https://mvnrepository.com/artifact/com.arm.mbed.cloud.sdk/mbed-cloud-sdk).\nThey can therefore be retrieved and included into your project using the package manager of your choice. To do so, please follow the instructions present on one of these artefact repositories ([Bintray page of the project](https://bintray.com/armmbed/mbed-cloud-sdk/mbed-cloud-sdk/)).\n\nFor example, if using Gradle, add the following compile dependency to build.gradle:\n```java\nimplementation 'com.arm.mbed.cloud.sdk:mbed-cloud-sdk:x.y.z'\n```\nCurrent artefacts are not fully tailored for Android but can be used as is on this mobile platform. However, the ``oltu`` dependency will have to be excluded to remove any compilation issue (e.g. ``Error converting bytecode to dex:\\nCause: com.android.dex.DexException: Multiple dex files define Lorg/apache/oltu/oauth2/common/domain/credentials/Credentials``.\nTo do so, import the SDK in the gradle file, as follows:\n```java\nimplementation( 'com.arm.mbed.cloud.sdk:mbed-cloud-sdk:x.y.z' ){\n    // Excluding a particular transitive dependency:\n    exclude group: 'org.apache.oltu.oauth2'\n}\n```\n## Usage\nThese instructions can also be found in the [official documentation](https://cloud.mbed.com/docs/latest/mbed-cloud-sdk-java/):\n1. Create an API key on [Pelion Device Management Portal](https://portal.mbedcloud.com/).\n2. Import the SDK to your project using one of the packages listed above.\n3. Create a configuration object:\n    ```java\n        String apiKey = \"\u003capikey\u003e\"; //API key to use for contacting Pelion Cloud.\n        ConnectionOptions config =  ConnectionOptions.newConfiguration(apiKey);\n        config.setClientLogLevel(CallLogLevel.BODY);//Defines the logging level of HTTP communications. See CallLogLevel for more information.\n    ```\n4. You are ready to go.\n    ```java\n        try (Sdk sdk = Sdk.createSdk(config); DeviceListDao dao = sdk.foundation().getDeviceListDao()) {\n            dao.list().forEach(System.out::println);\n        } catch (MbedCloudException | IOException e) {\n            e.printStackTrace();\n        }\n    ```\n## Versioning\nThe SDK version scheme follows [Semantic versioning](https://semver.org/)\n\n`\u003cSDK major\u003e.\u003cSDK minor\u003e.\u003cSDK bugFix\u003e`\n\n## Documentation and examples\nThe SDK guide and examples are available on [GitHub](https://armmbed.github.io/mbed-cloud-sdk-documentation/#introduction)\n\nThe documentation contains many examples covering various Use Cases that you may have. In each case you can compare the Java implementation with alternatives in languages\nsupported by the other Pelion Device Management SDKs.\n\nSee API reference (i.e. javadoc) at https://cloud.mbed.com/docs/latest/mbed-cloud-sdk-java/. or locally hosted at [GitHub](https://armmbed.github.io/mbed-cloud-sdk-java/javadoc)\n\nFor specific Java usage examples, please have a look at the [example project](examples/README.md).\n\n## Contributing\nThe Pelion Device Management SDK for Java is open source and we would like your help. There is a brief guide on how to get started in [CONTRIBUTING.md](CONTRIBUTING.md).\n\n## Project\n* All code inside _\\*.internal.\\*_ packages or annotated as **@Internal** is considered private API and should not be relied upon at all.\n* Classes annotated as **@Module** contain all Arm Pelion Device Management REST APIs\n* Methods annotated as **@API** are low-level functions which can be used to interact with Pelion Cloud. However, it is advised to use DAOs instead.\n* APIs, objects or methods annotated as **@Deprecated** are supported until the next major release and will be removed later on. It is highly recommended to stop using them.\n* Methods with **@Daemon** annotation should be used to monitor SDK daemon threads.\n\n## Licence\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\nPelion Device Management SDK for Java is free-to-use and licensed under the **Apache License\n2.0**. See [LICENCE](LICENCE) file for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpelioniot%2Fmbed-cloud-sdk-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpelioniot%2Fmbed-cloud-sdk-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpelioniot%2Fmbed-cloud-sdk-java/lists"}