Enum options:
ACTIVITY_TYPE_ETH_SEND_TRANSACTIONTimestamp (in milliseconds) of the request, used to verify liveness of user requests.
Unique identifier for a given Organization.
The parameters object containing the specific intent data for this activity.
Show details
Show details
The activity object containing type, intent, and result
Show activity details
Show activity details
curl --request POST \
--url https://api.turnkey.com/public/v1/submit/eth_send_transaction \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header "X-Stamp: <string> (see Authorizations)" \
--data '{
"type": "ACTIVITY_TYPE_ETH_SEND_TRANSACTION",
"timestampMs": "<string> (e.g. 1746736509954)",
"organizationId": "<string> (Your Organization ID)",
"parameters": {
"from": "<string>",
"sponsor": "<boolean>",
"caip2": "<eip155:1>",
"to": "<string>",
"value": "<string>",
"data": "<string>",
"nonce": "<string>",
"gasLimit": "<string>",
"maxFeePerGas": "<string>",
"maxPriorityFeePerGas": "<string>",
"deadline": "<string>"
}
}'
import { Turnkey } from "@turnkey/sdk-server";
const turnkeyClient = new Turnkey({
apiBaseUrl: "https://api.turnkey.com",
apiPublicKey: process.env.API_PUBLIC_KEY!,
apiPrivateKey: process.env.API_PRIVATE_KEY!,
defaultOrganizationId: process.env.ORGANIZATION_ID!,
});
const response = await turnkeyClient.apiClient().ethSendTransaction({
from: "<string> (A wallet or private key address to sign with. This does not support private key IDs.)",
sponsor: true // Whether to sponsor this transaction via Gas Station.,
caip2: "<eip155:1>" // CAIP-2 chain ID (e.g., 'eip155:1' for Ethereum mainnet).,
to: "<string> (Recipient address as a hex string with 0x prefix.)",
value: "<string> (Amount of native asset to send in wei.)",
data: "<string> (Hex-encoded call data for contract interactions.)",
nonce: "<string> (Transaction nonce.)",
gasLimit: "<string> (Maximum amount of gas to use for this transaction.)",
maxFeePerGas: "<string> (Maximum total fee per gas unit (base fee + priority fee) in wei, for EIP-1559 transactions.)",
maxPriorityFeePerGas: "<string> (Maximum priority fee (tip) per gas unit in wei, for EIP-1559 transactions.)",
deadline: "<string> (Unix timestamp after which the Gas Station meta-transaction is no longer valid. Only used when sponsor=true.)"
});
{
"activity": {
"id": "<activity-id>",
"status": "ACTIVITY_STATUS_COMPLETED",
"type": "ACTIVITY_TYPE_ETH_SEND_TRANSACTION",
"organizationId": "<organization-id>",
"timestampMs": "<timestamp> (e.g. 1746736509954)",
"result": {
"activity": {
"id": "<string>",
"organizationId": "<string>",
"status": "<string>",
"type": "<string>",
"intent": {
"ethSendTransactionIntent": {
"from": "<string>",
"sponsor": "<boolean>",
"caip2": "<eip155:1>",
"to": "<string>",
"value": "<string>",
"data": "<string>",
"nonce": "<string>",
"gasLimit": "<string>",
"maxFeePerGas": "<string>",
"maxPriorityFeePerGas": "<string>",
"deadline": "<string>"
}
},
"result": {
"ethSendTransactionResult": {
"transactionHash": "<string>"
}
},
"votes": "<array>",
"fingerprint": "<string>",
"canApprove": "<boolean>",
"canReject": "<boolean>",
"createdAt": "<string>",
"updatedAt": "<string>"
}
}
}
}