> For the complete documentation index, see [llms.txt](https://docs.callput.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.callput.app/developers/contracts-addresses-and-data-sources.md).

# Contracts addresses and data sources

This page lists the core integration addresses and data sources required for the public Callput surface.

## Network

| Network | Chain ID | Status                                |
| ------- | -------- | ------------------------------------- |
| Base    | `8453`   | current public documentation baseline |

## Core Base addresses

| Item                  | Address                                      | Purpose                                                         |
| --------------------- | -------------------------------------------- | --------------------------------------------------------------- |
| WBTC                  | `0x0555E30da8f98308EdB960aa94C0Db47230d2B9c` | wrapped BTC underlying, used in some collateral or payout paths |
| WETH                  | `0x4200000000000000000000000000000000000006` | wrapped ETH underlying, used in some collateral or payout paths |
| USDC                  | `0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913` | primary stable asset                                            |
| OPTIONS\_MARKET       | `0xBD40a87CcBD20E44C45F19A074E7d67Ee85327c7` | market core                                                     |
| POSITION\_MANAGER     | `0x83B04701B227B045CBBAF921377137fF595a54af` | open and close requests                                         |
| SETTLE\_MANAGER       | `0x81A58c7F737a18a8964F62A2C165675C1819E77C` | post-expiry settlement                                          |
| VIEW\_AGGREGATOR      | `0x9060a53f764578230674074cbCa9Daa9fbCa85A8` | convenience read layer                                          |
| FAST\_PRICE\_FEED     | `0xFd8fB8C96044cB35491f65F42edaE26047856bE9` | request execution layer                                         |
| SPOT\_PRICE\_FEED     | `0x9eFCa77b626021f98342721Eba1a936137583b19` | spot reference feed                                             |
| POSITION\_VALUE\_FEED | `0x6ad232A0dD0D26Dc54e1117e7b7Dc548BE4eB652` | position valuation feed                                         |
| SETTLE\_PRICE\_FEED   | `0xfd1Ca63B2b31ebaDDB17EbB7bCAcb5a834DaC3c6` | settlement valuation feed                                       |
| BTC\_OPTIONS\_TOKEN   | `0xc399D89bd99B7b68026703482bb6A2B9c69cE444` | BTC ERC-1155 options token                                      |
| ETH\_OPTIONS\_TOKEN   | `0x648DE615abD9339F5C85ed00cfD946C69BF858fA` | ETH ERC-1155 options token                                      |
| S\_VAULT              | `0xF9Ba07Ba4aD84D6Af640ebf28E2B98c135a207A3` | public LP reference vault                                       |
| S\_OLP                | `0x5CA572Ebd1473858d4Fb91e52573450022a625d2` | sOLP token                                                      |
| S\_OLP\_MANAGER       | `0xCa32A46B7F95d227293Fea228B2212EF797ec338` | sVault OLP manager                                              |

## Public data sources

| Data source         | Path                                                                     | Primary use                    |
| ------------------- | ------------------------------------------------------------------------ | ------------------------------ |
| Public market feed  | `https://app-data-base.s3.ap-southeast-1.amazonaws.com/market-data.json` | tradable market discovery      |
| Base address bundle | `contract/latestAddress.base.json`                                       | address resolution             |
| Epoch info API      | `GET /getEpochInfo?vaultType=s`                                          | LP stage and countdown context |

## Public market-feed shape

The current feed is a nested JSON document with top-level keys:

* `timestamp`
* `lastUpdatedAt`
* `data`

Inside `data`, the key integration sections are:

* `market`
* `futuresIndices`
* `spotIndices`
* `riskFreeRates`
* `volatilityScore`
* `olpStats`

Minimal market example:

{% code title="market-data.json" %}

```json
{
  "timestamp": 1774530011709,
  "lastUpdatedAt": "2026-03-26T00:00:00.000Z",
  "data": {
    "market": {
      "BTC": {
        "expiries": [1774598400],
        "options": {
          "1774598400": {
            "call": [
              {
                "instrument": "BTC-27MAR26-40000-C",
                "optionId": "0x...",
                "strikePrice": 40000,
                "markIv": 1.8162,
                "markPrice": 29428.03,
                "riskPremiumRateForBuy": 0.4807,
                "riskPremiumRateForSell": 0.0723,
                "delta": 1.0,
                "gamma": 0.0,
                "vega": 0.0,
                "theta": 0.0,
                "volume": 0,
                "isOptionAvailable": false,
                "expiry": 1774598400
              }
            ],
            "put": []
          }
        }
      }
    }
  }
}
```

{% endcode %}

Important interpretation rules:

* top-level `timestamp` is Unix milliseconds
* the feed publishes option legs, not pre-built strategy objects
* `optionId` is the leg identifier used as request input
* `instrument` is the human-readable display label
* `expiry` values in the feed are Unix seconds
* integrators should treat the final `optionTokenId` as the authoritative executed position ID

## Epoch-info response shape

The public LP countdown endpoint returns:

{% code title="epoch-info response" %}

```json
{
  "vaultType": "s",
  "currentRound": 123,
  "currentStage": "SUBMISSION",
  "epochStartedAt": 1737014400000,
  "submissionStartsAt": 1737014400000,
  "submissionEndsAt": 1737015600000,
  "processStartsAt": 1737015600000,
  "processEndsAt": 1737016200000,
  "nextEpochStartsAt": 1737016200000,
  "appliedConfig": {
    "submissionDurationMinutes": 20,
    "processDurationMinutes": 10
  },
  "nextConfig": {
    "submissionDurationMinutes": 20,
    "processDurationMinutes": 10
  },
  "configChanged": false,
  "timestamp": 1737015000000,
  "lastUpdated": "2026-01-16T10:00:00Z"
}
```

{% endcode %}

Key interpretation rules:

* epoch timestamps are Unix milliseconds
* `appliedConfig` describes the active epoch
* `nextConfig` describes the next epoch's planned settings
* `currentStage` is either `SUBMISSION` or `PROCESS`

## Which source to use for which job

### Market discovery

Use the public market feed. It is the public source for underlyings, expiries, call/put legs, displayed pricing, and greeks.

### Request status

Use `PositionManager` request getters and the corresponding request key.

### Position balance

Use the relevant ERC-1155 option token contract.

### Settlement eligibility

Use expiry, token balance, and `SettleManager`.

## Minimal required dependencies

* Base RPC
* Base address bundle
* public market feed
* `PositionManager` ABI
* `SettleManager` ABI
* ERC-20 approval logic
* ERC-1155 balance lookup logic
