Defender SDK和API - OpenZeppelin 文档

本文档介绍了OpenZeppelin Defender SDK和API,它是一个允许开发者使用Javascript/Typescript与Defender进行交互的节点包。文章描述了SDK的安装方法,以及如何使用API密钥(包括Relayer API Keys和Admin API Keys)对请求进行身份验证,并提供了代码示例。

Defender SDK 和 API

Defender SDK (原 defender-client 包) 是一个 node 包,允许开发者使用 Javascript/Typescript 以编程方式与 Defender 交互。

有关更多详细信息,请参见 sdk 仓库SDK 和 API 文档

安装

你可以使用 NPM 或任何你喜欢的包管理器安装整个包

npm install @openzeppelin/defender-sdk

或者你可以安装单个子包

npm install @openzeppelin/defender-sdk-deploy-client
有关设置、示例和用法的更多信息,请访问 Github 中的 Defender SDK README 文件。

API 密钥

为了使用 SDK 或 API 操作你的 Defender 帐户,Defender 需要在仪表板中生成的 API 密钥和密钥以验证请求。

创建 API 密钥时,你还可以指定以天、小时和分钟为单位的过期时间。

Defender 中的 API 密钥过期配置

Defender 会在 API 密钥过期前 3 天过期时 发出通知。

密钥过期后,发送到 Defender API 的任何请求都会抛出 API Key is either expired or invalid 错误。

Relayer API 密钥

Relayer API 密钥在 Relayer 详细信息页面中生成,专门用于管理该 Relayer 的签名者操作,例如发送或查询交易、获取 nonce 或签名数据。

const creds = {
  relayerApiKey: <RELAYER_API_KEY>,
  relayerApiSecret: <RELAYER_API_SECRET>,
};
const client = new Defender(creds);

const txResponse = await client.relaySigner.sendTransaction({
  to: '0x179810822f56b0e79469189741a3fa5f2f9a7631',
  value: 1,
  speed: 'fast',
  gasLimit: '21000',
});
使用 relayerApiKeyrelayerApiSecret 进行身份验证时,只有 client.relaySigner 包可用。

Admin API 密钥

Admin API 密钥在 Manage → API Keys 中生成,用于操作 Defender 中的所有其他资源,包括 relayer 的 CRUD 操作。

const creds = {
  apiKey: <API_KEY>,
  apiSecret: <API_SECRET>,
};
const client = new Defender(creds);

const proposals = await client.proposal.list({
  limit: 10,
  next: undefined,
});

← 合约向导插件

集成 →

  • 原文链接: docs.openzeppelin.com/de...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
OpenZeppelin
OpenZeppelin
江湖只有他的大名,没有他的介绍。