{"id":18051750,"url":"https://github.com/apimatic/github-sample-app","last_synced_at":"2025-04-05T07:13:51.058Z","repository":{"id":68154889,"uuid":"592271056","full_name":"apimatic/github-sample-app","owner":"apimatic","description":"Proof-of-concept for a Java SDK for GitHub REST API V3.","archived":false,"fork":false,"pushed_at":"2023-01-23T12:59:23.000Z","size":4903,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-10T14:53:18.551Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apimatic.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":"2023-01-23T11:14:10.000Z","updated_at":"2024-03-18T14:19:19.000Z","dependencies_parsed_at":null,"dependency_job_id":"a28f0c4f-977a-4e42-b4da-2125066cba14","html_url":"https://github.com/apimatic/github-sample-app","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/apimatic%2Fgithub-sample-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fgithub-sample-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fgithub-sample-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apimatic%2Fgithub-sample-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apimatic","download_url":"https://codeload.github.com/apimatic/github-sample-app/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247299850,"owners_count":20916193,"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":[],"created_at":"2024-10-30T22:55:39.911Z","updated_at":"2025-04-05T07:13:51.042Z","avatar_url":"https://github.com/apimatic.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Java SDK for GitHub V3 REST API\n\nThis repository contains a proof-of-concept for a Java SDK for GitHub's V3 REST API. This SDK was generated using the [APIMatic CodeGen](http://www.apimatic.io/).\n\nThere are two projects in this repo:\n\n* [Java SDK Source Code (generated)](https://github.com/apimatic/github-java-app/tree/master/github-sdk)\n* [Sample application](https://github.com/apimatic/github-java-app/tree/master/github-sample-app)\n\n## Running the Sample Application\n\nWe have setup GitHub workflows to help you quickly test out the sample application.\n\nGo to the actions tab and find the following Actions. Run any action with the required input fields. See the API response in the output of `Run GitHub Application` step.\n\n### Repository Flow ([run](https://github.com/apimatic/github-java-app/actions/workflows/repository-flow.yml)) ([source](github-sample-app/src/main/java/github/sample/app/RepositoryFlow.java))\n\nThis example runs multiple endpoints in one flow:\n\n- *Create a Repository* using the [`reposCreateForAuthenticatedUser`](github-sample-app/src/main/java/github/sample/app/RepositoryFlow.java#L30) endpoint.\n- *Get the Repository Info* using the [`reposGet`](github-sample-app/src/main/java/github/sample/app/RepositoryFlow.java#L37) endpoint.\n- *Delete the Repository* by [`reposDelete`](github-sample-app/src/main/java/github/sample/app/RepositoryFlow.java#L42) endpoint.\n\n### Get Repository Info ([run](https://github.com/apimatic/github-java-app/actions/workflows/get-repo.yml)) ([source](github-sample-app/src/main/java/github/sample/app/GetRepository.java))\n\nThis action will get the repository info using the [`reposGet`](github-sample-app/src/main/java/github/sample/app/GetRepository.java#L21) API call using the provided repository name in the workflow inputs.\n\n### List Contributors ([run](https://github.com/apimatic/github-java-app/actions/workflows/repo-contributor.yml)) ([source](github-sample-app/src/main/java/github/sample/app/ReposContributors.java))\n\nThis action will print the list of the contributors for a repository using the [`reposListContributors`](github-sample-app/src/main/java/github/sample/app/ReposContributors.java#L25) API.\n\n### Get GH Actions Billing Info ([run](https://github.com/apimatic/github-java-app/actions/workflows/gh-actions-billing.yml)) ([source](github-sample-app/src/main/java/github/sample/app/GithubActionsBilling.java))\n\nThis action will get the billing info of GitHub actions usage for a user using the [`billingGetGithubActionsBillingUser`](github-sample-app/src/main/java/github/sample/app/GithubActionsBilling.java#L21) API call using the provided username in the workflow inputs.\n\n### Get GH Packages Billing Info ([run](https://github.com/apimatic/github-java-app/actions/workflows/gh-packages-billing.yml)) ([source](github-sample-app/src/main/java/github/sample/app/GithubPackagesBilling.java))\n\nThis action will get the billing info of GitHub packages for a user using the [`billingGetGithubPackagesBillingUser`](github-sample-app/src/main/java/github/sample/app/GithubPackagesBilling.java#L21) API call using the provided username in the workflow inputs.\n\n### Get OctoCat ([run](https://github.com/apimatic/github-java-app/actions/workflows/octocat.yml)) ([source](github-sample-app/src/main/java/github/sample/app/OctoCat.java))\n\nGet an :octocat: using the [`metaGetOctocat`](github-sample-app/src/main/java/github/sample/app/OctoCat.java#L19) API.\n\n## Running the Sample Application Locally\n\nYou can also manually setup this application locally after clonning it.\n\n### Prerequisite\n\nJDK 8 should be installed in the system.\n\n### Getting Started\nOpen the bash command line at the root of this repository.\n\nBuild the GitHub Java SDK using the command:\n``` bash\nmvn -f \"github-sdk/pom.xml\" --no-transfer-progress clean install\n```\n\nBuild sample application using command:\n``` bash\nmvn -f \"github-sample-app/pom.xml\" --no-transfer-progress clean install\n```\n\n### Run the sample application using the command:\n\nRun this command with one of these values for `{MainClassName}`: `GetRepository`, `GithubActionsBilling`, `GithubPakagesBilling`, `OctoCat`, `ReposContributors`, `RepositoryFlow`. \n\n``` bash\ncd github-sample-app \u0026\u0026 mvn exec:java --no-transfer-progress -Dexec.mainClass=\"github.sample.app.{MainClassName}\"\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapimatic%2Fgithub-sample-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapimatic%2Fgithub-sample-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapimatic%2Fgithub-sample-app/lists"}