{"id":17761685,"url":"https://github.com/pathoschild/fluentjira","last_synced_at":"2025-08-21T12:12:13.004Z","repository":{"id":3665498,"uuid":"4734321","full_name":"Pathoschild/FluentJira","owner":"Pathoschild","description":"A tiny framework for using JIRA's REST API from C#. It handles authentication and maps REST responses to strongly-typed models.","archived":false,"fork":false,"pushed_at":"2016-05-08T04:02:12.000Z","size":265,"stargazers_count":8,"open_issues_count":0,"forks_count":4,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-07-30T16:25:21.482Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Pathoschild.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-06-21T03:26:19.000Z","updated_at":"2024-08-08T06:43:29.000Z","dependencies_parsed_at":"2022-08-18T23:51:51.923Z","dependency_job_id":null,"html_url":"https://github.com/Pathoschild/FluentJira","commit_stats":null,"previous_names":["pathoschild/pathoschild.fluentjira"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/Pathoschild/FluentJira","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pathoschild%2FFluentJira","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pathoschild%2FFluentJira/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pathoschild%2FFluentJira/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pathoschild%2FFluentJira/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Pathoschild","download_url":"https://codeload.github.com/Pathoschild/FluentJira/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Pathoschild%2FFluentJira/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271477995,"owners_count":24766424,"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","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"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":[],"created_at":"2024-10-26T19:42:46.440Z","updated_at":"2025-08-21T12:12:12.984Z","avatar_url":"https://github.com/Pathoschild.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"**FluentJira** is a tiny framework for using [JIRA][]'s [REST API][JIRA REST API] from .NET. It provides a fluent interface for building API queries, and handles authentication and deserialisation into strongly-typed models.\r\n\r\nThis framework doesn't encapsulate the specific endpoint signatures, which means you can easily query any portion of the JIRA REST API (including addon APIs) without needing to change the HTTP client.\r\n\r\n**This is an early development version.**\r\n\r\n## Installing\r\nThe fluent client is [available on NuGet][]:\r\n\u003e Install-Package Pathoschild.FluentJira\r\n\r\nThis is a portable library compatible with multiple platforms (.NET 4.5+, Windows 8+ apps, Universal Windows Platform, and ASP.NET Core 1.0).\r\n\r\n## Using the client\r\n which simplifies HTTP requests against the JIRA API and parsing the server responses. The structures returned by the client look like the actual API responses, so the [JIRA API documentation](http://docs.atlassian.com/jira/REST/latest/) is applicable.\r\n\r\nYou start by creating a client:\r\n\r\n```c#\r\n// create client\r\nIClient client = new JiraClient(\"https://example.atlassian.net/rest/api/latest/\", \"username\", \"password\");\r\n```\r\n\r\nNext you chain methods to define your API request, and deserialise the response into one of the predefined models (or your own model):\r\n\r\n```c#\r\n// fetch an issue\r\nIssue issue = await client\r\n    .Get(\"issue/EXAMPLE-14\")\r\n    .WithArgument(\"expand\", \"changelog\")\r\n    .As\u003cIssue\u003e();\r\n\r\n// read the model\r\nConsole.WriteLine($@\"\r\n\t'{issue.Fields.Summary}' has a remaining estimate of {issue.Fields.TimeTracking.RemainingEstimate}.\r\n\tIt was last edited by {issue.ChangeLog.Histories.Last().Author.Name}.\r\n\");\r\n```\r\n\r\n### Self links\r\nYou can use JIRA's `Self` URLs to get further information on an object. For example, this code gets all the information for the user who posted an issue:\r\n```c#\r\nUser user = client\r\n    .Get(issue.Fields.Assignee.Self)\r\n    .As\u003cUser\u003e();\r\nConsole.WriteLine($\"The assignee's timezone is {user.TimeZone}.\");\r\n```\r\n\r\nThis is a minimal extension of the [fluent HTTP client][FluentHttpClient]; see [its project page for more examples and documentation][FluentHttpClient].\r\n\r\n[available on NuGet]: https://www.nuget.org/packages/Pathoschild.FluentJira\r\n[JIRA]: http://www.atlassian.com/software/jira/overview\r\n[JIRA REST API]: http://www.atlassian.com/software/jira/overview\r\n[FluentHttpClient]: https://github.com/Pathoschild/FluentHttpClient","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpathoschild%2Ffluentjira","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpathoschild%2Ffluentjira","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpathoschild%2Ffluentjira/lists"}