# Getting Started

## SEDA for Onchain Agents: Getting Started

This is the canonical starting point for AI agents (and non-coders) building on SEDA.

Design goals:

* Explicit decision tree
* Copy/paste commands
* Validation checkpoints after every step
* No guessing: if a value is not in docs or config, stop and ask

### What SEDA is (agent-relevant)

SEDA enables deterministic oracle logic as **Oracle Programs** (WASM) that fetch, transform, validate, and finalize offchain data for verifiable use.

Core primitives:

* **Oracle Program**: deterministic policy + transform logic compiled to WASM and deployed to the SEDA Network.
* **Data Proxy**: middleware for private/proprietary APIs. Holds secrets, enforces proof headers, and can sign responses.
* **Delivery methods**:
  * **SEDA Fast**: API-first execution for low-latency access to Oracle Programs.
  * **SEDA Core**: onchain data request lifecycle (execution + tally phases, consensus, finalization).
* **Prover contracts**: deployed to EVM networks to post/retrieve results and enable onchain consumption.

### Start here: the SEDA build loop

SEDA’s official high-level loop:

1. Define your data source
2. Build or access an Oracle Program
3. Define your delivery method

This guide turns that loop into an agent-safe runbook.

***

### Decision tree (do not skip)

#### Step 1: Define your data source

Choose **one**:

1. **Supported feed already exists**

* Go to: `modules/10-data-access.md` (Supported feeds path)

2. **Public API**

* Go to: `modules/10-data-access.md` (Public API path)
* Then read timeout defaults: `modules/12-http-fetch-timeouts.md`

3. **Private API / proprietary data**

* You almost always need a Data Proxy to keep secrets out of Oracle Programs.
* Go to: `modules/10-data-access.md` (Private API path), then `modules/25-data-proxy.md`

4. **Website-only (no API)**

* Treat as private/proprietary behind a proxy route (or a website-to-API service).
* Go to: `modules/10-data-access.md`, then `modules/25-data-proxy.md`

#### Step 2: Build or access an Oracle Program

Choose **one**:

A) **Execute an existing Oracle Program**

* If using Fast: go to `modules/40-execute-fast.md`
* If using Core: go to `modules/50-execute-core.md` (execution section)

B) **Build your own Oracle Program**

* Go to `modules/20-build-op.md` (build + local test)
* Then deploy:
  * Wallet + tokens: `modules/30-wallet-and-tokens.md`
  * Core deploy + Data Request post: `modules/50-execute-core.md`

#### Step 3: Choose delivery method

**A) SEDA Fast**

Fast is an API-first execution surface.

Fast requires:

* a Fast API key (for execution)
* an existing **Oracle Program ID** (because the Oracle Program must already be deployed to the SEDA Network)

**Important:**

* Executing an existing Oracle Program on Fast requires only a Fast API key.
* **Deploying a new Oracle Program (so you can execute it on Fast) still requires a wallet + SEDA tokens**, because Oracle Programs are deployed to the SEDA Network.

Go to:

* `modules/40-execute-fast.md`
* If you need to deploy first: `modules/30-wallet-and-tokens.md` + `modules/50-execute-core.md` (deploy step)

**B) SEDA Core**

Core uses an onchain request lifecycle.

Go to:

* Wallet + tokens: `modules/30-wallet-and-tokens.md`
* Deploy + post Data Request: `modules/50-execute-core.md`

#### Step 4: If you need onchain consumption (EVM)

* Select prover address: `modules/60-prover-deployments.md`
* Hardhat integration runbook: `modules/60-relay-evm-hardhat.md`

***

### Recommended “happy path” for agents

1. `modules/10-data-access.md`
2. If needed: `modules/25-data-proxy.md`
3. `modules/20-build-op.md` (build + local tests)
4. `modules/30-wallet-and-tokens.md`
5. `modules/50-execute-core.md` (deploy + post-dr)
6. Optional: `modules/40-execute-fast.md` (Fast execute)
7. Optional: `modules/60-prover-deployments.md` + `modules/60-relay-evm-hardhat.md`

***

### Canonical links

* Introduction to SEDA: <https://docs.seda.xyz/home>
* Define your Data Source: <https://docs.seda.xyz/home/for-developers/define-your-data-source>
* Operating a Data Proxy: <https://docs.seda.xyz/home/for-data-providers/operating-a-data-proxy>
* Build or Access Oracle Programs: <https://docs.seda.xyz/home/for-developers/build-or-access-oracle-programs>
* Define your Delivery Method: [htt](#seda-for-onchain-agents-getting-started)ps\://docs.seda.xyz/home/for-developers/define-your-delivery-method
* SEDA Fast: <https://docs.seda.xyz/home/for-developers/define-your-delivery-method/seda-fast>
* SEDA Core: <https://docs.seda.xyz/home/for-developers/define-your-delivery-method/seda-core>
* Access SEDA tokens: <https://docs.seda.xyz/home/token-overview/access-and-delegate-seda-token>
* Faucet: <https://testnet.explorer.seda.xyz/faucet>
* Prover deployments: <https://docs.seda.xyz/home/for-developers/define-your-delivery-method/seda-core/seda-core-infrastructure-overview/prover-contract-deployments#seda-prover-contracts>
