curl --request POST \
--url https://api.privy.io/v1/wallets/{wallet_id}/rpc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"method": "eth_sendTransaction",
"caip2": "eip155:4217",
"chain_type": "ethereum",
"params": {
"transaction": {
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}'
curl --request POST \
--url https://api.privy.io/v1/wallets/{wallet_id}/rpc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"method": "eth_sendTransaction",
"caip2": "eip155:4217",
"chain_type": "ethereum",
"sponsor": true,
"params": {
"transaction": {
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}'
{
"method": "eth_sendTransaction",
"data": {
"hash": "0xfc3a736ab2e34e13be2b0b11b39dbc0232a2e755a11aa5a9219890d3b2c6c7d8",
"caip2": "eip155:4217",
"transaction_id": "y90vpg3bnkjxhw541c2zc6a9",
"transaction_request": {
"chain_id": 4217,
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}
{
"method": "eth_sendTransaction",
"data": {
"hash": "0xfc3a736ab2e34e13be2b0b11b39dbc0232a2e755a11aa5a9219890d3b2c6c7d8",
"caip2": "eip155:4217",
"transaction_id": "y90vpg3bnkjxhw541c2zc6a9"
}
}
Tempo
eth_sendTransaction
Sign and send a Tempo transaction using the eth_sendTransaction method with type 118.
POST
/
v1
/
wallets
/
{wallet_id}
/
rpc
curl --request POST \
--url https://api.privy.io/v1/wallets/{wallet_id}/rpc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"method": "eth_sendTransaction",
"caip2": "eip155:4217",
"chain_type": "ethereum",
"params": {
"transaction": {
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}'
curl --request POST \
--url https://api.privy.io/v1/wallets/{wallet_id}/rpc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"method": "eth_sendTransaction",
"caip2": "eip155:4217",
"chain_type": "ethereum",
"sponsor": true,
"params": {
"transaction": {
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}'
{
"method": "eth_sendTransaction",
"data": {
"hash": "0xfc3a736ab2e34e13be2b0b11b39dbc0232a2e755a11aa5a9219890d3b2c6c7d8",
"caip2": "eip155:4217",
"transaction_id": "y90vpg3bnkjxhw541c2zc6a9",
"transaction_request": {
"chain_id": 4217,
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}
{
"method": "eth_sendTransaction",
"data": {
"hash": "0xfc3a736ab2e34e13be2b0b11b39dbc0232a2e755a11aa5a9219890d3b2c6c7d8",
"caip2": "eip155:4217",
"transaction_id": "y90vpg3bnkjxhw541c2zc6a9"
}
}
SDK methods
Learn more about sending Tempo transactions using our SDKs here.Idempotency on errors: On 4xx or 5xx, Privy caches the response and replays it for the same
key. Generate a new key to retry after a server error. Policy violations are an exception and
allow same-key retries.
curl --request POST \
--url https://api.privy.io/v1/wallets/{wallet_id}/rpc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"method": "eth_sendTransaction",
"caip2": "eip155:4217",
"chain_type": "ethereum",
"params": {
"transaction": {
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}'
curl --request POST \
--url https://api.privy.io/v1/wallets/{wallet_id}/rpc \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--header 'privy-app-id: <privy-app-id>' \
--data '{
"method": "eth_sendTransaction",
"caip2": "eip155:4217",
"chain_type": "ethereum",
"sponsor": true,
"params": {
"transaction": {
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}'
{
"method": "eth_sendTransaction",
"data": {
"hash": "0xfc3a736ab2e34e13be2b0b11b39dbc0232a2e755a11aa5a9219890d3b2c6c7d8",
"caip2": "eip155:4217",
"transaction_id": "y90vpg3bnkjxhw541c2zc6a9",
"transaction_request": {
"chain_id": 4217,
"type": 118,
"calls": [
{
"to": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"value": "0x2386F26FC10000"
}
]
}
}
}
{
"method": "eth_sendTransaction",
"data": {
"hash": "0xfc3a736ab2e34e13be2b0b11b39dbc0232a2e755a11aa5a9219890d3b2c6c7d8",
"caip2": "eip155:4217",
"transaction_id": "y90vpg3bnkjxhw541c2zc6a9"
}
}
The wallet RPC endpoint is a synchronous endpoint, and a successful response indicates that the
transaction has been broadcasted to the network. Transactions may get broadcasted but still fail
to be confirmed by the network. The endpoint does not wait for confirmation or retry if the
transaction fails to be confirmed. To handle these scenarios, see our guide on speeding up
transactions.
Headers
string
required
ID of your Privy app.
string
Request authorization signature. If multiple signatures are required, they should be comma
separated.
string
Request expiry. Value is a Unix timestamp in milliseconds representing the deadline by which the
request must be processed.
Path Parameters
string
required
ID of the wallet to get.
Body
string
required
Available options:
eth_sendTransactionstring
required
The CAIP-2 chain identifier for the Tempo network.
object
required
Hide child attributes
Hide child attributes
object
required
Hide child attributes
Hide child attributes
number
required
Must be
118 for Tempo transactions.string
string | number
string | number
string | number
string | number
string | number
object[]
required
string
Address of the supported TIP-20 token used to pay Tempo fees. If omitted, Tempo’s
fee-token preference rules
apply. Tempo has no native gas token.
string | number
The Tempo 2D nonce key.
string | number
Unix timestamp in seconds after which Tempo will reject the transaction.
string | number
Unix timestamp in seconds before which Tempo will reject the transaction.
object
boolean
Enable gas sponsorship for this transaction. Learn
more.
string
Optional developer-provided reference ID for transaction reconciliation. Must be unique per
transaction and up to 64 characters. Use this to correlate transactions with your own internal
records. The
reference_id is included in transaction
webhook payloads and can be used to look up
transactions.string
string
Available options:
ethereumReturns
enum<string>
required
Available options:
eth_sendTransactionWas this page helpful?
⌘I

