Skip to main content
GET
/
platform
/
admin
/
smart_contract_implementations_deploy
/
{id}
/
deploy
/
{blockchainId}
/
transaction-data
Get deployment transaction data
curl --request GET \
  --url https://api.example.com/platform/admin/smart_contract_implementations_deploy/{id}/deploy/{blockchainId}/transaction-data
{
  "isSuccess": true,
  "isFailure": false,
  "error": null,
  "value": {
    "id": 42,
    "name": "Example"
  }
}

Description

Returns the complete transaction data required to deploy a smart contract implementation on a blockchain network. This includes compiled contract bytecode, constructor parameters, and transaction configuration. The data is used by wallet clients to broadcast deployment transactions.

Input

  • id (long, required) - The unique identifier of the smart contract implementation to deploy.
  • blockchainId (long, required) - Target blockchain network identifier (1 for Ethereum, 137 for Polygon, etc.).
  • ownerWalletTenantId (long, required) - Identifier of the wallet tenant that will own the deployed contract.

Output

Returns a TransactionDataModel containing:
  • data (string) - Hexadecimal-encoded transaction data including bytecode and constructor parameters (0x…).
  • to (string) - Deployment target address (null for contract creation).
  • value (string) - Amount of native currency to send with deployment (typically “0x0”).
  • gasLimit (string) - Recommended gas limit for the transaction (hexadecimal).
  • gasPrice (string) - Current gas price on the network (hexadecimal).
  • nonce (string) - Transaction nonce for the owner wallet (hexadecimal).
  • chainId (string) - Blockchain network chain ID (hexadecimal).

Examples

Request
GET /api/platform/smart-contract-implementations/1/deploys/137/transaction-data?ownerWalletTenantId=2048
Authorization: Bearer {token}
Response (200 OK)
{
  "data": {
    "data": "0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610150806100606000396000f3fe",
    "to": null,
    "value": "0x0",
    "gasLimit": "0x186a0",
    "gasPrice": "0x3b9aca00",
    "nonce": "0x5",
    "chainId": "0x89"
  }
}

Errors

  • 400 Bad Request: Invalid parameters or owner wallet has insufficient balance for gas fees.
  • 401 Unauthorized: Missing or invalid authentication token.
  • 403 Forbidden: User lacks platform administrator privileges.
  • 404 Not Found: Smart contract implementation, blockchain, or wallet tenant not found.
  • 500 Internal Server Error: Bytecode compilation failed or unexpected system error.

Notes

Requires platform administrator privileges. The transaction data must be signed by the owner wallet before broadcasting to the blockchain. The bytecode includes both the contract code and constructor logic. Gas limit is estimated based on contract complexity. Ensure the owner wallet has sufficient native currency balance to cover gas costs.

Path Parameters

id
integer<int64>
required

Unique identifier of the smart contract implementation to deploy.

blockchainId
integer<int64>
required

Target blockchain network identifier (e.g., 1 for Ethereum, 137 for Polygon).

Query Parameters

ownerWalletTenantId
integer<int64>

Wallet tenant identifier that will own the deployed contract.

api-version
string | null

Response

Transaction data retrieved successfully.

Wrapper for API operation results containing success status, error information, and return value.

isSuccess
boolean

True if the operation completed successfully, false otherwise.

Example:

true

isFailure
boolean

True if the operation failed, false otherwise.

Example:

false

error
object

Error information returned when the operation fails.

Example:
{
"code": "ValidationError",
"message": "The request parameters failed validation.",
"info": [
"The Name field is required.",
"The Id field must be greater than 0."
]
}
value
object

The result value returned when the operation is successful.