文档目录

SDK 工具集

官方提供两个 SDK 包,完全按照 API 规范自动处理请求签名并支持 Webhook 签名验证。其它编程语言可直接基于 openapi.yaml 契约自动生成客户端代码。

语言TypeScriptPython
包名@tenergy/sdk (npm)tenergy (PyPI)
安装命令npm install @tenergy/sdkpip install tenergy
Webhook 验签方法verifyWebhookSignature(secret, timestamp, rawBody, signature)verify_signature(secret, headers, body, tolerance_seconds=300)
示例项目tenergy-examples-tstenergy-examples-py
详细参考TypeScript SDK 文档本页说明

TypeScript

import { TenergyClient } from "@tenergy/sdk";
const client = new TenergyClient({ baseUrl: "https://api-nile.tenergy.me/v1", apiKey: process.env.TENERGY_KEY!, apiSecret: process.env.TENERGY_SECRET! });
const quote = await client.createQuote({ resource: "energy", amount: 65_000, tier: "1h", receiver });
const order = await client.createOrder({ quote_id: quote.id, client_order_id: `qs-${crypto.randomUUID()}` });
const settled = await client.waitForOrder(order.id, { timeoutMs: 120_000 });

Python

import os, uuid
from tenergy import Client
client = Client(api_key=os.environ["TENERGY_KEY"], api_secret=os.environ["TENERGY_SECRET"], base_url="https://api-nile.tenergy.me/v1")
quote = client.create_quote({"resource": "energy", "amount": 65000, "tier": "1h", "receiver": receiver})
order = client.create_order({"quote_id": quote["id"], "client_order_id": f"qs-{uuid.uuid4()}"})

您可以轮询 client.get_order(order["id"]) 直到状态变为 active,或者监听 order.confirmed Webhook 事件。

可直接运行的快速入门项目

示例项目完整覆盖了 价格查询 → 费用估算 → 密钥配置 → 充值 → 下单 → 最终确认 的完整生命周期,并在每一步打印日志;遇到任何 API 错误都会格式化输出对应的 slug 与 request id。

示例项目运行命令环境要求
examples/ts-quickstartnpm install && npx tsx quickstart.tsNode.js 18+;环境变量 TENERGY_KEY/TENERGY_SECRET,或者使用 Nile 临时生成的测试钱包自动注册
examples/py-quickstartpip install -e . && python quickstart.pyPython 3.9+;从 控制台 获取的 TENERGY_KEY/TENERGY_SECRET

注册成功后即可立即获取密钥;仅在实际下单时才需要账户余额。

    ↑ ↓ 切换 · Enter 打开 · Esc 关闭