Overview
This guide walks through every capability of the Yield.xyz Programmatic API. Use it to automate project provisioning, API key lifecycle, yield enablement, fee configuration, and reporting — all without touching the dashboard.For background on what Programmatic Access is and when to use it, see the Programmatic Access documentation.
Prerequisites
Before you begin, you need a Programmatic Access API Key:Log in to the dashboard
Go to dashboard.yield.xyz

Projects
A project maps to a logical grouping — typically one per client, workspace, or environment. Each project has its own API keys, enabled yields, and fee configurations.Create a Project
List Projects
Update a Project
| Field | Type | Required | Description |
|---|---|---|---|
name | string | No | Updated project name |
description | string | No | Updated description |
autoComplaintBansEnabled | boolean | No | Enable/disable auto-ban on complaints |
Delete a Project
API Keys
API keys are scoped to a project. These are the keys your application passes to the Yield API (X-API-KEY header) for staking, balance, and action requests.
Create a Key
List Keys
Update a Key
Delete a Key
Enabled Yields
Control which yield integrations are available for a project. An integration is a specific yield opportunity identified by anintegrationId (e.g., ethereum-eth-lido-staking, optimism-usdt-aave-v3-lending).
List Enabled Yields
| Query Parameter | Type | Default | Description |
|---|---|---|---|
page | number | 1 | Page number |
limit | number | 10 | Items per page |
Enable Yields (Bulk)
Disable a Single Yield
Disable Yields (Bulk)
Fee Configuration
Configure fees on a per-integration basis within a project. Fees are expressed in basis points (bps), where 100 bps = 1%.Applying fees may require Yield.xyz to deploy onchain infrastructure (e.g., an OAV or fee wrapper). The fee configuration status reflects this lifecycle:
REQUESTED → PROCESSING → LIVE.Create a Fee Configuration
| Field | Type | Required | Description |
|---|---|---|---|
integrationId | string | Yes | Target yield integration |
depositFeeBps | number | No | Deposit fee in bps (1–10000) |
managementFeeBps | number | No | Management fee in bps (1–10000) |
performanceFeeBps | number | No | Performance fee in bps (1–10000) |
List Fee Configurations
Update a Fee Configuration
null for a fee field to remove it.
Delete a Fee Configuration
Reports
Pull transaction and staking activity across all projects belonging to your team. Use query parameters to filter and sort results.List Report Entries
| Query Parameter | Type | Description |
|---|---|---|
projectId | string | Filter by project |
integrationId | string | Filter by yield integration |
walletAddress | string | Filter by wallet address |
validatorAddress | string | Filter by validator address |
status | string | Filter by action status (SUCCESS, FAILED, PROCESSING, etc.) |
type | string | Filter by action type (STAKE, UNSTAKE, CLAIM_REWARDS, etc.) |
sort | string | createdAtAsc or createdAtDesc |
page | number | Page number |
limit | number | Items per page |
Recommended Provisioning Flow
A typical integration follows this sequence when onboarding a new client or workspace:Mint an API key
POST /v1/programmatic/projects/{projectId}/keys — the key is used by the client or your backend to call the Yield APIEnable yields
POST /v1/programmatic/projects/{projectId}/yields/enabled — enable a curated set of yield integrationsConfigure fees (optional)
POST /v1/programmatic/projects/{projectId}/fee-configuration — apply deposit, management, or performance feesFee Configuration Lifecycle
When a fee configuration is created, it may go through several statuses before becoming active:| Status | Description |
|---|---|
REQUESTED | Fee configuration has been submitted |
PROCESSING | Yield.xyz is deploying the required onchain infrastructure (OAV or fee wrapper) |
LIVE | Fee configuration is active and being applied |
CHANGES_REQUESTED | An update has been requested and is being processed |
Some fee configurations require Yield.xyz to deploy a dedicated Optimized Allocator Vault (OAV) or fee wrapper contract onchain. This is handled automatically — the
status field reflects the deployment progress.OpenAPI Specification
The full OpenAPI specification for the Programmatic API is available directly in the Yield.xyz dashboard:- Log in to dashboard.yield.xyz
- Click your avatar → </> Developers
- The OpenAPI spec is displayed in the developer section

Next Steps
Programmatic Access Docs
Overview of capabilities and authentication
Fee Configuration
Learn more about how fees work in Yield.xyz
Projects & API Keys
Understand project and key concepts
OAVs
Learn about Optimized Allocator Vaults

