Skip to content
A fetch interface to got
TypeScript JavaScript
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
src Refactor unit tests Sep 15, 2019
.eslintrc.json Scaffold project May 21, 2019
.gitignore Upgrade dependencies Sep 9, 2019
.npmignore Fix output directory Sep 16, 2019
LICENSE Add LICENSE Jun 3, 2019 Update project documentation Sep 17, 2019
jest.config.js Upgrade dependencies Sep 9, 2019
package.json v1.0.0 Sep 17, 2019
tsconfig.base.json Pass parsed URL to got Sep 15, 2019
yarn.lock Bump dependencies Sep 15, 2019


A fetch-compatible wrapper around got for those times when you need to fetch stuff over HTTP 😉


got is a peer dependency so you will need to install it alongside got-fetch:

$ npm install --save got got-fetch

If you use Typescript then you will also need @types/got if you want your project to build:

$ npm install --save-dev @types/got


The module exports a global instance ready to fetch resources:

const { fetch } = require('got-fetch');

fetch('').then(resp => {
  console.log(resp.status); // should be 200
  resp.text().then(body => console.log(body)); // should be some HTML code

The module also exports a function which allows you to use your own custom got instance:

const got = require('got');
const { createFetch } = require('got-fetch');

const myGot = got.extend({
  headers: {
    'x-api-key': 'foo bar'

const fetch = createFetch(myGot);

// this request will send the header `x-api-key: foo bar`


fetch is designed for browser environments and this package is just a wrapper around a Node-based HTTP client. Not all fetch features are supported:


See LICENSE for information.

You can’t perform that action at this time.