{"id":20021298,"url":"https://github.com/coboglobal/cobo-java-api","last_synced_at":"2025-05-05T01:30:55.272Z","repository":{"id":38396367,"uuid":"379181282","full_name":"CoboGlobal/cobo-java-api","owner":"CoboGlobal","description":"Cobo Custody Java sdk","archived":false,"fork":false,"pushed_at":"2024-10-30T10:15:44.000Z","size":756,"stargazers_count":9,"open_issues_count":1,"forks_count":14,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-05T10:03:02.731Z","etag":null,"topics":["bitcoin","blockchain","cryptocurrency","custody"],"latest_commit_sha":null,"homepage":"https://cobo.com/custody","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CoboGlobal.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-06-22T07:32:07.000Z","updated_at":"2024-10-30T10:15:21.000Z","dependencies_parsed_at":"2024-01-15T07:28:18.142Z","dependency_job_id":"b76874bd-5981-4599-9649-ce2ffae3ea66","html_url":"https://github.com/CoboGlobal/cobo-java-api","commit_stats":null,"previous_names":["coboglobal/cobo-java-api"],"tags_count":72,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoboGlobal%2Fcobo-java-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoboGlobal%2Fcobo-java-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoboGlobal%2Fcobo-java-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CoboGlobal%2Fcobo-java-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CoboGlobal","download_url":"https://codeload.github.com/CoboGlobal/cobo-java-api/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252422991,"owners_count":21745526,"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":["bitcoin","blockchain","cryptocurrency","custody"],"created_at":"2024-11-13T08:36:09.929Z","updated_at":"2025-05-05T01:30:55.265Z","avatar_url":"https://github.com/CoboGlobal.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The Official Java SDK for Cobo WaaS API\n\n![JitPack](https://jitpack.io/v/CoboGlobal/cobo-java-api.svg)\n[![License: GPL v2](https://img.shields.io/badge/License-GPL_v2-blue.svg)](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html)\n[![GitHub Release](https://img.shields.io/github/release/CoboGlobal/cobo-java-api.svg?style=flat)]()\n\n## About\nThis repository contains the official Java SDK for Cobo WaaS API, enabling developers to integrate with Cobo's Custodial and/or MPC services seamlessly using the Java programming language.\n\n## Documentation\nTo access the API documentation, navigate to the [API references](https://www.cobo.com/developers/api-references/overview/).\n\nFor more information on Cobo's Java SDK, refer to the [Java SDK Guide](https://www.cobo.com/developers/sdks-and-tools/sdks/waas/java).\n\n## Usage\n\n### Before You Begin\nEnsure that you have created an account and configured Cobo's Custodial and/or MPC services. \nFor detailed instructions, please refer to the [Quickstart](https://www.cobo.com/developers/get-started/overview/quickstart) guide.\n\n### Requirements\n- JDK8 \n- JDK17 or newer\n\n### Installation\nStep 1. Add the JitPack repository to your build file\n\ngradle:\n\n```\nallprojects {\n    repositories {\n        ...\n        maven { url 'https://jitpack.io' }\n    }\n}\n```\n\nmaven:\n\n```\n\u003crepositories\u003e\n    \u003crepository\u003e\n        \u003cid\u003ejitpack.io\u003c/id\u003e\n        \u003curl\u003ehttps://jitpack.io\u003c/url\u003e\n    \u003c/repository\u003e\n\u003c/repositories\u003e\n```\n\nStep 2. Add the dependency\n\ngradle:\n\n```\ndependencies {\n    implementation 'com.github.CoboGlobal:cobo-java-api:v0.96'\n}\n```\n\nmaven:\n\n```\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.github.CoboGlobal\u003c/groupId\u003e\n    \u003cartifactId\u003ecobo-java-api\u003c/artifactId\u003e\n    \u003cversion\u003ev0.96\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Code Sample\n#### Generate Key Pair\n```java\nimport com.cobo.custody.api.client.impl.LocalSigner;\n\nString[] key = LocalSigner.generateKeyPair();\nString secretKey = key[0];\nString apiKey = key[1];\n```\nFor more information on the API key, please [click here](https://www.cobo.com/developers/api-references/overview/authentication).\n\n#### Initialize ApiSigner\n`ApiSigner` can be instantiated through `new LocalSigner(\"secretkey\" )`\n\n\nIn certain scenarios, the private key may be restricted from export, such as when it is stored in AWS Key Management Service (KMS). \nIn such cases, please pass in a custom implementation using the ApiSigner interface:\n```java\n\nimport com.cobo.custody.api.client.ApiSigner;\nnew ApiSigner() {\n    @Override\n    public String sign(byte[] message) {\n        return null;\n    }\n\n    @Override\n    public String getPublicKey() {\n        return null;\n    }\n}\n```\n\n#### Initialize RestClient\nThese can be instantiated using the corresponding factory method provided by `CoboApiClientFactory`.\n\n```java\nimport com.cobo.custody.api.client.CoboApiClientFactory;\nimport com.cobo.custody.api.client.CoboApiRestClient;\nimport com.cobo.custody.api.client.config.CoboApiConfig;\nimport com.cobo.custody.api.client.config.Env;\nimport com.cobo.custody.api.client.impl.LocalSigner;\n\nCoboApiRestClient client = CoboApiClientFactory.newInstance(\n                new LocalSigner(apiSecret),\n                Env.DEV,\n                false).newRestClient();\n```\n\n#### Complete Code Sample\n```java\nimport com.cobo.custody.api.client.CoboApiClientFactory;\nimport com.cobo.custody.api.client.CoboApiRestClient;\nimport com.cobo.custody.api.client.config.CoboApiConfig;\nimport com.cobo.custody.api.client.config.Env;\nimport com.cobo.custody.api.client.impl.LocalSigner;\n\nString[] key = LocalSigner.generateKeyPair();\nString secretKey = key[0];\nString apiKey = key[1];\n\nCoboApiRestClient client = CoboApiClientFactory.newInstance(\n                new LocalSigner(secretKey),\n                Env.DEV,\n                false).newRestClient();\n                \nApiResponse\u003cOrgInfo\u003e orgInfo = client.getOrgInfo()\nSystem.out.println(orgInfo);\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoboglobal%2Fcobo-java-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcoboglobal%2Fcobo-java-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcoboglobal%2Fcobo-java-api/lists"}