Prerequisites
The owner or admin role to create an admin API key. This is a separate credential from the project-levelx-api-key your integration uses against the Yield, Perps, or Borrow API; see Manage team roles.
Every programmatic route in this guide is served from
https://api.stakek.it, the host the current admin API key documentation and dashboard Swagger reference both declare. This is a different host from https://api.yield.xyz, which serves the Yield API.Create an admin API key
1
Open the admin API keys page
In the dashboard, go to Programmatic Access (
/admin-api-keys), the page listed as admin API keys in the navigation.2
Create the key
Click Create API Key, give it a Name and an optional Note, then create it.
3
Copy it immediately
The key value is shown once. Store it in a secrets manager; there’s no way to retrieve it again.
Authenticate
Send the key on every request as theX-ADMIN-API-KEY header:
cURL
Provision a project
1
Create a project
Response (excerpt)
2
Create a project API key
This is the
x-api-key your integration will use against the Yield, Perps, or Borrow API, scoped to the project you just created.cURL
Response (excerpt)
apiKey is shown once, the same as a key created from the dashboard. An optional expiresAt (date only) sets an expiration; omitted, it defaults to 30 days.3
Enable yields
A project only serves yields it has enabled. Pass an array of yield ids:List what’s currently enabled with
cURL
GET on the same path (paginated, page/limit, max 50 per page); remove one with DELETE .../yields/enabled/{integrationId}, or several at once with DELETE .../yields/enabled and a body.4
Request a fee configuration
cURL
Response (excerpt)
performanceFeeBps at or below 2,000 (20%); yield.xyz doesn’t charge the portion of a performance fee above that, so a higher value doesn’t get you more revenue. A new configuration starts REQUESTED, moves to PROCESSING while yield.xyz deploys the fee contracts, then LIVE; only a LIVE configuration is applied to transactions. Updating a configuration sets it back to REQUESTED. GET (paginated) and PATCH/DELETE .../fee-configuration/{feeConfigurationId} manage existing ones. See Reporting for where the resulting revenue shows up, and register a payout wallet in the dashboard for each network you charge fees on; see Set up fees and payouts.Manage what you provisioned
The same pattern,GET to list, PATCH to update, DELETE to remove, applies to projects and project API keys:
Reporting
Pull the same revenue and performance data reporting shows in the dashboard, scoped to a project:cURL
/reporting/revenue/aggregate (with from/to) totals it across integrations for a date range. /reporting/performance and /reporting/performance/aggregate return the same shapes for volume and TVL instead of revenue. A team-wide, non-project-scoped feed of individual actions is available at GET /v1/programmatic/report-entries, filterable by project, integration, status, type, and address. See Reporting for what each figure means.
Campaign reporting
Incentive campaign data is readable, not configurable, through the programmatic campaign routes:cURL
Response (excerpt)
/v2/programmatic/projects/{projectId}/campaigns/{campaignId}/ cover balances (per-user earned, paid, and unpaid totals), accrual details by window, TVL stats, payout runs and their per-batch detail, the campaign Safe’s live balance, and a payout-eligibility summary. All of them are read-only.
Next steps
Programmatic access
What this credential covers and who can create one.
Reporting
Dashboard and programmatic reporting side by side.
Incentive Campaigns
How a campaign accrues and pays out.
Manage team roles
Who can create an admin API key.

