sindresorhus/got

🌐 Human-friendly and powerful HTTP request library for Node.js

View on GitHub ↗Jump to charts ↓Open shareable report →

sindresorhus/got has 14k+ stars and 1k+ forks on GitHub, is written in TypeScript, and was last pushed on Oct 13, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Added to GitGenius on July 3rd, 2026
Created on March 27th, 2014
Open Issues & Pull Requests: 0 (+0)
GitHub issues: Enabled
Number of forks: 1,004
Total Stargazers: 14,953 (+0)
Total Subscribers: 107 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 4.0 days
Mean response time: 239.3 days
90th percentile: 935.3 days
Tracked items: 186

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 18, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits. How this is counted.

How this project is maintained

Work labelled "bug" is answered fastest, typically in about 4 hours, while "enhancement" waits about 6 days. Three people close 95% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 0
New in 7 days: 0
Closed in 7 days: 2
Avg open age: N/A days
Stale 30+ days: 0
Stale 90+ days: 0

Recent activity

Opened in 7 days: 0
Closed in 7 days: 2
Comments in 7 days: 0
Events in 7 days: 2

Top labels

  • ✭ help wanted ✭ (24)
  • enhancement (21)
  • external (13)
  • bug (12)
  • future (5)
  • good for beginner (3)
  • nodejs bug (2)
  • question (2)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Got is a human-friendly and powerful HTTP request library for Node.js, written in TypeScript and designed as an alternative to other HTTP clients. The library is used by over 10,000 packages and 5 million repositories, making it one of the most widely adopted HTTP clients in the Node.js ecosystem.

The library provides both Promise-based and Stream APIs for making HTTP requests. The Promise API includes a dedicated JSON mode with a `.json<T>()` function that returns `Promise<T>`, along with advanced options like `parseJson` and `stringifyJson` for handling JSON payloads. The Stream API enables handling of large responses and streaming data. Got also offers a Pagination API for handling paginated endpoints, making it easier to work with APIs that return data in pages.

Got distinguishes itself through several advanced features not commonly found in competing libraries. It includes RFC-compliant caching, built-in cookie handling out-of-the-box, and advanced timeout handling with detailed timeout configuration options. The library implements automatic retries on failure by default, with configurable retry limits through the `options.retry.limit` setting. It supports HTTP/2 on Node.js 15.10.0 and above, provides Unix Domain Socket support, and includes comprehensive error handling with metadata-rich error objects.

The library supports hooks for request lifecycle customization, instance creation for managing multiple configurations, and a plugin system that has spawned ecosystem tools like got4aws for AWS API interactions, gh-got for GitHub API access, and got-scraping for web scraping purposes. Got also integrates with Node.js Diagnostics Channel for observability and provides full TypeScript support with type definitions.

The package is native ESM-only and no longer provides CommonJS exports, requiring projects to convert to ESM if they use CommonJS. Got v11 is no longer maintained. The README explicitly recommends Ky, also by the same author, as a smaller alternative that works in browsers and is built on the Fetch API, or fetch-extras for simpler use cases. Comparison tables in the documentation show Got's advantages over node-fetch, axios, and superagent, particularly in areas like pagination support, RFC-compliant caching, advanced timeouts, and composability. Migration guides are provided for users coming from the unmaintained Request library, Axios, or Node.js built-in HTTP modules.