# Deploy Oracle Program (Upload to SEDA Network)

This page is the **deployment step** for Oracle Programs. It applies whether you plan to execute via **SEDA Core** or **SEDA Fast** later. Output of this page is: **Oracle Program ID**.

**Canonical URL:** [**https://docs.seda.xyz/home/for-agents/agent-modules/deploy-oracle-program-upload-to-seda-network**](https://docs.seda.xyz/home/for-agents/agent-modules/deploy-oracle-program-upload-to-seda-network)

Authoritative references:

* SEDA Core overview: <https://docs.seda.xyz/home/for-developers/define-your-delivery-method/seda-core>
* Access SEDA Core from any EVM network (note: OP must already be deployed):\
  <https://docs.seda.xyz/home/for-developers/define-your-delivery-method/seda-core/seda-core-infrastructure-overview/access-seda-core-from-any-evm-network>

This runbook deploys an Oracle Program to SEDA Core and posts a Data Request.

**Rule:** Do not proceed unless your wallet is funded (testnet faucet) and you have built + tested your OP locally.

***

### Prereqs

* You built and tested the Oracle Program: <https://docs.seda.xyz/home/for-agents/agent-modules/build-and-test-oracle-programs>
* You have wallet + tokens: <https://docs.seda.xyz/home/for-agents/agent-modules/wallets-and-tokens>

***

### 1) Configure `.env`

Create or edit `.env` in the project root and set the following:

```env
SEDA_RPC_ENDPOINT=https://rpc.testnet.seda.xyz
SEDA_EXPLORER_URL=https://testnet.explorer.seda.xyz

# Your mnemonic (required to upload binaries / interact with DRs)
SEDA_MNEMONIC=
# Set after upload:
ORACLE_PROGRAM_ID=
```

Checkpoint (confirm variables exist without leaking secrets):

```
cat .env | sed 's/=.*/=REDACTED/'
```

***

### 2) Deploy (upload OP) and capture Oracle Program ID

Run:

```
bun run deploy
```

Checkpoint:

* output includes an `oracleProgramId`
* copy it into `.env` as `ORACLE_PROGRAM_ID`

***

### 3) List Oracle Programs (sanity check)

Run:

```
bunx seda-sdk oracle-program list
```

Checkpoint:

* your `oracleProgramId` appears in the list

***

### 4) Post a Core Data Request

Run:

```
bun run post-dr
```

Checkpoint:

* output includes request identifier(s) and a result table
* you can open the explorer link and view lifecycle details

***

### Next step (optional)

Consume results from EVM:

* <https://docs.seda.xyz/home/for-agents/agent-modules/prover-contract-deployments>
* [`https://docs.seda.xyz/home/for-agents/agent-modules/evm-hardhat-integrations`](https://docs.seda.xyz/home/for-agents/agent-modules/evm-hardhat-integrations)

```
```
