Hey, good luck on your project! If a user wants to give your client their login info and it receives a valid token for their account, you can basically do any interactions you could do through the website (add vocab, custom definitions, mnemonics, etc.) programmatically.
However, I would advise you be careful about the content you take from Anki and how you store it onto Skritter (and vice versa, especially if it’s a user’s custom Skritter data), that’s where you could get into a legal grey area. Though I am not a lawyer and this is not legal advice, here’s some thoughts I came up with that might be of concern as you develop functionality:
- Don’t use/take any private or copyrighted content from Anki (e.g. if it’s a deck with example sentences copied exactly from a specific textbook) and publicly put it into Skritter.
- Don’t take private Skritter user data (basically anything you wouldn’t be able to see unless you were logged in as them) and turn it into public Anki data.
Basically, don’t turn private data on either platform into public data through the transfer. Here’s some ideas on how you might make it easier to achieve your functionality within those constraints:
From Anki to Skritter, keep any custom lists you create private by default, and try your best to only use Vocabs that already exist the Skritter database (we probably have it, though maybe with a slightly different definition). Make a custom definitions, etc. on UserVocabs for the existing Vocab, private mnemonics, etc., not entirely new base Vocabs.
From Skritter to Anki, see if you can make it work by using Anki’s definitions instead of Skritter’s. That would be easy and protect you from having to worry about which lists can be made privately/publicly available for a user.
Especially with GDPR coming soon, we are doing a review of how we store user content and provide access to it. We don’t anticipate a need to change anything, but if we do need to make any breaking changes to how the API works, we’ll be sure to document it.