---
title: "Runway API key without a Runway account: Gen-4.5, live price"
canonical: https://relayswitch.io/runway-api
generated: 2026-10-27T10:22:46.017Z
source: https://api.relayswitch.io/v1/catalog
base_url: https://api.relayswitch.io/v1
---

Models / Media / Runway

# Runway API without a Runway account

A Runway API key with no Runway account: Gen-4.5 on the same prepaid key as Veo, Kling, Seedance and Wan, priced per clip and read live next to Runway's own page. Paid by card or in USDT, USDC, BTC, ETH, SOL, no KYC, nothing added on the top-up.

[Top up with crypto](https://app.relayswitch.io/console/billing)[Open an account](https://app.relayswitch.io/console/login)

$0.4688Gen-4.5, 5-second clip$0.60 on Runway's list

$0.0938Per second21% under list

$10Minimum top-up

0Runway accounts needed

Runway API pricing

## Gen-4.5 per clip, read live

USD per clip from the catalog at render, with the per-second figure beside it. Runway prices the same model in credits per second on its [own pricing page](https://docs.dev.runwayml.com/guides/pricing/) (read 2026-10-27); the list column is the catalog's record of that price in USD.

| Model | Clip | Per clip | Per second | Runway's list |
| --- | --- | --- | --- | --- |
| Runway Gen-4.5runway-gen-4.5 | 5 seconds | $0.4688 | $0.0938 | $0.60 (21% under) |
| Runway Gen-4.5runway-gen-4.5 | 10 seconds | $0.9375 | $0.0938 | $1.20 (21% under) |

The charge is fixed when the request is accepted and refunded in full if the clip fails. Text to video and image to video bill the same.

Beside it on the key

## The other video models, per second

Same endpoint, same key, same balance. Change the model id to compare a shot across developers.

| Model | Setting | Price | Per second |
| --- | --- | --- | --- |
| [Veo 3.1 Fast](https://relayswitch.io/ai-video-api) | resolution 720p | $0.48 per generation | $0.06 |
| [Kling 3.0 Pro](https://relayswitch.io/ai-video-api) | sound false | $0.2438 per second | $0.2438 |
| [Seedance 2](https://relayswitch.io/ai-video-api) | resolution 480p | $0.125 per second | $0.125 |
| [Wan 3.0 Text to Video](https://relayswitch.io/ai-video-api) | resolution 480p | $0.20 per second | $0.20 |
| [Hailuo 2.3](https://relayswitch.io/ai-video-api) | resolution 768p, duration 6 | $0.2188 per generation | $0.0365 |

Lowest base tier of each. The AI video API page has every video model and every tier.

Runway API key

## Get a key and render a clip

Three steps, then one POST and a poll.

1.  01
    
    Open an account
    
    An email address. No Runway account, no identity documents, no phone number.
    
2.  02
    
    Top up
    
    From $10 by card, Apple Pay, PayPal or in USDT, USDC, BTC, ETH, SOL. The balance is USD and does not expire.
    
3.  03
    
    Create a key
    
    In the console. Send it as a Bearer token to https://api.relayswitch.io/v1/generations with model runway-gen-4.5.
    

### Submit with curl

bash

1`curl https://api.relayswitch.io/v1/generations \`

2 `-H "Authorization: Bearer YOUR_RELAYSWITCH_KEY" \`

3 `-H "Content-Type: application/json" \`

4 `-d '{`

5 `"model": "runway-gen-4.5",`

6 `"input": {`

7 `"prompt": "A cyclist crossing a wet city street at dusk, neon reflections",`

8 `"duration": 5,`

9 `"aspect_ratio": "16:9"`

10 `}`

11 `}'`

202 with a generation id and the charge. Poll `GET https://api.relayswitch.io/v1/generations/{id}` until succeeded; outputs\[0\].url is the MP4, served for 30 days.

### Image to video in Python

python

1`import os, time, requests`

2

3`BASE = "https://api.relayswitch.io/v1"`

4`HEADERS = {"Authorization": f"Bearer {os.environ['RELAYSWITCH_KEY']}"}`

5

6`gen = requests.post(f"{BASE}/generations", headers=HEADERS, json={`

7 `"model": "runway-gen-4.5",`

8 `"input": {"prompt": "A cyclist crossing a wet city street at dusk", "duration": 5,`

9 `"aspect_ratio": "16:9", "image_urls": ["https://example.com/first-frame.jpg"]},`

10`}, timeout=30).json()`

11`print(gen["id"], "charged", gen["charge"]["amount_usd"])`

12

13`while gen["status"] not in ("succeeded", "failed"):`

14 `time.sleep(5)`

15 `gen = requests.get(f"{BASE}/generations/{gen['id']}", headers=HEADERS, timeout=30).json()`

16

17`print(gen["status"], gen["outputs"][0]["url"] if gen["status"] == "succeeded" else gen["charge"]["refunded"])`

The input fields are Runway's own: prompt, duration, aspect\_ratio, image\_urls for a first frame, seed. Runway's [developer documentation](https://docs.dev.runwayml.com/) describes what Gen-4.5 does with each; the catalog at `GET https://api.relayswitch.io/v1/catalog/media` lists the values the key accepts and the price of each.

**What is stored:** the email address, the top-ups, the keys, and one generation record per request with its file for 30 days. **Not stored:** a name, an ID, a phone number, a card for crypto top-ups. The [privacy page](https://relayswitch.io/privacy) has the full list.

Related

-   [AI video generation API: every model](https://relayswitch.io/ai-video-api)
-   [Every media model and tier](https://relayswitch.io/models/media)
-   [Media API guide](https://relayswitch.io/guides/media)
-   [kie.ai alternative](https://relayswitch.io/alternatives/kie-ai)
-   [Pay with crypto](https://relayswitch.io/crypto)
-   [No-KYC AI API](https://relayswitch.io/no-kyc)

FAQs

## Runway by API: questions

Free tiers, cost and the key.

Open the console

A key in under a minute

[Get a key](https://app.relayswitch.io/console/login)

Or email [hello@relayswitch.io](mailto:hello@relayswitch.io)

### 

### 

### 

### 

### 

### 

### 

## Gen-4.5 on a prepaid key

From $10 by card or in USDT, USDC, BTC, ETH, SOL. No Runway account, no KYC.

[Every video model](https://relayswitch.io/ai-video-api)[Top up with crypto](https://app.relayswitch.io/console/billing)

