Templates

Next to your own question banks, Riddle maintains a set of public template banks – ready-made pools of questions you can start from instead of an empty bank.

Templates are readable by every account: you can list them, read a single one and read its items to preview what is inside. To actually use one, duplicate it – the copy is an ordinary bank of yours that you can extend and publish.

List the templates

/question-bank/template-list returns every public template:

PropertyTypeDescription
riddleTypestringOnly return templates of this type: Quiz or Poll
GET /question-bank/template-list?riddleType=Quiz

Because a template belongs to Riddle and not to you, it is returned in a reduced shape – without owner, team, notes, tags and dependent Riddles:

{
    "success": true,
    "code": 200,
    "data": {
        "count": 1,
        "items": [
            {
                "id": 42,
                "riddleType": "Quiz",
                "title": "General knowledge",
                "modifiedAt": "2026-05-04 09:00:00",
                "createdAt": "2026-01-02 09:00:00",
                "publishedAt": "2026-05-04 09:10:00",
                "itemCount": 120,
                "draftItemCount": 120,
                "riddleDependencies": [],
                "isPublicTemplate": true,
                "hasChanges": false,
                "categories": ["Geography", "History", "Science"],
                "blockTypeCategoryMap": {
                    "SingleChoice": ["Geography", "History", "Science"]
                }
            }
        ]
    }
}

Use categories and blockTypeCategoryMap to see which categories a template offers – those are the values you later put into the questionBankCriteria of a QuestionBank block.

Preview a template

Both /question-bank/{questionBank} and /question-bank/{questionBank}/items work with a template ID, so you can inspect its questions before duplicating it. The bank inside each returned item is reduced in the same way as above.

Start from a template

/question-bank/{questionBank}/duplicate copies a template and all of its items into your own project:

{
    "title": "General knowledge (our version)",
    "project": 123
}

The copy is a normal bank: it is not a template, you own it, and you can add items, tag it and publish it like any other.

Note: All writing endpoints – renaming, notes, items, tags, publishing, deleting – only work on banks you own. Duplicating is the only way to make a template's questions yours.