Skip to content


Repository files navigation


A Jmap Client written in Typescript.

How to use it

Import in in your project (in you package.json), you can reference a commit or a branch to use snapshot versions.

Create the client

import { Client } from "jmap-client-ts";
import { FetchTransport } from "jmap-client-ts/lib/utils/fetch-transport";

let client = new Client({
    accessToken: 'myToken',
    sessionUrl: '',
    transport: new FetchTransport(fetch)

Fetch the session, it will return a promise (of void), the result will be stored on the client and can be accesed later with getSession()


When the fetchSession() promise resolves, you can make requests, the name of the method corresponds to the names in the specs, with lowerCamelCase, and the / replaced by a _, it will return a promise.

    accountId: Object.keys(jmapClient.getSession().accounts)[0],
    ids: null,