After getting a device token with the register method,
persist it and create api instances using remarkable.
Outside of registration, all relevant methods are in
RemarkableApi, or it's interior
RawRemarkableApi (for lower level functions).
Example
A simple rename
import { register, remarkable } from"rmapi-js";
constcode = "..."// eight letter code from https://my.remarkable.com/device/browser/connect consttoken = awaitregister(code) // persist token constapi = awaitremarkable(token); // list all items (documents and collections) const [first, ...rest] = api.listItems(); // rename first item constentry = api.rename(first.hash, "new name");
The cloud api is essentially a collection of entries. Each entry has an id,
which is a uuid4 and a hash, which indicates it's current state, and changes
as the item mutates, where the id is constant. Most mutable operations take
the initial hash so that merge conflicts can be resolved. Each entry has a
number of properties, but a key property is the parent, which represents
its parent in the file structure. This will be another document id, or one of
two special ids, "" (the empty string) for the root directory, or "trash" for
the trash.
Detailed information about the low-level storage an apis can be found in
RawRemarkableApi.
Additionally, this entire api was reverse engineered, so some things are only
[speculative], or entirely [unknown]. If something breaks, please
file an issue!
Create and interact with reMarkable cloud.
After getting a device token with the
register
method, persist it and create api instances usingremarkable
. Outside of registration, all relevant methods are inRemarkableApi
, or it's interiorRawRemarkableApi
(for lower level functions).Example
A simple rename
Example
A simple upload
Remarks
The cloud api is essentially a collection of entries. Each entry has an id, which is a uuid4 and a hash, which indicates it's current state, and changes as the item mutates, where the id is constant. Most mutable operations take the initial hash so that merge conflicts can be resolved. Each entry has a number of properties, but a key property is the
parent
, which represents its parent in the file structure. This will be another document id, or one of two special ids, "" (the empty string) for the root directory, or "trash" for the trash.Detailed information about the low-level storage an apis can be found in
RawRemarkableApi
.Additionally, this entire api was reverse engineered, so some things are only
[speculative]
, or entirely[unknown]
. If something breaks, please file an issue!