#+begin_src python :dir src :results drawer :exports results
import hypexport.export as E; return E.make_parser().prog
#+end_src

#+RESULTS:
:results:
Export/takeout for your personal [[https://hypothes.is][Hypothes.is]] data: annotations and profile information.
:end:

* Setting up
1. The easiest way is =pip3 install --user git+https://github.com/karlicoss/hypexport=.

   Alternatively, use =git clone --recursive=, or =git pull && git submodules update --init=. After that, you can use =pip3 install --editable=.
2. Follow [[https://hypothes.is/account/developer][these]] instructions to set up the token

* Exporting

#+begin_src python :dir src :results drawer :exports results
import hypexport.export as E; return E.make_parser().epilog
#+end_src

#+RESULTS:
:results:

Usage:

*Recommended*: create =secrets.py= keeping your api parameters, e.g.:


: username = "USERNAME"
: token = "TOKEN"


After that, use:

: python3 -m hypexport.export --secrets /path/to/secrets.py

That way you type less and have control over where you keep your plaintext secrets.

*Alternatively*, you can pass parameters directly, e.g.

: python3 -m hypexport.export --username <username> --token <token>

However, this is verbose and prone to leaking your keys/tokens/passwords in shell history.


You can also import ~hypexport.export~ as a module and call ~get_json~ function directly to get raw JSON.


I *highly* recommend checking exported files at least once just to make sure they contain everything you expect from your export. If not, please feel free to ask or raise an issue!

:end:

# TODO FIXME api limitations 10000 annotations?
