# Vfat — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Track yield farming opportunities, compare token liquidity and lending rates across 30+ blockchains, and monitor your DeFi portfolio performance in real-time. Analyze farm details, platform statistics, and market data to make informed decisions about where to deploy your assets.

**Category:** Web3 & Onchain | **Website:** [vfat.io/](https://vfat.io/) | **Docs:** [parse.bot/marketplace/78a55a37-e140-4ffe-a9ce-a3a5a5479164/vfat-io-api](https://parse.bot/marketplace/78a55a37-e140-4ffe-a9ce-a3a5a5479164/vfat-io-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/vfat/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get chains

Retrieve the list of supported blockchains on vfat.io, including RPC URLs, contract addresses, and native currency details. Returns all chains in a single response with no pagination.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-chains \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get data freshness

Retrieve the data freshness status for each supported blockchain, showing block lag and time delay of aggregated data.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-data-freshness \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get farm detail

Retrieve detailed data for a specific farm by searching for its contract address on a given chain. Returns pool composition, rewards, APR, and liquidity metrics. Returns input_not_found if no farm matches.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `address` | string | Yes | Farm contract address (e.g. 0x4f09bab2f0e15e2a078a227fe1537665f55b8360). |
| `chain_id` | integer | Yes | Blockchain chain ID (e.g. 8453 for Base, 1 for Ethereum). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-farm-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"address":"<string>","chain_id":"<integer>"}'
```

### Get farms

Retrieve a paginated list of yield farms sorted by TVL descending. Supports filtering by chain ID and searching by contract address. Each farm includes APR, TVL, protocol info, and pool composition.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `address` | string | No | Search by farm contract address to find a specific farm. |
| `chain_id` | integer | No | Filter by blockchain chain ID (e.g. 8453 for Base, 1 for Ethereum, 56 for BNB Chain, 42161 for Arbitrum). |
| `page` | integer | No | Page number for pagination. |
| `page_size` | integer | No | Number of farms per page. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-farms \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"address":"<string>","chain_id":"<integer>","page":"<integer>","page_size":"<integer>"}'
```

### Get lending markets

Retrieve the list of DeFi lending markets (compound-style) across all supported chains. Returns market addresses, underlying token details, and borrow/supply metrics.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-lending-markets \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get platform stats

Retrieve vfat.io platform-wide statistics including total TVL, unique users, positions count, and per-chain breakdowns.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-platform-stats \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get portfolio

Retrieve the full portfolio data for a given wallet address including native token balances, farm positions, and compound lending positions across all supported chains.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `wallet` | string | Yes | Wallet address (e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-portfolio \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"wallet":"<string>"}'
```

### Get portfolio chains

Retrieve the chain-by-chain USD balance breakdown of a portfolio. Returns only chains where the wallet has non-zero balances.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `wallet` | string | Yes | Wallet address (e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-portfolio-chains \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"wallet":"<string>"}'
```

### Get token detail

Retrieve detailed data for a specific token including its liquidity pools across DEXes. Token metadata may be empty if the token is not in the main index but pools will still be returned.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `address` | string | Yes | Token contract address (e.g. 0x6b175474e89094c44da98b954eedeac495271d0f for DAI). |
| `chain_id` | integer | Yes | Blockchain chain ID (e.g. 1 for Ethereum, 8453 for Base). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-token-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"address":"<string>","chain_id":"<integer>"}'
```

### Get tokens

Retrieve a paginated list of tokens tracked on vfat.io, sorted by liquidity descending. Returns token metadata including price, symbol, and 24h change.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number. |
| `page_size` | integer | No | Number of tokens per page. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-tokens \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","page_size":"<integer>"}'
```

### Get yield deposits

Retrieve active yield farming deposit positions for a wallet tracked by vfat.io. Returns an empty array if the wallet has no active vfat-tracked positions.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `wallet` | string | Yes | Wallet address (e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/vfat/get-yield-deposits \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"wallet":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.