/v2/contracts/contract-by-id
通过合约ID查找合约数据。 此端点是实验性/alpha 版本,因此不保证向后兼容性。 该端点不得用于查找通过参与方复制进入参与者的合同 或维修服务。
开放API
开放API:3.0.3
信息:
标题:JSON Ledger API HTTP 端点
版本:3.5.0-SNAPSHOT
描述:>-
此规范版本修复了某些 API 不一致的地方
规范中标记为必填的字段实际上是可选的。
如果您使用基于此文件的代码生成工具,您可能需要调整
现有的应用程序代码来处理这些字段作为可选。
如果您不想更改客户端代码,请继续使用 OpenAPI
最新 Canton 3.4 补丁版本的规范。
MINIMUM_CANTON_VERSION=3.5.0
服务器:[]
安全:[]
路径:
/v2/contracts/contract-by-id:
帖子:
摘要:/v2/contracts/contract-by-id
描述:>-
通过合约ID查找合约数据。
该端点是实验性的/alpha,因此没有后退
兼容性有保证。
该端点不得用于查找进入的合同
通过参与方复制参与
或维修服务。
操作 ID:postV2ContractsContract-by-id
请求正文:
内容:
应用程序/json:
架构:
$ref: '#/components/schemas/GetContractRequest'
必填:真实
回应:
“200”:
描述:''
内容:
应用程序/json:
架构:
$ref: '#/components/schemas/GetContractResponse'
“400”:
描述:'无效值,无效值:正文'
内容:
文本/纯文本:
架构:
类型:字符串
默认:
描述:''
内容:
应用程序/json:
架构:
$ref: '#/components/schemas/JsCantonError'
安全:
- httpAuth: []
- apiKeyAuth: []
组件:
模式:
获取合同请求:
标题:获取合同请求
类型:对象
需要:
- 合约ID
属性:
合约编号:
描述:|-
合同的 ID。
必须是有效的 LedgerString(如``value.proto``中所述)。
必填
类型:字符串
查询方:
描述:>-
查询方名单
所引用合同的利益相关者必须拥有
与任何这些方有交集
返回结果。如果没有指定 querying_partys,则所有可能的合约都可以
回来了。
可选:可以为空
类型:数组
项目:
类型:字符串
获取合同响应:
标题:获取合同响应
类型:对象
需要:
- 创建事件
属性:
创建事件:
$ref: '#/components/schemas/CreatedEvent'
描述:>-
representative_package_id将始终设置为合约
包 ID,因此该端点应该
不用于查找参与者通过以下方式输入的合同
方复制或维修服务。
见证人字段将仅包含 querying_partys,它们是
还有合同的利益相关者。
创建的事件的以下字段无法填充,因此
这些不应该被使用/解析:
- 偏移量
- 节点 ID
- 创建事件blob
- 界面视图
- acs_delta
必填
JsCanton错误:
标题: JsCantonError
类型:对象
需要:
- 代码
- 原因
- 上下文
- 错误类别
属性:
代码:
类型:字符串
原因:
类型:字符串
相关性ID:
类型:字符串
跟踪ID:
类型:字符串
上下文:
$ref: '#/components/schemas/Map_String'
资源:
类型:数组
项目:
$ref: '#/components/schemas/Tuple2_String_String'
错误类别:
类型:整数
格式:int32
grpc代码值:
类型:整数
格式:int32
重试信息:
类型:字符串
明确答案:
类型:布尔值
创建事件:
标题:创建事件
描述:>-
记录合同已创建,现在可以进行选择
对它进行了锻炼。
类型:对象
需要:
- 偏移量
- 节点ID
- 合约ID
- 模板ID
- 创建于
- 包名
- 代表PackageId
- acsDelta
- 创建参数
- 见证方
- 签署者
属性:
偏移量:
描述:>-
origin的偏移量,有上下文含义,请参见
包含 CreatedEvent 的消息中的描述。
偏移量由参与节点管理。
因此不能假设交易具有相同的偏移量
不同的参与节点。
它是一个有效的绝对偏移量(正整数)必填
类型:整数
格式:int64
节点ID:
描述:>-
该事件在原始交易中的位置或
重新分配。
起源具有上下文含义,请参阅描述
包含 CreatedEvent 的消息。
参与者之间的节点 ID 不一定相同,
因为这些可能会看到不同的预测/交易部分。
必须是有效的节点 ID(非负整数)
必填
类型:整数
格式:int32
合约编号:
描述:|-
创建的合约ID。
必须是有效的 LedgerString(如``value.proto``中所述)。
必填
类型:字符串
模板ID:
描述:|-
创建的合同模板。
标识符使用 package-id 引用格式。
必填
类型:字符串
合约密钥:
描述:>-
创建合约的密钥。
当且仅当``template_id``定义了一个合约时才会设置
关键。
可选
合约密钥哈希:
描述:>-
Contract_key 的哈希值。
当且仅当 ``template_id`` 定义了一个合约时才会设置
关键。
可选:可以为空
类型:字符串
创建参数:
描述:|-
用于创建合同的参数。
必填
创建事件Blob:
描述:>-
合约创建事件有效负载的不透明表示
转发
作为命令一部分公开的合同到 API 服务器
提交。
可选:可以为空
类型:字符串
界面视图:
描述:>-
事务过滤器中指定的接口视图。
包括每个接口的“`InterfaceView`”
一个 ``InterfaceFilter`` 与
- 本次活动‘`witness_parties`’的派对,
- 这是通过该事件的模板实现的,
- 并且设置了``include_interface_view``。
可选:可以为空
类型:数组
项目:
$ref: '#/components/schemas/JsInterfaceView'
见证方:
描述:>-
收到此事件通知的各方。当``CreatedEvent``
作为交易树或账本效应的一部分返回
交易,这将包括所有``TransactionFilter``中指定的各方是
事件目击者
(合同的利益相关者和所有被告知者
祖先
该参与者知道的创建操作的一部分)。
如果作为 ACS 增量交易的一部分,这些将
仅限于``TransactionFilter``中指定的所有各方
那个
是合同的利益相关者(即签字人或
观察员)。
如果``CreatedEvent``作为AssignedEvent的一部分返回,
ActiveContract 或 IncompleteUnsigned (因此该事件与
转让或取消转让):这将包括各方
``TransactionFilter`` 是合约的利益相关者。
阅读行为会创建对未托管方可见的事件
为 Ledger API 提供服务的参与者节点上未定义。
具体来说,
既不保证参与节点将提供服务
他们所有的
在 ACS 流上创建事件,也不保证
匹配存档
为此类创建事件传递事件。
对于大多数客户端来说这不是问题,因为他们只读取事件
聚会
托管在参与者节点上。如果您需要阅读事件
对于可能无法始终在参与者上举办的聚会
节点,
通过设置订阅该方的“`TopologyEvent`”
相应的
``UpdateFormat``。 使用这些事件,查询 ACS 的偏移量
哪里的
party 托管在参与者节点上,并忽略创建事件
偏移量
其中聚会不托管在参与者节点上。
必填:必须非空
类型:数组
项目:
类型:字符串
签署者:
描述:|-
本合同的签署人按照模板指定。
必填:必须非空
类型:数组
项目:
类型:字符串
观察员:
描述:>-
本合同明确指定的观察员
模板或隐式作为选择控制器。
该字段从不包含签署方。
可选:可以为空
类型:数组
项目:
类型:字符串
创建于:
描述:|-
创建合约的交易的账本有效时间。必填
类型:字符串
包名:
描述:|-
创建的合约的包名。
必填
类型:字符串
代表PackageId:
描述:>-
参与者包存储中存在的包 ID
对合约的参数进行类型检查。
这可能与用于创建的模板的 package-id 不同
合同。
对于 Canton 3.4 之前创建的合约,该字段匹配
合约的创建包id。
注意:实验性的,服务器内部概念,不适用于客户端
消费。如有更改,恕不另行通知。
必填
类型:字符串
acsDelta:
描述:>-
此事件是否是相应 ACS_DELTA 形状的一部分
流,
因此,在跟踪合同活跃度时应考虑
客户端。
必填
类型:布尔值
地图字符串:
标题:Map_String
类型:对象
附加属性:
类型:字符串
Tuple2_String_String:
标题:Tuple2_String_String
类型:数组
最大物品数:2
最少项目:2
项目:
类型:字符串
JsInterfaceView:
标题:JsInterfaceView
描述:接口过滤器匹配的创建事件的视图。
类型:对象
需要:
- 接口ID
- 查看状态
属性:
接口ID:
描述:|-
匹配事件实现的接口。
标识符使用 package-id 引用格式。
必填
类型:字符串
查看状态:
$ref: '#/components/schemas/JsStatus'
描述:>-
视图计算是否成功,如果没有,
错误的原因。使用相同的规则报告错误
错误代码和消息作为 API 返回的错误
请求。
必填
查看值:
描述:|-
该事件的接口视图方法的值。
设置是否在``InterfaceFilter``中请求,可以是
计算成功。
可选
实现包 ID:
描述:>-
定义用于计算的接口实现的包
的观点。
可能与用于创建的包不同
合同本身,
因为合同参数可以使用升级或降级
智能合约升级作为计算界面视图的一部分。
如果视图计算成功则填充,否则为空。
可选
类型:字符串
Js状态:
标题:JsStatus
类型:对象
需要:
- 代码
- 消息
属性:
代码:
类型:整数
格式:int32
留言:
类型:字符串
详细信息:
类型:数组
项目:
$ref: '#/components/schemas/ProtoAny'
原型:
标题:ProtoAny
类型:对象
需要:
- 类型 URL
- 价值
- 未知字段
属性:
类型网址:
类型:字符串
值:
类型:字符串
未知字段:
$ref: '#/components/schemas/UnknownFieldSet'
值解码:
类型:字符串
未知字段集:
标题:未知字段集
类型:对象
需要:
- 字段
属性:
字段:
$ref: '#/components/schemas/Map_Int_Field'
地图内部字段:
标题:Map_Int_Field
类型:对象
附加属性:
$ref: '#/components/schemas/Field'
领域:
标题: 田野
类型:对象
属性:
变体:
类型:数组
项目:
类型:整数
格式:int64
固定64:
类型:数组
项目:
类型:整数
格式:int64
固定32:
类型:数组
项目:
类型:整数
格式:int32
长度分隔:
类型:数组
项目:
类型:字符串
安全方案:
http验证:
类型:http
描述:Ledger API 标准 JWT 令牌
方案:承载
apiKeyAuth:
类型:apiKey
描述:Ledger API 标准 JWT 令牌(websocket)
名称:Sec-WebSocket-协议
在:标题
本文由 CC Privacy Club 根据 Canton Network 官方文档(CC-BY-4.0)整理翻译,仅供学习;实现细节以官方最新版本为准。