garmin-api-handler
TypeScript icon, indicating that this package has built-in type declarations

7.1.0 • Public • Published

Garmin API handler

npm version renovate-app Known Vulnerabilities codecov travis

This is an unofficial handler for Garmin Connect API. The documentation is bad :)

How to download fit files, example:

const fs = require('fs');
const path = require('path');
const { GarminApi } = require('../dist');
const { DateTime } = require('luxon');
require('cross-fetch/polyfill');

const extract = require('extract-zip')


const api = new GarminApi();

(async () => {
    await api.login(LOGIN, PASSWORD);

    const activities = await api.getActivities({limit: 1000, startDate: DateTime.fromJSDate(new Date('2020-01-01')).startOf('day'), endDate: DateTime.fromJSDate(new Date('2020-12-31')).endOf('day')});

    await Promise.all(activities.map(async (activity) => {
        const data = await api.getActivityFile(activity.getId());
        const fileName = `files/${activity.getId()}.fit.zip`;
        fs.writeFileSync(fileName, Buffer.from(await data.arrayBuffer()));
        await extract(path.resolve(__dirname, '..', fileName), { dir: path.resolve(__dirname, '..', 'files') })
        fs.rmSync(fileName);
    }));
})()

Readme

Keywords

Package Sidebar

Install

npm i garmin-api-handler

Weekly Downloads

18

Version

7.1.0

License

Apache-2.0

Unpacked Size

128 kB

Total Files

47

Last publish

Collaborators

  • fabulator