Isomorphic modern/legacy/Node polyfill for WHATWG fetch().

This package replaces the http package for HTTP calls. fetch package provides polyfill for the WHATWG fetch specification for legacy browsers or defaults to the global class which is available in modern browsers and Node. It is recomended that you use this package for compatibility with non-modern browsers.

For more information we recommend reading the MDN articles about it as this article covers only basic usage in Meteor.



To add this package to an existing app, run the following command from your app directory:

meteor add ecmascript

To add the fetch package to an existing package, include the statement api.use('fetch'); in the Package.onUse callback in your package.js file:

Package.onUse((api) => {


You can import fetch, Headers, Request and Response classes from meteor/fetch.

import { fetch, Headers, Request, Response } from 'meteor/fetch';

For the most part though, you will only need to import fetch and Headers.

import { Meteor } from 'meteor/meteor';
import { fetch, Headers } from 'meteor/fetch';

async function postData (url, data) {
    const response = await fetch(url, {
        method: 'POST', // *GET, POST, PUT, DELETE, etc.
        mode: 'cors', // no-cors, *cors, same-origin
        cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached
        credentials: 'same-origin', // include, *same-origin, omit
        headers: new Headers({
            Authorization: 'Bearer my-secret-key',
            'Content-Type': 'application/json'
        redirect: 'follow', // manual, *follow, error
        referrerPolicy: 'no-referrer', // no-referrer, *no-referrer-when-downgrade, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin, unsafe-url
        body: JSON.stringify(data) // body data type must match "Content-Type" header
    return response.json();

const postDataCall = Meteor.wrapAsync(postData);
const results = postDataCall('https://www.example.org/statsSubmission', { totalUsers: 55 }));
Edit on GitHub
// search box