Complete documentation page mirrored and translated for learning. Attribution is shown at the bottom of each article.

阅读中文版

referencejson-api-referencev2interactive-submissionpreferred-package-version

/v2/interactive-submission/preferred-package-version

Documentation Index

Fetch the complete documentation index at: https://docs.canton.network/llms.txt Use this file to discover all available pages before exploring further.

/v2/interactive-submission/preferred-package-version

A preferred package is the highest-versioned package for a provided package-name that is vetted by all the participants hosting the provided parties.

Ledger API clients should use this endpoint for constructing command submissions that are compatible with the provided preferred package, by making informed decisions on:

  • which are the compatible packages that can be used to create contracts
  • which contract or exercise choice argument version can be used in the command
  • which choices can be executed on a template or interface of a contract

Can be accessed by any Ledger API client with a valid token when Ledger API authorization is enabled.

Provided for backwards compatibility, it will be removed in the Canton version 3.4.0

OpenAPI

openapi: 3.0.3
info:
  title: JSON Ledger API HTTP endpoints
  version: 3.5.0-SNAPSHOT
  description: >-
    This specification version fixes the API inconsistencies where certain
    fields marked as required in the spec are in fact optional.

    If you use code generation tool based on this file, you might need to adjust
    the existing application code to handle those fields as optional.

    If you do not want to change your client code, continue using the OpenAPI
    specification for the latest Canton 3.4 patch release.

    MINIMUM_CANTON_VERSION=3.5.0
servers: []
security: []
paths:
  /v2/interactive-submission/preferred-package-version:
    get:
      summary: /v2/interactive-submission/preferred-package-version
      description: >-
        A preferred package is the highest-versioned package for a provided
        package-name

        that is vetted by all the participants hosting the provided parties.


        Ledger API clients should use this endpoint for constructing command
        submissions

        that are compatible with the provided preferred package, by making
        informed decisions on:

        - which are the compatible packages that can be used to create contracts

        - which contract or exercise choice argument version can be used in the
        command

        - which choices can be executed on a template or interface of a contract


        Can be accessed by any Ledger API client with a valid token when Ledger
        API authorization is enabled.


        Provided for backwards compatibility, it will be removed in the Canton
        version 3.4.0
      operationId: getV2Interactive-submissionPreferred-package-version
      parameters:
        - name: parties
          in: query
          required: false
          schema:
            type: array
            items:
              type: string
        - name: package-name
          in: query
          required: true
          schema:
            type: string
        - name: vetting_valid_at
          in: query
          required: false
          schema:
            type: string
            format: date-time
        - name: synchronizer-id
          in: query
          required: false
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetPreferredPackageVersionResponse'
        '400':
          description: >-
            Invalid value, Invalid value for: query parameter parties, Invalid
            value for: query parameter package-name, Invalid value for: query
            parameter vetting_valid_at, Invalid value for: query parameter
            synchronizer-id
          content:
            text/plain:
              schema:
                type: string
        default:
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsCantonError'
      security:
        - httpAuth: []
        - apiKeyAuth: []
components:
  schemas:
    GetPreferredPackageVersionResponse:
      title: GetPreferredPackageVersionResponse
      type: object
      properties:
        packagePreference:
          $ref: '#/components/schemas/PackagePreference'
          description: |-
            Not populated when no preferred package is found

            Optional
    JsCantonError:
      title: JsCantonError
      type: object
      required:
        - code
        - cause
        - context
        - errorCategory
      properties:
        code:
          type: string
        cause:
          type: string
        correlationId:
          type: string
        traceId:
          type: string
        context:
          $ref: '#/components/schemas/Map_String'
        resources:
          type: array
          items:
            $ref: '#/components/schemas/Tuple2_String_String'
        errorCategory:
          type: integer
          format: int32
        grpcCodeValue:
          type: integer
          format: int32
        retryInfo:
          type: string
        definiteAnswer:
          type: boolean
    PackagePreference:
      title: PackagePreference
      type: object
      required:
        - synchronizerId
        - packageReference
      properties:
        packageReference:
          $ref: '#/components/schemas/PackageReference'
          description: |-
            The package reference of the preferred package.

            Required
        synchronizerId:
          description: >-
            The synchronizer for which the preferred package was computed.

            If the synchronizer_id was specified in the request, then it matches
            the request synchronizer_id.


            Required
          type: string
    Map_String:
      title: Map_String
      type: object
      additionalProperties:
        type: string
    Tuple2_String_String:
      title: Tuple2_String_String
      type: array
      maxItems: 2
      minItems: 2
      items:
        type: string
    PackageReference:
      title: PackageReference
      type: object
      required:
        - packageId
        - packageName
        - packageVersion
      properties:
        packageId:
          description: Required
          type: string
        packageName:
          description: Required
          type: string
        packageVersion:
          description: Required
          type: string
  securitySchemes:
    httpAuth:
      type: http
      description: Ledger API standard JWT token
      scheme: bearer
    apiKeyAuth:
      type: apiKey
      description: Ledger API standard JWT token (websocket)
      name: Sec-WebSocket-Protocol
      in: header

Mirrored from Canton Network official documentation (CC-BY-4.0) by CC Privacy Club for learning purposes.