File: WebAPI/metadata_admin_2.proto
Publish a new contract or publish changes of an existing contract. Modification is incremental - only specified fields are modified, if the field is not specified then it is not touched. It may produce update for symbol_browsing_2.SymbolListRequest subscription. Some fields cannot be modified.
Prerequisites: client must have permission to manage contracts for contributors.
Limits: The limits are shared with UnpublishContract request
1. The request rate is 100 requests per 100 seconds by default if PublishContract.preview = false.
2. The request rate is 500 requests per 100 seconds by default if PublishContract.preview = true.
Response: PublishContractResult.
Type: string
Description: Security identifier for which contract is created. Unmodifiable.
Source: metadata_2.SecurityMetadata.security_id.
Type: sint64
Description: Contract trading date for derivatives (local exchange date in time format, use date part only).
Type: uint32
Description: Source contract identifier for double-quoting.
Type: sint64
Description: Contract first notice date (local exchange date in time format, use date part only).
Type: sint64
Description: Contract last delivery date (local exchange date in time format, use date part only).
Type: ContributorParameters
Description: Contract custom parameters. Client includes all initial values.
Type: string
Description: Contract description.
Type: bool
Description: Publish a contract in preview mode. The
contract will be visible only to the current user, until it is published with
the flag set to false or
omitted. Preview contracts do not persist between
user sessions.
Type: uint32
Description: ID of the previously published contract. Used for overriding contract parameters or final publishing. Take the value from contract_id of previous PublishContractResult.
Note: Specifying this parameter leads to modification of the contract with previous_contract_id. If the contract changes significantly (e.g., preview flag changes), previous_contract_id may become invalid: notification about the contract deletion will be sent if there is a subscription on the contract, and a new contract ID is returned in the response. In this case, sending multiple requests with the same previous_contract_id before getting a response will lead to the rejection of subsequent modifications. It is recommended to send modifications one by one using the contract ID from the response of the last modification.
Source: metadata_2.ContractMetadata.contract_id.
Type: uint32
Description: Identifier of the currency contract used for price conversion. Contract should belong to security specified in SecurityMetadata.currency_rate_instrument_group_name. Leave this field empty if SecurityMetadata.currency_rate_instrument_group_name is not set.
Source: metadata_2.ContractMetadata.contract_id.
Type: uint32
Description: Identifier of the currency contract used for hedging conversion. Contract should belong to security specified in SecurityMetadata.currency_hedge_instrument_group_name. Leave this field empty if SecurityMetadata.currency_hedge_instrument_group_name is not set.
Source: metadata_2.ContractMetadata.contract_id.
Type: uint32
Description: Identifier of the contract used for hedging. Can be different from source contract only if ‘HedgeFirst’ contributor parameter is explicitly set to false. If not set, it is assumed to be the same as source contract.
Source: metadata_2.ContractMetadata.contract_id.
Type: uint32
Description: Identifiers of fields being cleared. E.g. To clear first_notice_date field, put 5 in this collection.