{"openapi":"3.0.0","paths":{"/api/explorer/live-blocks":{"get":{"operationId":"ExplorerController_getLiveBlocks","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"network","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/explorer/network-status":{"get":{"operationId":"ExplorerController_getNetworkStatus","parameters":[{"name":"network","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/explorer/search":{"get":{"operationId":"ExplorerController_search","parameters":[{"name":"q","required":true,"in":"query","schema":{"type":"string"}},{"name":"network","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/explorer/tx/{hash}":{"get":{"operationId":"ExplorerController_getTx","parameters":[{"name":"hash","required":true,"in":"path","schema":{"type":"string"}},{"name":"network","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/explorer/block/{id}":{"get":{"operationId":"ExplorerController_getBlock","parameters":[{"name":"id","required":true,"in":"path","schema":{"type":"string"}},{"name":"network","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/explorer/address/{address}":{"get":{"operationId":"ExplorerController_getAddress","parameters":[{"name":"address","required":true,"in":"path","schema":{"type":"string"}},{"name":"limit","required":true,"in":"query","schema":{"type":"string"}},{"name":"scan","required":true,"in":"query","schema":{"type":"string"}},{"name":"network","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/explorer/verified-assets/recent":{"get":{"operationId":"ExplorerController_verifiedAssetsRecent","parameters":[{"name":"limit","required":true,"in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"tags":["Explorer"]}},"/api/devportal/auth/me":{"get":{"operationId":"DevPortalController_me","parameters":[],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Профиль текущего разработчика","tags":["DevPortal","Developer · Auth"]}},"/api/devportal/developers/{id}":{"get":{"operationId":"DevPortalController_getDeveloper","parameters":[{"name":"id","required":true,"in":"path","description":"ID разработчика (только свой)","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Профиль разработчика с кошельками и проектами","tags":["DevPortal","Developer · Auth"]}},"/api/devportal/projects":{"post":{"description":"Логическая группа контрактов и ключей.","operationId":"DevPortalController_createProject","parameters":[],"responses":{"201":{"description":""}},"summary":"Создать проект","tags":["DevPortal","Developer · Auth"]}},"/api/devportal/wallets/{address}/balance":{"get":{"operationId":"DevPortalController_balance","parameters":[{"name":"address","required":true,"in":"path","description":"Адрес 0x…","schema":{"type":"string"}},{"name":"network","required":false,"in":"query","schema":{"enum":["testnet","mainnet"],"type":"string"}}],"responses":{"200":{"description":""}},"summary":"Баланс адреса (нативный KSC)","tags":["DevPortal","Developer · Wallet & Faucet"]}},"/api/devportal/faucet/drip":{"post":{"description":"Только testnet. Лимит — 5 начислений в сутки, по 10 KSC.","operationId":"DevPortalController_drip","parameters":[],"responses":{"201":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Запросить тестовый газ (faucet)","tags":["DevPortal","Developer · Wallet & Faucet"]}},"/api/devportal/contracts/compile":{"post":{"description":"solc 0.8.20, EVM paris. Разрешён импорт только @openzeppelin/contracts.","operationId":"DevPortalController_compile","parameters":[],"responses":{"201":{"description":""}},"summary":"Скомпилировать Solidity","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/contracts/deploy":{"post":{"description":"Testnet — деплой сразу; mainnet — статус compiled до ручного одобрения.","operationId":"DevPortalController_deploy","parameters":[],"responses":{"201":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Скомпилировать и задеплоить контракт","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/contracts/{id}":{"get":{"operationId":"DevPortalController_getContract","parameters":[{"name":"id","required":true,"in":"path","description":"ID контракта","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"summary":"Получить запись контракта","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/developers/{id}/contracts":{"get":{"operationId":"DevPortalController_listContracts","parameters":[{"name":"id","required":true,"in":"path","description":"ID разработчика (только свой)","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Список контрактов разработчика","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/developers/{id}/analytics":{"get":{"operationId":"DevPortalController_getAnalytics","parameters":[{"name":"id","required":true,"in":"path","description":"ID разработчика (только свой)","schema":{"type":"string"}},{"name":"days","required":false,"in":"query","description":"Окно в днях, 1–90 (по умолчанию 14)","schema":{}}],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Аналитика использования","tags":["DevPortal","Developer · Analytics"]}},"/api/devportal/developers/{id}/wallet-history":{"get":{"operationId":"DevPortalController_walletHistory","parameters":[{"name":"id","required":true,"in":"path","description":"ID разработчика (только свой)","schema":{"type":"string"}},{"name":"network","required":false,"in":"query","schema":{"enum":["testnet","mainnet"],"type":"string"}}],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"История транзакций кошелька","tags":["DevPortal","Developer · Wallet & Faucet"]}},"/api/devportal/contracts/{id}/register-firefly":{"post":{"operationId":"DevPortalController_registerFireFly","parameters":[{"name":"id","required":true,"in":"path","description":"ID контракта","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"summary":"Зарегистрировать контракт в FireFly","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/contracts/{id}/swagger":{"get":{"operationId":"DevPortalController_swagger","parameters":[{"name":"id","required":true,"in":"path","description":"ID контракта","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"summary":"FireFly Swagger контракта","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/contracts/{id}/openapi.json":{"get":{"description":"Персональная спека gateway: по одному POST на каждый метод ABI (query/invoke).","operationId":"DevPortalController_openapi","parameters":[{"name":"id","required":true,"in":"path","description":"ID контракта","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"summary":"OpenAPI 3.0.3 спецификация контракта","tags":["DevPortal","Developer · Contracts"]}},"/api/devportal/developers/{id}/api-keys":{"post":{"description":"Возвращает ключ ksc_… один раз. Скоупы по умолчанию: read, write.","operationId":"DevPortalController_issueApiKey","parameters":[{"name":"id","required":true,"in":"path","description":"ID разработчика (только свой)","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Выпустить API-ключ","tags":["DevPortal","Developer · API Keys"]},"get":{"operationId":"DevPortalController_listApiKeys","parameters":[{"name":"id","required":true,"in":"path","description":"ID разработчика (только свой)","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Список API-ключей (без секрета)","tags":["DevPortal","Developer · API Keys"]}},"/api/devportal/api-keys/{keyId}":{"delete":{"operationId":"DevPortalController_revokeApiKey","parameters":[{"name":"keyId","required":true,"in":"path","description":"ID ключа","schema":{"type":"string"}}],"responses":{"200":{"description":""}},"security":[{"dev-jwt":[]}],"summary":"Отозвать API-ключ","tags":["DevPortal","Developer · API Keys"]}},"/api/devportal/contracts/{id}/query/{method}":{"post":{"description":"Требует API-ключ со скоупом read. Транзакция не создаётся, газ не тратится.","operationId":"DevPortalController_query","parameters":[{"name":"id","required":true,"in":"path","description":"ID контракта","schema":{"type":"string"}},{"name":"method","required":true,"in":"path","description":"Имя метода ABI","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"security":[{"api-key":[]}],"summary":"query — чтение метода контракта (eth_call)","tags":["DevPortal","Developer · Gateway"]}},"/api/devportal/contracts/{id}/invoke/{method}":{"post":{"description":"Требует API-ключ со скоупом write. Создаёт транзакцию через кастодиальный кошелёк.","operationId":"DevPortalController_invoke","parameters":[{"name":"id","required":true,"in":"path","description":"ID контракта","schema":{"type":"string"}},{"name":"method","required":true,"in":"path","description":"Имя метода ABI","schema":{"type":"string"}}],"responses":{"201":{"description":""}},"security":[{"api-key":[]}],"summary":"invoke — запись через контракт (транзакция)","tags":["DevPortal","Developer · Gateway"]}}},"info":{"title":"Kaz Smart Chain Developer API","description":"REST API Kaz Smart Chain — суверенной EVM-совместимой сети (Hyperledger Besu, QBFT).\n\n### Аутентификация\n- **dev-jwt** — JWT разработчика, выдаётся при входе по ЭЦП (`POST /api/devportal/auth/eds/login`). Заголовок `Authorization: Bearer <token>`. TTL 12 ч.\n- **api-key** — ключ вида `ksc_…` для вызова контрактов (Contract Gateway). Заголовок `x-api-key`.\n\n### Сети\nПараметр `network`: `testnet` (chainId 17991) или `mainnet` (chainId 1991).\n\nПолная документация: https://kazsmartchain.org/docs","version":"1.0.0","contact":{}},"tags":[{"name":"Developer · Auth","description":"Аутентификация разработчика по ЭЦП"},{"name":"Developer · Wallet & Faucet","description":"Кастодиальный кошелёк, баланс, faucet, история"},{"name":"Developer · Contracts","description":"Компиляция, деплой и управление контрактами"},{"name":"Developer · API Keys","description":"Выпуск и отзыв API-ключей"},{"name":"Developer · Gateway","description":"Вызов методов контракта (query/invoke) по API-ключу"},{"name":"Developer · Analytics","description":"Метрики использования"},{"name":"Explorer","description":"Публичные данные блоков, транзакций и адресов"}],"servers":[{"url":"https://kazsmartchain.org","description":"Production"},{"url":"https://dev.kazsmartchain.org","description":"Developer portal host"}],"components":{"securitySchemes":{"dev-jwt":{"scheme":"bearer","bearerFormat":"JWT","type":"http","description":"JWT разработчика (вход по ЭЦП)"},"api-key":{"type":"apiKey","in":"header","name":"x-api-key","description":"API-ключ ksc_… для Contract Gateway"}},"schemas":{}}}