delete many entries
the hashes of the entries to delete
Optional
refresh: booleanmove many entries
an array of entry hashes to move
the directory id to move the entries to, "" (root) and "trash" are special ids
Optional
refresh: booleancompletely delete the cache
If the cache is causing memory issues, you can clear it, but this will hurt performance.
create a folder
Optional
opts: UploadOptionsOptional
refresh: booleandelete an entry
the hash of the entry to delete
Optional
refresh: booleanget the current cache value as a string
You can use this to warm start a new instance of
remarkable
with any previously cached results.
get the entire contents of a remarkable document
This gets every file of associated with a document, and puts them into a zip archive.
the hash of the document to get the contents for (e.g. the
hash received from listItems
)
get the epub associated with a document hash
This returns the raw input epub if a document was created from an epub.
the hash of the document to get the pdf for (e.g. the hash
received from listItems
)
the epub bytes
get the pdf associated with a document hash
This returns the raw input pdf, not the rendered pdf with any markup.
the hash of the document to get the pdf for (e.g. the hash
received from listItems
)
the pdf bytes
similar to listItems
but backed by the low level api
Optional
refresh: booleanif true, refresh the root hash before listing
list all items
Items include both collections and documents. Documents that are in folders will have their parent set to something other than "" or "trash", but everything will be returned by this function.
Optional
refresh: booleanif true, refresh the root hash before listing
a list of all items with some metadata
move an entry
the hash of the file to move
the id of the directory to move the entry to, "" (root) and "trash" are special parents
Optional
refresh: booleanprune the cache so that it contains only reachable hashes
The cache is append only, so it can grow without bound, even as hashes become unreachable. In the future, this may have better cache management to track this in real time, but for now, you can call this method, to keep it from growing continuously.
Optional
refresh: booleanwhether to refresh the root hash before pruning
use the low-level api to add an epub document
Since this uses the low-level api, it provides more options than
uploadEpub
, but is a little more finicky. Notably, it
may throw a GenerationError
if the generation
doesn't match the current server generation, requiring you to retry until
it works.
the name to display on the reMarkable
the raw epub
Optional
opts: PutOptionsput options
the entry for the newly inserted document
use the low-level api to add a pdf document
Since this uses the low-level api, it provides more options than
uploadPdf
, but is a little more finicky. Notably, it
may throw a GenerationError
if the generation
doesn't match the current server generation, requiring you to retry until
it works.
the name to display on the reMarkable
the raw pdf
Optional
opts: PutOptionsput options
the entry for the newly inserted document
rename an entry
the hash of the entry to rename
the new name to assign
Optional
refresh: booleanset if an entry is stared
the hash of the entry to rename
whether the entry should be stared or not
Optional
refresh: booleanupdate content metadata for a collection
the hash of the file to update
the fields of content to update
Optional
refresh: booleanupdate content metadata for a document
the hash of the file to update
the fields of content to update
Optional
refresh: booleanupdate content metadata for a template
the hash of the file to update
the fields of content to update
Optional
refresh: booleanupload an epub
the name to show for the uploaded epub
the epub contents
Optional
opts: UploadOptionsthis is now simply a less powerful version of putEpub
.
upload a pdf
the name to show for the uploaded epub
the epub contents
Optional
opts: UploadOptionsthis is now simply a less powerful version of putPdf
.
the api for accessing remarkable functions
There are roughly two types of functions.
Most of these functions validate the return values so that typescript is accurate. However, sometimes those return values are more strict than the "true" underlying types. If this happens, please submit a an issue. In the mean time, you should be able to use the low level api to work around any restrictive validation.