en:authors_main:admin_api:admin_api_json

JSON Structure

Game

Globally, the game JSON consists of several large sections:

{
  "game": {} /* Game settings, such as start time and passage sequence */,
  "gbonuses": [] /* List of global bonuses in the game */,
  "lines": [] /* List of passage lines */,
  "tasks": [] /* List of game levels */,
}
{
    "game": {
        "type": "1", 
        /* Winner is determined by:
        "0": Points
        "1": Time
        */
        "stat": "5",
        /* Statistics:
        "0": Open
        "1": Open without bonuses
        "2": Closed during the game
        "4": Summary only
        "5": Closed always
        "6": Completed tasks
        */
        "team_limit": 0,
        /* Limit of players in the team */
        "name": "#New Unnamed Game",
        /* Name */
        "description": "",
        /* Description */
        "finish_text": "",
        /* Finish text */
        "html_header": "",
        /* Common HTML header */
        "image": "",
        /* Image */
        "start_time": "2021-10-17 12:00:00",
        /* Start */
        "end_time": "2022-10-17 12:00:00",
        /* Finish */
        "status": "3",
        /* Roster entry:
        "0": Automatically all
        "1": Automatically paid
        "2": Automatically all as testers
        "3": Manually
        */
        "start_type": "0",
        /* Game start:
        "0": Simultaneous
        "1": Individual start time
        */
        "price": 0,
        /* Price */
        "currency": "UAH",
        /* Currency of price:
       "UAH"
       "USD"
       "EUR"
       "RUB"
        */
        "kind": "0",
        /* Game type:
        "0": other
        "1": green
        "2": yellow
        "3": red
        "4": virtual
        */
        "scenario": "0",
        /* Scenario:
        "0": Closed
        "1": Open in archive
        "2": Open in archive, but only to those who played
        "3": Open to teams that finished the game
        */
        "answer_prefix": "ff",
        /* Code prefix */
        "default_line": ""
        /* Default line (name) */
    }
}
{
    "gbonuses": [
        /* List of global bonuses in the game. Multiple items can be separated by commas */
        {
            "code": "cc, dd",
            /* Answers */
            "time": 0,
            /* Bonus time for completion */
            "description": "",
            /* Task details */
            "hint": "",
            /* Text after solution */
            "first_task_n": 1,
            /* Available from task */
            "last_task_n": 2
            /* Available up to task */
        }
    ]
}
{
    "lines": [
        /* List of lines in the game. Multiple items can be separated by commas */
        {
            "title": "Line 2",
            /* Line name */
            "task_order": "1,2,3+4,5-7"
            /* Order */
        }
    ]
}

A level in the game also has a composite structure:

{
            "task": {}, /* Level settings, such as name or auto-transition time */
            "codes": [], /* List of sectors or codes in the level. Multiple items can be separated by commas */
            "bonuses": [], /* List of bonuses in the level */
            "hints": [], /* List of hints in the level */
}
{
            "task": {
                "number": 1,
                /* № */
                "max_time": 3600,
                /* Auto-transition (seconds) */
                "score": 10,
                /* Penalty/Score for no auto-transition */
                "time_k": 1.0,
                /* Time multiplier x */
                "delay": 0,
                /* Delay (for storm levels) */
                "working_name": "Title",
                /* Name in the game */
                "name": "In statistics",
                /* Name in statistics */
                "surrender_code": "GiveUp",
                /* Skip Code */
                "task": "Test",
                /* Task text */
                "script": "alert(1)",
                /* Task script */
                "answer": "Word in English",
                /* Answer format */
                "answers_limit": 10,
                /* Input limit */
                "answers_per_time": 60,
                /* per time interval */
                "answers_limit_penalty": 10,
                /* penalty for each extra try */
                "codes": 0,
                /* Codes needed for completion */
                "code_bonus_time": 0,
                /* Auto-transition reduction (seconds) */
                "code_bonus": 0,
                /* Bonus (in seconds) */
                "finish_confirmation": "1",
                /* Close task:
                "0": Forcefully
                "1": Reasonably
                 */
                "hidden_bonuses": "0",
                /* Bonuses: Display in task:
                "0": List format
                "1": Compact in one line
                 */
                "bonuses_kind": "0"
                /* Bonuses: Open order:
                "0": Any
                "1": In order
                 */
            }
}
{
            "codes": [
                /* List of sectors or codes in the level. Multiple items can be separated by commas */
                {
                    "name": "Sector 1",
                    "code": "a, b"
                    /* Synonym codes separated by commas */
                },
                {
                    "name": "Sector 2",
                    "code": "c, d"
                    /* Synonym codes separated by commas */
                }
            ],
}
{
            "bonuses": [
                /* List of bonuses in the level. Multiple items can be separated by commas */
                {
                    "number": 1,
                    /* Sequence number of the bonus */
                    "code": "c, d",
                    /* Answers */
                    "time": 0,
                    /* Bonus time for completion */
                    "description": "",
                    /* Bonus task description */
                    "hint": "",
                    /* Text after solution */
                    "delay": 0,
                    /* Delay of bonus appearance */
                    "duration": 0,
                    /* Duration */
                    "duration_k": 0
                    /* Multiplier for remaining time */
                }
            ]
}
{
            "hints": [
                /* List of hints in the level. Multiple items can be separated by commas */
                {
                    "number": 1,
                    /* Sequence number of the hint */
                    "info": "",
                    /* Hint description */
                    "hint": "",
                    /* Hint text */
                    "delay": 0,
                    /* Time delay */
                    "penalty": 0
                    /* Penalty cost */
                }
            ]
}

Example of a Whole Game

Description of fields is here.

Example without descriptions:

game_example.json
{
    "game": {
        "type": "1",
        "stat": "5",
        "team_limit": 0,
        "name": "#New Unnamed Game",
        "description": "",
        "finish_text": "",
        "html_header": "",
        "image": "",
        "start_time": "2021-10-17 12:00:00",
        "end_time": "2022-10-17 12:00:00",
        "status": "3",
        "start_type": "0",
        "price": 0,
        "currency": "UAH",
        "kind": "0",
        "scenario": "0",
        "answer_prefix": "ff",
        "default_line": ""
    },
    "tasks": [
        {
            "task": {
                "number": 1,
                "max_time": 3600,
                "score": 10,
                "time_k": 1.0,
                "delay": 0,
                "working_name": "Title",
                "name": "In statistics",
                "surrender_code": "GiveUp",
                "task": "Test",
                "script": "alert(1)",
                "answer": "Word in English",
                "answers_limit": 10,
                "answers_per_time": 60,
                "answers_limit_penalty": 10,
                "codes": 0,
                "code_bonus_time": 0,
                "code_bonus": 0,
                "finish_confirmation": "1",
                "hidden_bonuses": "0",
                "bonuses_kind": "0"
            },
            "codes": [
                {
                    "name": "Sector 1",
                    "code": "a, b"
                }
            ],
            "bonuses": [
                {
                    "number": 1,
                    "code": "c, d",
                    "time": 0,
                    "description": "",
                    "hint": "",
                    "delay": 0,
                    "duration": 0,
                    "duration_k": 0
                }
            ],
            "hints": [
                {
                    "number": 1,
                    "info": "",
                    "hint": "",
                    "delay": 0,
                    "penalty": 0
                }
            ]
        }
    ],
    "gbonuses": [
        {
            "code": "cc, dd",
            "time": 0,
            "description": "",
            "hint": "",
            "first_task_n": 1,
            "last_task_n": 2
        }
    ],
    "lines": [
        {
            "title": "Line 2",
            "task_order": "1,2,3+4,5-7"
        }
    ]
}

Example of a Whole Level

Description of fields is here.

Example without descriptions below:

level_example.json
[
        {
            "task": {
                "number": 1,
                "max_time": 3600,
                "score": 10,
                "time_k": 1.0,
                "delay": 0,
                "working_name": "Title",
                "name": "In statistics",
                "surrender_code": "GiveUp",
                "task": "Test",
                "script": "alert(1)",
                "answer": "Word in English",
                "answers_limit": 10,
                "answers_per_time": 60,
                "answers_limit_penalty": 10,
                "codes": 0,
                "code_bonus_time": 0,
                "code_bonus": 0,
                "finish_confirmation": "1",
                "hidden_bonuses": "0",
                "bonuses_kind": "0"
            },
            "codes": [
                {
                    "name": "Sector 1",
                    "code": "a, b"
                }
            ],
            "bonuses": [
                {
                    "number": 1,
                    "code": "c, d",
                    "time": 0,
                    "description": "",
                    "hint": "",
                    "delay": 0,
                    "duration": 0,
                    "duration_k": 0
                }
            ],
            "hints": [
                {
                    "number": 1,
                    "info": "",
                    "hint": "",
                    "delay": 0,
                    "penalty": 0
                }
            ]
        }
]
  • en/authors_main/admin_api/admin_api_json.txt
  • Last modified: 2026/06/11 22:34
  • (external edit)