{"id":37027575,"url":"https://github.com/chapeco/testrail-api-java-client","last_synced_at":"2026-01-14T03:16:51.926Z","repository":{"id":57732749,"uuid":"139062007","full_name":"chapeco/testrail-api-java-client","owner":"chapeco","description":"Java client for TestRail API","archived":false,"fork":true,"pushed_at":"2020-01-20T13:59:28.000Z","size":152,"stargazers_count":1,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-07-09T06:22:08.187Z","etag":null,"topics":["api","java","jdk8","testrail","testrail-api","testrailapi"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"codepine/testrail-api-java-client","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chapeco.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}},"created_at":"2018-06-28T19:50:12.000Z","updated_at":"2020-04-06T20:26:52.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/chapeco/testrail-api-java-client","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/chapeco/testrail-api-java-client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapeco%2Ftestrail-api-java-client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapeco%2Ftestrail-api-java-client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapeco%2Ftestrail-api-java-client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapeco%2Ftestrail-api-java-client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chapeco","download_url":"https://codeload.github.com/chapeco/testrail-api-java-client/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chapeco%2Ftestrail-api-java-client/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28408824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T01:52:23.358Z","status":"online","status_checked_at":"2026-01-14T02:00:06.678Z","response_time":107,"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":["api","java","jdk8","testrail","testrail-api","testrailapi"],"created_at":"2026-01-14T03:16:51.243Z","updated_at":"2026-01-14T03:16:51.917Z","avatar_url":"https://github.com/chapeco.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TestRail API Java Client\n--------------------------\n**THIS REPOSITORY IS A CONTINUATION OF THE WORK CREATED BY [kunal546](https://github.com/kunal546)**\n\nA Java client library for [TestRail API](http://docs.gurock.com/testrail-api2/start).\n\n[![Maven Central](https://img.shields.io/maven-central/v/io.github.chapeco.api.testrail/testrail-api-java-client.svg?label=Maven%20Central)](https://search.maven.org/artifact/io.github.chapeco.api.testrail/testrail-api-java-client/2.0.2/jar)\n\n## Quick Start\n--------------\n\n### Maven Dependency\n```xml\n\u003cdependency\u003e\n\t\u003cgroupId\u003eio.github.chapeco.api.testrail\u003c/groupId\u003e\n  \t\u003cartifactId\u003etestrail-api-java-client\u003c/artifactId\u003e\n  \t\u003cversion\u003e2.0.2\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n### Example Usage\n```java\n// create a TestRail instance\nTestRail testRail = TestRail.builder(\"https://some.testrail.net/\", \"username\", \"password\").applicationName(\"playground\").build();\n\n// create a new project\nProject project = testRail.projects().add(new Project().setName(\"Playground Project\")).execute();\n\n// add a new test suite\nSuite suite = testRail.suites().add(project.getId(), new Suite().setName(\"Functional Tests\")).execute();\n\n// add a new section\nSection section = testRail.sections().add(project.getId(), new Section().setSuiteId(suite.getId()).setName(\"Boundary Cases\")).execute();\n\n// add a test case\nList\u003cCaseField\u003e customCaseFields = testRail.caseFields().list().execute();\nCase testCase = testRail.cases().add(section.getId(), new Case().setTitle(\"Be able to play in playground\"), customCaseFields).execute();\n\n// add a new test run\nRun run = testRail.runs().add(project.getId(), new Run().setSuiteId(suite.getId()).setName(\"Weekly Regression\")).execute();\n\n// add test result\nList\u003cResultField\u003e customResultFields = testRail.resultFields().list().execute();\ntestRail.results().addForCase(run.getId(), testCase.getId(), new Result().setStatusId(1), customResultFields).execute();\n\n// close the run\ntestRail.runs().close(run.getId()).execute();\n\n// complete the project - supports partial updates\ntestRail.projects().update(project.setCompleted(true)).execute();\n```\n\n## Supported TestRail Version\n-----------------------------\n![TestRail v5.4](https://img.shields.io/badge/TestRail-v5.4-blue.svg)\n[![TestRail v5.4](https://img.shields.io/badge/TestRail%20API-v2-orange.svg)](http://docs.gurock.com/testrail-api2/start)\n\n[Old API (aka Mini API)](http://docs.gurock.com/testrail-api/start) is not supported. Please note that you may not be able to use some API features supported by this library depending on the TestRail version you use. Similarly, since this is not an official library, API updates in future versions of TestRail may not be supported immediately with the release of new version or may need an incompatible major version change.\n\n## Notables\n------------\n\n### Thin Client Library\nExcept the initial configration (refer to [example](#example-usage)), this client library does not maintain any state from your TestRail service. You can maintain/cache state on your end if you like.\n\n### Custom Case And Result Fields\nTestRail supports adding custom case and result fields. The request interfaces in ```TestRail.Cases``` and ```TestRail.Results``` requires a list of these fields in order to allow this library to map them to the correct Java types. Here's an example where we want to to know the separated test steps of a particular test case:\n```java\n// fetch list of custom case field configured in TestRail\nList\u003cCaseField\u003e customCaseFields = testRail.caseFields().list().execute();\n\n// get test case\nCase testCase = testRail.cases().get(1, customCaseFields).execute();\n\n// assuming separated_steps is a custom TestRail Steps type case field\nList\u003cField.Step\u003e customSteps = testCase.getCustomField(\"separated_steps\");\n\n// work with typed customSteps\n......\n```\nFind the map of supported TestRail field types to Java types in the javadoc of ```Field.Type``` enum.\nAs mentioned [above](#thin-client-library), since this is a thin library, it does not store the list of fields. You can cache them on your end if you like.\n\n## License\n----------\nThis project is licensed under [MIT license](http://opensource.org/licenses/MIT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchapeco%2Ftestrail-api-java-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchapeco%2Ftestrail-api-java-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchapeco%2Ftestrail-api-java-client/lists"}