{
    "schemes": [],
    "swagger": "2.0",
    "info": {
        "description": "TON Emulate API provides an endpoint to emulate transactions and traces before committing them to the blockchain.",
        "title": "TON Emulate API",
        "contact": {},
        "version": "0.0.1"
    },
    "host": "",
    "basePath": "/api/emulate/",
    "paths": {
        "/v1/emulateTonConnect": {
            "post": {
                "description": "Emulate trace by composing external message from internal messages for TON Connect.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "emulate"
                ],
                "summary": "Emulate trace for TON Connect format",
                "parameters": [
                    {
                        "description": "TON Connect Emulate Request",
                        "name": "request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/main.TonConnectEmulateRequest"
                        }
                    },
                    {
                        "type": "string",
                        "description": "Supported actions version",
                        "name": "X-Actions-Version",
                        "in": "header"
                    }
                ],
                "responses": {}
            }
        },
        "/v1/emulateTrace": {
            "post": {
                "description": "Emulate trace by external message.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "emulate"
                ],
                "summary": "Emulate trace by external message",
                "parameters": [
                    {
                        "description": "External Message Request",
                        "name": "request",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/main.EmulateRequest"
                        }
                    },
                    {
                        "type": "string",
                        "description": "Supported actions version",
                        "name": "X-Actions-Version",
                        "in": "header"
                    }
                ],
                "responses": {}
            }
        }
    },
    "definitions": {
        "main.EmulateRequest": {
            "type": "object",
            "properties": {
                "boc": {
                    "type": "string",
                    "example": "te6ccgEBAQEAAgAAAA=="
                },
                "ignore_chksig": {
                    "type": "boolean",
                    "example": false
                },
                "include_code_data": {
                    "type": "boolean",
                    "example": false
                },
                "include_address_book": {
                    "type": "boolean",
                    "example": false
                },
                "include_metadata": {
                    "type": "boolean",
                    "example": false
                },
                "with_actions": {
                    "type": "boolean",
                    "example": false
                },
                "mc_block_seqno": {
                    "type": "integer",
                    "example": null,
                    "nullable": true
                }
            }
        },
        "main.TonConnectEmulateRequest": {
            "type": "object",
            "properties": {
                "from": {
                    "type": "string",
                    "example": "EQB3..."
                },
                "messages": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "address": {
                                "type": "string",
                                "example": "EQB3..."
                            },
                            "amount": {
                                "type": "string",
                                "example": "1000000000"
                            },
                            "payload": {
                                "type": "string",
                                "example": "te6ccgEBAQEAAgAAAA=="
                            },
                            "stateInit": {
                                "type": "string",
                                "example": null
                            }
                        }
                    }
                },
                "valid_until": {
                    "type": "integer",
                    "example": null,
                    "nullable": true
                },
                "include_code_data": {
                    "type": "boolean",
                    "example": false
                },
                "include_address_book": {
                    "type": "boolean",
                    "example": false
                },
                "include_metadata": {
                    "type": "boolean",
                    "example": false
                },
                "with_actions": {
                    "type": "boolean",
                    "example": false
                },
                "mc_block_seqno": {
                    "type": "integer",
                    "example": null,
                    "nullable": true
                }
            }
        }
    }
}