---
title: Getting started with the Runware API | Runware Docs
url: https://runware.ai/docs/platform/introduction
description: Get started with the Runware API. Learn the core concepts and send your first task across image, video, audio, and more.
---
## Introduction

Welcome to the **Runware platform documentation**.

We have a mission: to enable any team to launch AI media generation features with **low budgets** and **no AI expertise**.

Our custom-designed [Sonic Inference Engine®](https://runware.ai/sonic-inference-engine/) delivers high-quality media at **sub-second speeds**. We have built this unique platform from scratch, hosted on our own infrastructure powered by renewable energy. By optimizing the entire AI stack from the OS level upwards, we've achieved exceptional speeds and cost efficiency that we pass directly to you.

The Runware API is a single endpoint spanning **image, video, audio, 3D, and text generation**. It abstracts models and providers behind a unified interface, so you can integrate any AI media capability with the same consistent patterns regardless of modality.

## Getting started

To start using the Runware API:

1. [Sign up](https://my.runware.ai/signup) for a Runware account.
2. Get your API key from the dashboard.
3. Learn how to [connect and authenticate](https://runware.ai/platform/authentication) with our API.
4. Explore the [Models](https://runware.ai/models) to find the right one for your use case and start building.

## Core API concepts

The Runware API follows a consistent design pattern across all our services. Understanding these core concepts will help you work effectively with any of our endpoints.

### Task-based architecture

Our API is built around the concept of **tasks**. Each request represents a specific task to be performed, whether that's generating an image, synthesizing speech, creating a video, or removing a background. This task-based architecture enables a **consistent request structure** across all modalities, **asynchronous processing** for computationally intensive operations, and **efficient resource allocation** based on task requirements.

Every API call accepts an array of objects as input, where each object represents an individual **task** to be performed. You can send as many tasks as you need in a single request, and each task will be processed independently.

### Common request parameters

Every API request shares these fundamental parameters:

- **taskType**: Identifies which operation to perform (e.g., `imageInference`, `videoInference`, `audioInference`, `imageUpload`).
- **taskUUID**: A unique identifier (UUID v4) you generate for tracking the request and matching it with responses. If a task fails or behaves unexpectedly, providing the `taskUUID` when contacting support enables us to quickly locate the request.
- **includeCost**: Optional flag to include cost information with each response.

```json
[
  {
    "taskType": "imageInference",
    "taskUUID": "a770f077-f413-47de-9dac-be0b26a35da6",
    "includeCost": true,
    // Image generation parameters...
  },
  {
    "taskType": "videoInference",
    "taskUUID": "b880f077-e514-58ef-0ebd-ce1c37b46eb7",
    "includeCost": true,
    // Video generation parameters...
  }
]
```

### Common response structure

All API responses follow a consistent format. Each response contains:

- **taskType**: Echoes the type of task originally requested.
- **taskUUID**: Mirrors the unique identifier you provided.
- **cost**: Included when requested, showing the exact cost associated with the task.

Additional fields in the response vary depending on the task type, but this consistent structure makes working with different API features straightforward.

Results are delivered in the format shown below. Each message can contain **one or multiple results**, depending on the task. For example, when generating multiple images, you might receive them progressively as each completes rather than waiting for all of them at once.

Generated output URLs are retained for 7 days by default. This can be configured per request using the `ttl` parameter.

```json
{
  "data": [
    {
      "taskType": "imageInference",
      "taskUUID": "a770f077-f413-47de-9dac-be0b26a35da6",
      "imageUUID": "77da2d99-a6d3-44d9-b8c0-ae9fb06b6200",
      "imageURL": "https://im.runware.ai/image/ws/0.5/ii/a770f077-f413-47de-9dac-be0b26a35da6.jpg",
      "cost": 0.0013
    },
    {
      "taskType": "videoInference",
      "taskUUID": "b880f077-e514-58ef-0ebd-ce1c37b46eb7",
      "videoUUID": "b7db282d-2943-4f12-992f-77df3ad3ec71",
      "videoURL": "https://im.runware.ai/video/ws/0.5/vi/b7db282d-2943-4f12-992f-77df3ad3ec71.mp4",
      "cost": 0.18
    }
  ]
}
```

## Platform topics

Core concepts that apply across all modalities and services.

[

### Task Polling

Detailed guide to handling API responses and task states.](https://runware.ai/docs/platform/task-polling)[

### Streaming

Stream real-time responses for text inference tasks.](https://runware.ai/docs/platform/streaming)[

### Webhooks

Receive real-time notifications for long-running tasks via webhooks.](https://runware.ai/docs/platform/webhooks)[

### Errors

Troubleshoot common issues with error codes and messages.](https://runware.ai/docs/platform/errors)[

### Rate Limits

Learn about request limits and best practices for scaling.](https://runware.ai/docs/platform/rate-limits)[

### Pricing

Understand our cost structure and billing models.](https://runware.ai/docs/platform/pricing)

## SDKs & Integrations

Accelerate your development with our official libraries.

[

### JavaScript SDK

Build robust web applications with our JS/TS client.](https://runware.ai/docs/platform/javascript)[

### Python SDK

Integrate AI into your backend or data pipelines easily.](https://runware.ai/docs/platform/python)[

### ComfyUI

Run your ComfyUI workflows at scale on Runware infrastructure.](https://runware.ai/docs/platform/comfyui)[

### Vercel AI SDK

Seamlessly integrate with the Vercel AI SDK ecosystem.](https://runware.ai/docs/platform/vercel-ai)

## Utilities

Helper tools to manage your integration.

[

### Model Search

Find and filter through our extensive model library via API.](https://runware.ai/docs/platform/model-search)[

### Model Upload

Upload your own models to the Runware platform for public or private use.](https://runware.ai/docs/platform/model-upload)[

### Account Management

Programmatically manage your account settings and keys.](https://runware.ai/docs/platform/account-management)[

### Image Upload

Upload reference images for image-to-image workflows.](https://runware.ai/docs/platform/image-upload)