Para criar um questionário no Moodle (quiz) que não seja via interface gráfica, há opções:
1) Via comando SQL;
2) Via API
3) Via Webservice
Tendo em conta a complexidade do quiz, uma alternativa que sugiro é explorar via API.
Ainda não fiz isso, mas pesquisei alguns links que acho que podem auxiliar como esse: https://stackoverflow.com/questions/24730583/create-quiz-using-rest-api-in-moodle
Caso não tenha sucesso via API, explore a alternativa via Webservice. Numa pesquisa rápida que fiz, cheguei nesses links https://docs.moodle.org/dev/Quiz_web_services e https://docs.moodle.org/dev/Web_service_API_functions da documentação oficial do Moodle. Numa vista de olho rápido, não identifiquei funções de input de dados sobre quiz. Certamente explorando um pouco mais deve encontrar.
Por fim, se webservice não atender, é hora de pegar no SQL. Nesse sentido, ainda não fiz nenhum SQL para criar quiz nas versões mais recentes. Mas para adiantar vou apresentar algumas dicas de quais tabelas devem ser exploradas:
mdl_quiz - Tabela que registra todos os questionários criados no curso;
mdl_course_module - Tabela e que complementa as configurações de qualquer atividade / recurso. Esse tabela faz conexão entre a tabela de qualquer atividade / recurso com o core do sistema;
Deve ter mais tabela. Para explorar isso, o caminho é o seguinte:
1) Instala uma Moodle virgem;
2) Habilite log de insert / update SQL na base de dados;
3) Crie um quiz
4) Veja nas tabelas, o que foi alterado ou inserido
5) Consulte log do SQL para mapear quais insert /update ocorreu na base. Com base nisso, ajuste o seu SQL.