I use R and Python to make many versions of similar questions, especially for STEM-oriented courses. Essentially, in a quiz, each question is a question group that pulls from a specific testbank carefully crafted with hundreds of versions of a question ("formula quiz" functionality is limited in a number of ways, so I do the versioning myself outside of Canvas--plus, as far as I can tell, Canvas doesn't support the "cloze" format, only QTI).
I have no problem importing the many testbanks (again, one per question) in QTI format, but I have to do that work manually (which adds up for midterms and finals...sigh). I'm comfortable with the API and I mostly use UCF's (thank you!) Python package. However, I don't see any REST API (or more recently, GraphQL) functionality on the Canvas API documentation page for the "import" process in Canvas.
1) Can I just upload a testbank as a regular file (uploading files can indeed be automated via the API), make sure it's private, and then, somehow, tag it as a testbank to be used for quizzes only?
2) Am I missing an API call for the import functionality in Canvas?
I have been told there is not one. Additionally, this thread, though a little old, says the same thing.
HOWEVER, Respondus is somehow able to create test banks through their desktop tool, so there must be some work around. Hopefully someone else is able to provide more information.