{"id":23439825,"url":"https://github.com/ksokolovic/semaphoreci4j","last_synced_at":"2025-10-27T20:19:05.842Z","repository":{"id":96586221,"uuid":"121120603","full_name":"ksokolovic/semaphoreci4j","owner":"ksokolovic","description":"Semaphore CI API (v1) client","archived":false,"fork":false,"pushed_at":"2018-02-11T12:51:13.000Z","size":36,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-09T20:15:53.355Z","etag":null,"topics":["ci","client-library","rest-api","semaphore-ci","semaphoreci"],"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/ksokolovic.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2018-02-11T12:20:51.000Z","updated_at":"2025-01-10T05:49:54.000Z","dependencies_parsed_at":"2023-06-10T14:47:59.531Z","dependency_job_id":null,"html_url":"https://github.com/ksokolovic/semaphoreci4j","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksokolovic%2Fsemaphoreci4j","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksokolovic%2Fsemaphoreci4j/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksokolovic%2Fsemaphoreci4j/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksokolovic%2Fsemaphoreci4j/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ksokolovic","download_url":"https://codeload.github.com/ksokolovic/semaphoreci4j/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248103869,"owners_count":21048245,"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":["ci","client-library","rest-api","semaphore-ci","semaphoreci"],"created_at":"2024-12-23T15:36:31.613Z","updated_at":"2025-10-27T20:19:05.777Z","avatar_url":"https://github.com/ksokolovic.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Semaphore CI API Client\n***\n\nThis library is intended to be used as a simple client for the [Semaphore CI](https://semaphoreci.com) REST API. The library supports Semaphore CI API version 1. It wraps the API calls covering most of the available API endpoints, enabling you to [securely](https://semaphoreci.com/docs/api_authentication.html):\n - list [projects](https://semaphoreci.com/docs/projects-api.html), \n - manage [branches and builds](https://semaphoreci.com/docs/branches-and-builds-api.html), \n - check [servers and deploys](https://semaphoreci.com/docs/servers-and-deploys-api.html) and \n - manage [webhooks](https://semaphoreci.com/docs/webhooks-api.html).\n \nAll the responses from the API are in turn mapped into the corresponding Java objects (defined in `org.devfort.semaphoreci4j.model` package). \n\n## Getting Started\n\nIn order to use the library, you should first: \n\n- Clone the repository\n\n```sh\n$ git clone https://github.com/ksokolovic/semaphoreci4j.git\n```\n\n- Build the project\n\n```sh\n# Including tests \n$ gradle clean build\n\n# Without tests\n$ gradle clean build -x test\n```\n\n- Add the `semaphoreci4j` library to your project classpath.\n\n## Usage\n\nSince Semaphore CI requires all API requests to be authenticated, as the first step you should obtain your API authentication token. Head over to [this page](https://semaphoreci.com/users/edit), and copy the token which is shown at the bottom of the page. \n\nThe `org.devfort.semaphoreci4j.SemaphoreCI` class is the entry point class for interacting with the Semaphore API. You create a reference to it using the previously obtained authentication token:\n\n```java\nSemaphoreCI semaphore = new SemaphoreCI(\"authentication-token\");\n```\n\nAt the top level you can list your projects, which are returned as a map of project names to projects:\n\n```java\nMap\u003cString, Project\u003e projects = semaphoreCI.getProjects();\n```\n\nAlternatively, you can request for a specific project by its name, using the `getProject(\"project-name\")` method of the `SemaphoreCI` class. \n\nThe `Project` instance will in turn allow you to access all the relevant information listed above. \n\n## Contribution\n\n### Issues \n\nIn case you run into any issues while using the library or have a suggestion for improving it, please [create an issue here](https://github.com/ksokolovic/semaphoreci4j/issues), with as detailed as possible description of what's going on; a working example, code snippet or log file are the best.\n\n## License\n\nCopyright (c) Kemal Sokolović [kemal DOT sokolovic AT gmail DOT com], Miloš Panasiuk [milos DOT panasiuk AT gmail DOT com]\n\nDistributed under the [MIT License](http://opensource.org/licenses/MIT)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fksokolovic%2Fsemaphoreci4j","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fksokolovic%2Fsemaphoreci4j","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fksokolovic%2Fsemaphoreci4j/lists"}