{"id":20726867,"url":"https://github.com/hmcts/idam-java-client","last_synced_at":"2025-04-23T18:47:47.085Z","repository":{"id":37981510,"uuid":"149257243","full_name":"hmcts/idam-java-client","owner":"hmcts","description":"Feign client for consuming idam's public API","archived":false,"fork":false,"pushed_at":"2025-04-14T21:22:11.000Z","size":804,"stargazers_count":2,"open_issues_count":8,"forks_count":3,"subscribers_count":161,"default_branch":"master","last_synced_at":"2025-04-14T22:29:29.299Z","etag":null,"topics":["jenkins-cft","jenkins-cft-d-i"],"latest_commit_sha":null,"homepage":null,"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/hmcts.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.md","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":"2018-09-18T08:50:40.000Z","updated_at":"2025-04-07T09:49:05.000Z","dependencies_parsed_at":"2023-10-23T09:36:07.513Z","dependency_job_id":"b3cb0a05-3451-4ee6-ac5e-c09527c4823e","html_url":"https://github.com/hmcts/idam-java-client","commit_stats":null,"previous_names":[],"tags_count":39,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmcts%2Fidam-java-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmcts%2Fidam-java-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmcts%2Fidam-java-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hmcts%2Fidam-java-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hmcts","download_url":"https://codeload.github.com/hmcts/idam-java-client/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250495703,"owners_count":21440223,"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":["jenkins-cft","jenkins-cft-d-i"],"created_at":"2024-11-17T04:27:57.047Z","updated_at":"2025-04-23T18:47:47.040Z","avatar_url":"https://github.com/hmcts.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Idam java client\n\n[![Build Status](https://travis-ci.com/hmcts/idam-java-client.svg?branch=master)](https://travis-ci.com/hmcts/idam-java-client)\n[ ![Download](https://api.bintray.com/packages/hmcts/hmcts-maven/idam-client/images/download.svg) ](https://bintray.com/hmcts/hmcts-maven/idam-client/_latestVersion)\n\nThis is a client library for interacting with the idam application.\n\n## Getting started\n\n### Prerequisites\n\n- [JDK 8](https://www.oracle.com/java)\n\n## Usage\n\nAdd the library as a dependency of your project and configure the spring application to scan for Feign clients in the `uk.gov.hmcts.reform.idam` package:\n\n```java\n@EnableFeignClients(basePackages = {\"uk.gov.hmcts.reform.idam\"})\npublic class YourSpringApplication { }\n```\n\nYou will also need to set the spring configuration property of `idam.api.url` \n\nOptionally if you are authenticating a user you can use provide client configuration:\n```yaml\nidam:\n  api:\n    url: http://localhost:8080\n  client:\n    id: client_id\n    secret: 123456\n    redirect_uri: https://localhost:3000/receiver \n```\n\nA client (IdamClient) is provided for interacting with the IdamApi feign client to simplify the log in flow:\n```java\n@Service\nclass UserService {\n    private final IdamClient idamClient;\n    \n    UserService(IdamClient idamClient) {\n        this.idamClient = idamClient;\n    }\n    \n    public UserDetails authenticateUser(String username, String password) {\n        return idamClient.authenticateUser(username, password);\n    }\n    \n}\n\n```\n\nComponents provided by this library will get automatically configured in a Spring context if `idam.api.url` configuration property is defined and does not equal `false`. \n\n## Building\n\nThe project uses [Gradle](https://gradle.org) as a build tool but you don't have install it locally since there is a\n`./gradlew` wrapper script.  \n\nTo build project please execute the following command:\n\n```bash\n    ./gradlew build\n```\n\n## Developing\n\n### Coding style tests\n\nTo run all checks (including unit tests) please execute the following command:\n\n```bash\n    ./gradlew check\n```\n\n## Versioning\n\nWe use [SemVer](http://semver.org/) for versioning.\nFor the versions available, see the tags on this repository.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhmcts%2Fidam-java-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhmcts%2Fidam-java-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhmcts%2Fidam-java-client/lists"}