# Execute On SEDA Fast

## Execute via SEDA Fast (API)

**Canonical URL:** [**https://docs.seda.xyz/home/for-agents/agent-modules/execute-on-seda-fast**](https://docs.seda.xyz/home/for-agents/agent-modules/execute-on-seda-fast)

> **Important: SEDA Fast does not deploy Oracle Programs.**
>
> * **Deploy** (upload) Oracle Programs to the SEDA Network using a wallet + tokens (testnet or mainnet).
> * **Execute** Oracle Programs via SEDA Fast using an API key and the existing **Oracle Program ID**.
>
> If you do not have an Oracle Program ID yet, go to: `modules/50-execute-core.md` (Deploy section) + `modules/30-wallet-and-tokens.md`.

Authoritative references:

* Quick Start Guide: <https://docs.seda.xyz/home/for-developers/quick-start-guide>
* SEDA Fast overview: <https://docs.seda.xyz/home/for-developers/define-your-delivery-method/seda-fast>
* Fast API reference (OpenAPI):
  * Testnet: <https://fast-api.testnet.seda.xyz/docs>
  * Mainnet: <https://fast-api.mainnet.seda.xyz/docs>

This runbook executes Oracle Programs through the SEDA Fast API.

**Rule:** Do not guess payload shapes or fields. If anything changes, treat the OpenAPI docs as the source of truth.

***

### Critical distinction (Fast execution vs Program deployment)

#### Case 1: Execute an existing Oracle Program on Fast

* Needs: Fast API key
* Does **not** need: wallet/tokens

#### Case 2: Deploy your own Oracle Program, then execute on Fast

* Needs: wallet + tokens to deploy the Oracle Program
  * [`https://docs.seda.xyz/home/for-agents/agent-modules/wallets-and-tokens`](https://docs.seda.xyz/home/for-agents/agent-modules/wallets-and-tokens)
  * deploy step in <https://docs.seda.xyz/home/for-agents/agent-modules/deploy-oracle-program-upload-to-seda-network>
* Needs: Fast API key to execute on Fast: <https://docs.seda.xyz/home/for-agents/agent-modules/execute-on-seda-fast>

***

### Canonical execute endpoint (testnet)

Docs use: `https://fast-api.testnet.seda.xyz/execute?includeDebugInfo=true&encoding=json`

***

### Example: ETH/USD (JSON output)

Copy/paste (replace the bearer token only):

```bash
curl -L -X POST 'https://fast-api.testnet.seda.xyz/execute?includeDebugInfo=true&encoding=json' \
  -H 'Authorization: Bearer {{BEARER_TOKEN}}' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "execProgramId": "1b7754932d711916abe9b986c4ac9c2195e7a9efbe7445d774739966370f880a",
    "execInputs": {
      "id": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace",
      "output_format": "json"
    }
  }'
```

Checkpoint:

* response JSON includes a `result` object and a top-level `signature`
* response indicates successful execution (e.g., consensus info / debug info)

***

### Using your own Oracle Program on Fast

Prerequisite:

* you must already have an `oracleProgramId` from deployment (Core deploy step)

Action:

* set:
  * `execProgramId = <your oracleProgramId>`
  * `execInputs = <your program’s input schema>`

Checkpoint:

* you can specify `execInputs` exactly (no guessing)
* the response includes `result` + `signature`

***

### Execute on SEDA Fast (mainnet)

Use this when you are ready to execute against Fast mainnet.

**Source of truth (OpenAPI):**

* <https://fast-api.mainnet.seda.xyz/docs>

#### Canonical execute endpoint (mainnet)

Use the same path/query params as testnet, but with the mainnet host:

`https://fast-api.mainnet.seda.xyz/execute?includeDebugInfo=true&encoding=json`

#### Example: ETH/USD (JSON output) — mainnet

Copy/paste (replace the bearer token only):

```bash
curl -L -X POST 'https://fast-api.mainnet.seda.xyz/execute?includeDebugInfo=true&encoding=json' \
  -H 'Authorization: Bearer {{BEARER_TOKEN}}' \
  -H 'Content-Type: application/json' \
  --data-raw '{
    "execProgramId": "1b7754932d711916abe9b986c4ac9c2195e7a9efbe7445d774739966370f880a",
    "execInputs": {
      "id": "0xff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace",
      "output_format": "json"
    }
  }'
```

Checkpoint:

* response includes `result` + `signature`
* if you receive auth errors, confirm you are using a **mainnet Fast API key**
