Skip to main content
POST
/
v1
/
wallets
/
{wallet_id}
/
earn
/
ethereum
/
incentive
/
claim
Earn incentive claim
curl --request POST \
  --url https://api.privy.io/v1/wallets/{wallet_id}/earn/ethereum/incentive/claim \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --header 'privy-app-id: <privy-app-id>' \
  --data '
{
  "chain": "base"
}
'
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "pending",
  "wallet_id": "fmfdj6yqly31huorjqzq38zc",
  "type": "earn_incentive_claim",
  "chain": "base",
  "rewards": null
}

Documentation Index

Fetch the complete documentation index at: https://docs.privy.io/llms.txt

Use this file to discover all available pages before exploring further.

Ifear your app has gas sponsorship configured, usage of the /earn/ethereum/incentive/claim endpoint will be gas-sponsored by default. There is no need to specify additional parameters for sponsorship.

Authorizations

Authorization
string
header
required

Basic Auth header with your app ID as the username and your app secret as the password.

Headers

privy-app-id
string
required

ID of your Privy app.

privy-authorization-signature
string

Request authorization signature. If multiple signatures are required, they should be comma separated.

privy-request-expiry
string

Request expiry. Value is a Unix timestamp in milliseconds representing the deadline by which the request must be processed.

privy-idempotency-key
string

Idempotency keys ensure API requests are executed only once within a 24-hour window.

Path Parameters

wallet_id
string
required

ID of the wallet.

Body

application/json

Input for claiming incentive rewards.

chain
string
required

The blockchain network on which to perform the incentive claim. Supported chains include: 'ethereum', 'base', 'arbitrum', 'polygon', 'solana', and more, along with their respective testnets.

Response

200 - application/json

Earn incentive claim initiated successfully.

Response for an earn incentive claim action.

id
string
required

The ID of the wallet action.

status
enum<string>
required

The current status of the wallet action.

Available options:
pending,
succeeded,
rejected,
failed
wallet_id
string
required

The ID of the wallet involved in the action.

created_at
string<date-time>
required

ISO 8601 timestamp of when the wallet action was created.

type
enum<string>
required
Available options:
earn_incentive_claim
chain
string
required

EVM chain name (e.g. "base", "ethereum").

rewards
EarnIncetiveClaimRewardEntry · object[] | null
required

Claimed reward tokens. Populated after the preparation step fetches from Merkl.

failure_reason
FailureReason · object

Top-level failure context for the wallet action. Present on rejected or failed actions when available.

steps
(EVMTransactionWalletActionStep · object | EVMUserOperationWalletActionStep · object | SVMTransactionWalletActionStep · object)[]

The steps of the wallet action. Only returned if ?include=steps is provided.

A wallet action step consisting of an EVM transaction.