{"id":19717663,"url":"https://github.com/haydenbleasel/atlassian-ts","last_synced_at":"2025-04-29T20:30:57.706Z","repository":{"id":252572854,"uuid":"840832534","full_name":"haydenbleasel/atlassian-ts","owner":"haydenbleasel","description":"A type-safe Typescript client for the Atlassian REST API, powered by openapi-fetch and ky.","archived":false,"fork":false,"pushed_at":"2024-11-02T00:18:05.000Z","size":663,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-02T01:17:58.701Z","etag":null,"topics":["atlassian","client","ky","openapi-fetch","typescript"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/atlassian-ts","language":"TypeScript","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/haydenbleasel.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["haydenbleasel"]}},"created_at":"2024-08-10T20:28:05.000Z","updated_at":"2024-11-02T00:28:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"820d8b44-3ad4-4cca-b35a-c6d09e6c7889","html_url":"https://github.com/haydenbleasel/atlassian-ts","commit_stats":null,"previous_names":["haydenbleasel/atlassian-ts"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenbleasel%2Fatlassian-ts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenbleasel%2Fatlassian-ts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenbleasel%2Fatlassian-ts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/haydenbleasel%2Fatlassian-ts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/haydenbleasel","download_url":"https://codeload.github.com/haydenbleasel/atlassian-ts/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224188076,"owners_count":17270366,"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":["atlassian","client","ky","openapi-fetch","typescript"],"created_at":"2024-11-11T22:50:10.585Z","updated_at":"2024-11-11T22:50:11.280Z","avatar_url":"https://github.com/haydenbleasel.png","language":"TypeScript","funding_links":["https://github.com/sponsors/haydenbleasel"],"categories":[],"sub_categories":[],"readme":"# atlassian-ts\n\n[![Version](https://img.shields.io/npm/v/atlassian-ts.svg)](https://www.npmjs.org/package/atlassian-ts) [![Build Status](https://github.com/haydenbleasel/atlassian-ts/actions/workflows/push.yml/badge.svg?branch=main)](https://github.com/haydenbleasel/atlassian-ts/actions?query=branch%3Amain)\n\n![atlassian-ts](/sample.png)\n\nA type-safe Typescript client for the Atlassian REST API, powered by openapi-fetch and ky.\n\n## Features\n\n- Full TypeScript support for Atlassian REST API endpoints\n- OAuth 2.0 and Basic Authentication support\n- Automatic retries with configurable limits\n- Built on top of robust libraries: openapi-fetch and ky\n\n## Installation\n\n```bash\npnpm add atlassian-ts\n```\n\n## Usage\n\nYou can create a client for either OAuth 2.0 or Basic Authentication.\n\n### OAuth 2.0 Client\n\nFor integrations that are not Forge or Connect apps, use OAuth 2.0 authorization code grants (3LO) for security (3LO scopes are shown as for operations OAuth scopes required). Read more [here](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps/).\n\n```ts\nimport { createOauth2Client } from 'atlassian-ts';\n\nconst client = createOauth2Client({\n  cloudId: 'your-cloud-id',\n  accessToken: 'your-access-token',\n  retries: 3,\n});\n\nconst projects = await client.GET('/rest/api/3/project');\n```\n\n### Basic Authentication Client\n\nFor personal scripts, bots, and ad-hoc execution of the REST APIs use basic authentication. Read more [here](https://developer.atlassian.com/cloud/jira/platform/basic-auth-for-rest-apis/).\n\n```ts\nimport { createBasicAuthClient } from 'atlassian-ts';\n\nconst client = createBasicAuthClient({\n  siteUrl: 'https://your-site.atlassian.net',\n  email: 'your-email@example.com',\n  apiToken: 'your-api-token',\n  retries: 3,\n});\n\nconst projects = await client.GET('/rest/api/3/project');\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaydenbleasel%2Fatlassian-ts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaydenbleasel%2Fatlassian-ts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaydenbleasel%2Fatlassian-ts/lists"}