{ "paths": { "/api/v1/server/info": { "get": { "tags": [ "ServerInfo" ], "summary": "Get server info", "description": "Information about the server, chains and sync states", "operationId": "ServerInfo_GetServerInfo", "responses": { "200": { "description": "Server information", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApplicationServerInfoData" } } } }, "401": { "description": "Missing authorization", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } }, "default": { "description": "Unexpected error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProblemDetails" } } } } }, "security": [ { "API_Key": [], "Basic": [] } ] } }, "/api/v1/server/roles": { "get": { "tags": [ "ServerInfo" ], "summary": "Get store's roles", "description": "View information about the store's roles at the server's scope", "operationId": "Server_GetStoreRoles", "responses": { "200": { "description": "The user roles available at the server's scope", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RoleData" } } } }, "403": { "description": "If you are authenticated but forbidden to get the store's roles" }, "404": { "description": "Store not found" } }, "security": [ { "API_Key": [ "btcpay.server.canmodifyserversettings" ], "Basic": [] } ] } } }, "components": { "schemas": { "ApplicationServerInfoData": { "type": "object", "properties": { "version": { "type": "string", "description": "BTCPay Server version" }, "onion": { "type": "string", "description": "The Tor hostname" }, "supportedPaymentMethods": { "type": "array", "description": "The payment methods this server supports", "items": { "type": "string" } }, "fullySynched": { "type": "boolean", "description": "True if the instance is fully synchronized, according to NBXplorer" }, "syncStatus": { "type": "array", "items": { "$ref": "#/components/schemas/ApplicationServerInfoSyncStatusData" } } } }, "ApplicationServerInfoNodeStatusData": { "type": "object", "nullable": true, "description": "Detailed sync status of the internal full node", "properties": { "headers": { "type": "integer", "description": "The height of the chain of header of the internal full node" }, "blocks": { "type": "integer", "description": "The height of the latest validated block of the internal full node" }, "verificationProgress": { "type": "number", "format": "double", "minimum": 0.0, "maximum": 1.0, "description": "The current synchronization progress" } } }, "ApplicationServerInfoSyncStatusData": { "type": "object", "description": "Detailed sync status", "properties": { "cryptoCode": { "type": "string", "description": "The CryptoCode of the crypto currency (eg. BTC)", "example": "BTC" }, "nodeInformation": { "$ref": "#/components/schemas/ApplicationServerInfoNodeStatusData" }, "chainHeight": { "type": "integer", "description": "The height of the chain of header of the internal indexer" }, "syncHeight": { "type": "number", "format": "integer", "nullable": true, "description": "The height of the latest indexed block of the internal indexer" }, "available": { "type": "boolean", "description": "True if the full node and the indexer are fully synchronized", "nullable": false } } } } }, "tags": [ { "name": "ServerInfo", "description": "Server Info operations" } ] }