UpdateVettedPackages
账本API
<span class="x2mdx-ref-breadcrumb-separator">›</span>
<a href="/zh/docs/canton/reference-grpc-ledger-api-reference-details">gRPC API</a>
<span class="x2mdx-ref-breadcrumb-separator">›</span>
<a href="/zh/docs/canton/reference-grpc-ledger-api-reference-com-daml-ledger-api-v2-admin">v2.admin</a>
<span class="x2mdx-ref-breadcrumb-separator">›</span>
<span>更新VettedPackages</span>
</div>
<div class="x2mdx-ref-hero">
<p class="x2mdx-ref-eyebrow">com.daml.ledger.api.v2.admin</p>
<h1 class="x2mdx-ref-title">更新VettedPackages</h1>
<div class="x2mdx-ref-badges">
<span class="x2mdx-ref-badge x2mdx-ref-badge--protocol">gRPC</span>
<span class="x2mdx-ref-badge x2mdx-ref-badge--linked">自 3.4.4 起</span>
</div>
</div>
<div class="x2mdx-ref-operation-bar">
<span class="x2mdx-ref-operation-method x2mdx-ref-operation-method--rpc">RPC</span>
<code>/com.daml.ledger.api.v2.admin.PackageManagementService/UpdateVettedPackages</code>
</div>
## 协议详细信息
<dl class="x2mdx-ref-meta-grid">
<div class="x2mdx-ref-meta-item">
<dt>协议</dt>
<dd>gRPC</dd>
</div>
<div class="x2mdx-ref-meta-item">
<dt>服务</dt>
<dd>包管理服务</dd>
</div>
<div class="x2mdx-ref-meta-item">
<dt>RPC</dt>
<dd>更新VettedPackages</dd>
</div>
<div class="x2mdx-ref-meta-item">
<dt>客户端流</dt>
<dd>否</dd>
</div>
<div class="x2mdx-ref-meta-item">
<dt>服务器流</dt>
<dd>否</dd>
</div>
</dl>
## 输入
<div class="x2mdx-ref-panel">
<div class="x2mdx-ref-panel-head">
<h3>更新VettedPackagesRequest</h3>
</div>
<dl class="x2mdx-ref-meta-grid">
<div class="x2mdx-ref-meta-item">
<dt>消息</dt>
<dd>com.daml.ledger.api.v2.admin.UpdateVettedPackagesRequest</dd>
</div>
<div class="x2mdx-ref-meta-item">
<dt>客户端流</dt>
<dd>否</dd>
</div>
</dl>
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">更改</code>
<span class="x2mdx-ref-type-badge">重复 VettedPackagesChange</span>
</div>
</div><div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">干\_run</code>
<span class="x2mdx-ref-type-badge">布尔</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">同步器\_id</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">预期\_topology\_serial</code>
<span class="x2mdx-ref-type-badge">先前的拓扑序列</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">更新\_vetted\_packages\_force\_flags</code>
<span class="x2mdx-ref-type-badge">重复UpdateVettedPackagesForceFlag</span>
</div>
</div>
</div>
</div>
## 输出
<div class="x2mdx-ref-panel">
<div class="x2mdx-ref-panel-head">
<h3>更新VettedPackagesResponse</h3>
</div>
<dl class="x2mdx-ref-meta-grid">
<div class="x2mdx-ref-meta-item">
<dt>消息</dt>
<dd>com.daml.ledger.api.v2.admin.UpdateVettedPackagesResponse</dd>
</div>
<div class="x2mdx-ref-meta-item">
<dt>服务器流</dt>
<dd>否</dd>
</div>
</dl>
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">过去\_vetted\_packages</code>
<span class="x2mdx-ref-type-badge">经过审查的包</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">新\_vetted\_packages</code>
<span class="x2mdx-ref-type-badge">经过审查的包</span>
</div>
</div>
</div>
</div>
## 生命周期变化
<div class="x2mdx-ref-change-list">
<div class="x2mdx-ref-change-item">
<span class="x2mdx-ref-change-version">3.4.4</span>
<span class="x2mdx-ref-change-detail">引入</span>
</div>
</div>
## 相关模式<手风琴组>
<手风琴标题=“com.daml.ledger.api.v2.admin.UpdateVettedPackagesRequest”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-updatevettedpackagesrequest">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">更改</code>
<span class="x2mdx-ref-type-badge">重复 VettedPackagesChange</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">干\_run</code>
<span class="x2mdx-ref-type-badge">布尔</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">同步器\_id</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">预期\_topology\_serial</code>
<span class="x2mdx-ref-type-badge">先前的拓扑序列</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">更新\_vetted\_packages\_force\_flags</code>
<span class="x2mdx-ref-type-badge">重复UpdateVettedPackagesForceFlag</span>
</div>
</div>
</div>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.admin.VettedPackagesChange”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-vettedpackageschange">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">兽医</code>
<span class="x2mdx-ref-type-badge">兽医</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">未经审查</code>
<span class="x2mdx-ref-type-badge">未经审查</span>
</div>
</div>
</div>
</div>
</手风琴><手风琴标题=“com.daml.ledger.api.v2.admin.VettedPackagesChange.Unvet”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-vettedpackageschange-unvet">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包</code>
<span class="x2mdx-ref-type-badge">重复的 VettedPackagesRef</span>
</div>
</div>
</div>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.admin.VettedPackagesRef”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-vettedpackagesref">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包\_id</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包\_name</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包\_版本</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
</div>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.admin.VettedPackagesChange.Vet”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-vettedpackageschange-vet">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包</code>
<span class="x2mdx-ref-type-badge">重复的 VettedPackagesRef</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">新\_valid\_from\_inclusive</code>
<span class="x2mdx-ref-type-badge">时间戳</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">新\_valid\_until\_exclusive</code>
<span class="x2mdx-ref-type-badge">时间戳</span>
</div>
</div>
</div>
</div>
</手风琴><手风琴标题=“com.daml.ledger.api.v2.PriorTopologySerial”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-priortopologyserial">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">优先级</code>
<span class="x2mdx-ref-type-badge">uint32</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">否\_prior</code>
<span class="x2mdx-ref-type-badge">空</span>
</div>
</div>
</div>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.admin.UpdateVettedPackagesForceFlag”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-updatevettedpackagesforceflag">
<ul class="x2mdx-ref-enum-list">
<li><code>更新\_VETTED\_PACKAGES\_FORCE\_FLAG\_UNSPECIFIED</code></li>
<li><code>更新\_VETTED\_PACKAGES\_FORCE\_FLAG\_ALLOW\_VET\_INCOMPATIBLE\_UPGRADES</code></li>
<li><code>更新\_VETTED\_PACKAGES\_FORCE\_FLAG\_ALLOW\_UNVETTED\_DEPENDENCIES</code></li>
</ul>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.admin.UpdateVettedPackagesResponse”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-admin-updatevettedpackagesresponse">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">过去\_vetted\_packages</code>
<span class="x2mdx-ref-type-badge">经过审查的包</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">新\_vetted\_packages</code>
<span class="x2mdx-ref-type-badge">经过审查的包</span>
</div>
</div>
</div>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.VettedPackages”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-vettedpackages">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包</code>
<span class="x2mdx-ref-type-badge">重复的 VettedPackage</span>
</div>
</div><div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">参与者\_id</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">同步器\_id</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">拓扑\_serial</code>
<span class="x2mdx-ref-type-badge">uint32</span>
</div>
</div>
</div>
</div>
</手风琴>
<手风琴标题=“com.daml.ledger.api.v2.VettedPackage”>
<div class="x2mdx-ref-schema" id="schema-com-daml-ledger-api-v2-vettedpackage">
<div class="x2mdx-ref-fields">
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包\_id</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">有效\_from\_inclusive</code>
<span class="x2mdx-ref-type-badge">时间戳</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">有效\_until\_exclusive</code>
<span class="x2mdx-ref-type-badge">时间戳</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包\_name</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
<div class="x2mdx-ref-field-row">
<div class="x2mdx-ref-field-main">
<code class="x2mdx-ref-field-name">包\_版本</code>
<span class="x2mdx-ref-type-badge">字符串</span>
</div>
</div>
</div>
</div>
</手风琴>
</手风琴组>
grpcurl
```bash grpcurl theme={"theme":{"light":"github-light","dark":"github-dark"}}
# Add -plaintext if the server is not using TLS.
grpcurl \
-d @ \
<HOST:PORT> \
com.daml.ledger.api.v2.admin.PackageManagementService/UpdateVettedPackages <<'EOF'
{
"changes": [
{
"vet": {
"packages": [
{
"packageId": "string",
"packageName": "string",
"packageVersion": "string"
}
],
"newValidFromInclusive": "string",
"newValidUntilExclusive": "string"
}
}
],
"dryRun": true,
"同步器Id": "string",
"expectedTopologySerial": {
"prior": 0
},
"updateVettedPackagesForceFlags": [
"UPDATE_VETTED_PACKAGES_FORCE_FLAG_UNSPECIFIED"
]
}
EOF
```
</div>
</div>
<div className="x2mdx-ref-rail-panel">
<div className="x2mdx-ref-rail-code x2mdx-ref-rail-code--response">
<div className="x2mdx-ref-rail-head">
<span className="x2mdx-ref-rail-heading">确定</span>
<span className="x2mdx-ref-response-label">application/json</span>
</div>
```json OK theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
"pastVettedPackages": {
"packages": [
{
"packageId": "string",
"validFromInclusive": "string",
"validUntilExclusive": "string",
"packageName": "string",
"packageVersion": "string"
}
],
"参与方Id": "string",
"同步器Id": "string",
"topologySerial": 0
},
"newVettedPackages": {
"packages": [
{
"packageId": "string",
"validFromInclusive": "string",
"validUntilExclusive": "string",
"packageName": "string",
"packageVersion": "string"
}
],
"参与方Id": "string",
"同步器Id": "string",
"topologySerial": 0
}
}
```
</div>
</div>
本文由 CC Privacy Club 根据 Canton Network 官方文档(CC-BY-4.0)整理翻译,仅供学习;实现细节以官方最新版本为准。