Jira SDK
Install, authenticate, and search Jira Cloud with Effect-native operations generated from Atlassian OpenAPI.
Public package OpenAPI 587 operationsThe Jira SDK turns Atlassian’s authoritative OpenAPI document into yieldable Effect operations with validated responses, typed failures, tracing, and retry policy.
Install
npm install @kevinmichaelchen/distilled-jira effectpnpm add @kevinmichaelchen/distilled-jira effectbun add @kevinmichaelchen/distilled-jira effectAuthentication
| Variable | Purpose |
|---|---|
JIRA_BASE_URL |
Jira Cloud site, such as https://acme.atlassian.net |
JIRA_EMAIL |
Atlassian account email |
JIRA_API_TOKEN |
Atlassian API token |
Quickstart
Search for the highest-priority unresolved issues in a project:
import * as Effect from "effect/Effect";
import * as Layer from "effect/Layer";
import * as FetchHttpClient from "effect/unstable/http/FetchHttpClient";
import {
CredentialsFromEnv,
searchAndReconcileIssuesUsingJql,
} from "@kevinmichaelchen/distilled-jira";
const JiraLive = Layer.mergeAll(FetchHttpClient.layer, CredentialsFromEnv);
const program = searchAndReconcileIssuesUsingJql({
jql: 'project = "PAY" AND resolution = Unresolved ORDER BY priority DESC',
fields: ["summary", "status", "priority", "assignee"],
maxResults: 50,
});
const issues = await Effect.runPromise(Effect.provide(program, JiraLive));
Source and package
npm package
Public package, generated source, declarations, and release history.
Implementation (private)
Credentials, patches, errors, retries, tests, and generated operations.
Specification (private)
Immutable mirror of Atlassian’s official OpenAPI source.
Atlassian’s small Java-style dotted operation-ID subset is normalized alongside its ordinary camelCase IDs, producing lower camelCase exports throughout.