curl --request GET \
--url https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"walletId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"chainId": 1,
"source": "aave-v3",
"action": "deposit",
"amount": "10.0",
"status": "pending",
"transactions": [
{
"phase": "approval",
"hash": "<string>",
"nonce": 1,
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "signed",
"blockNumber": 123,
"blockHash": "<string>"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"error": {
"code": "<string>",
"message": "<string>",
"reviewId": "<string>"
}
}{
"code": "INVALID_REQUEST",
"message": "type must be one of EVM, SOLANA, COSMOS, STELLAR, SUI"
}{
"code": "UNAUTHORIZED",
"message": "secret api key not provided"
}{
"code": "FORBIDDEN",
"message": "invalid secret api key"
}{
"code": "NOT_FOUND",
"message": "wallet not found"
}{
"code": "INVALID_REQUEST",
"message": "<string>",
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"failureStage": "mpc_sign",
"failureCode": "<string>",
"signedTransaction": "<string>"
}{
"code": "RATE_LIMITED",
"message": "Rate limit exceeded, try again shortly."
}{
"code": "INTERNAL_ERROR",
"message": "Internal Server Error"
}Get operation
Get the current status, transactions, and any error for a yield operation.
curl --request GET \
--url https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId} \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.beta.getpara.com/v1/wallets/{walletId}/yield/operations/{operationId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"walletId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"chainId": 1,
"source": "aave-v3",
"action": "deposit",
"amount": "10.0",
"status": "pending",
"transactions": [
{
"phase": "approval",
"hash": "<string>",
"nonce": 1,
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "signed",
"blockNumber": 123,
"blockHash": "<string>"
}
],
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"error": {
"code": "<string>",
"message": "<string>",
"reviewId": "<string>"
}
}{
"code": "INVALID_REQUEST",
"message": "type must be one of EVM, SOLANA, COSMOS, STELLAR, SUI"
}{
"code": "UNAUTHORIZED",
"message": "secret api key not provided"
}{
"code": "FORBIDDEN",
"message": "invalid secret api key"
}{
"code": "NOT_FOUND",
"message": "wallet not found"
}{
"code": "INVALID_REQUEST",
"message": "<string>",
"transactionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"failureStage": "mpc_sign",
"failureCode": "<string>",
"signedTransaction": "<string>"
}{
"code": "RATE_LIMITED",
"message": "Rate limit exceeded, try again shortly."
}{
"code": "INTERNAL_ERROR",
"message": "Internal Server Error"
}Authorizations
Your partner secret key (server-side only)
Headers
UUID for request tracing. Para returns one if omitted.
Path Parameters
Wallet UUID. A malformed or inaccessible wallet ID returns 404.
"0a1b2c3d-4e5f-6789-abcd-ef0123456789"
Response
Current operation state.
1, 8453, 11155111 aave-v3 deposit, withdraw Normalized decimal USDC amount, or all for withdrawals.
"10.0"
pending work automatically retries recognized temporary RPC failures before signing and waits for another yield operation on the same wallet. submitted can mean signed and durably stored even when RPC acceptance is uncertain. confirmed requires two confirmations of the canonical block; this is not finality. failed means an on-chain revert or NONCE_CONSUMED; it does not guarantee that no funds moved. requires_action needs an explicit retry after correcting the issue.
pending, submitted, confirmed, failed, requires_action, cancelled Show child attributes
Show child attributes
Show child attributes
Show child attributes