# Rick and Morty API (by Zuplo)
> Complete documentation for Large Language Models
---
## Document: Welcome
REST API for Rick and Morty characters, locations, and episodes — powered by Zuplo
URL: /welcome
# Welcome
Welcome to the **Rick and Morty API** documentation. This RESTful API gives you access to hundreds of characters, locations, and episodes from the Rick and Morty universe. Built on [Zuplo](https://zuplo.com), it features API key authentication, rate limiting, and full OpenAPI documentation.
New here? Head to the [Getting Started](/getting-started) guide to get your API key and make your first request in under 2 minutes.
## What's in the multiverse?
### 🧬 Characters
Access data on **826+ characters** — from Rick Sanchez and Morty Smith to Pickle Rick and Abradolf Lincler. Filter by name, status, species, gender, and more.
[Explore Characters →](/characters)
### 🌍 Locations & Dimensions
Browse locations across the multiverse: Earth (Dimension C-137), the Citadel of Ricks, Anatomy Park, Blips and Chitz, and beyond. Every location includes its dimension and resident characters.
[Explore Locations →](/locations)
### 📺 Episodes
All episodes from every season, with air dates, episode codes, and the characters that appear in each one.
[Explore Episodes →](/episodes)
## Quick example
```bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters/1"
```
```json
{
"id": 1,
"name": "Rick Sanchez",
"status": "Alive",
"species": "Human",
"gender": "Male",
"origin": {
"name": "Earth (C-137)",
"url": "https://api.rickandmorty.zuplo.io/v1/locations/1"
},
"image": "https://api.rickandmorty.zuplo.io/v1/characters/avatar/1.jpeg"
}
```
## Ready to get schwifty?
- [Getting Started](/getting-started) — sign up and make your first request
- [API Reference](/api) — full interactive reference with try-it-out
---
## Document: Locations & Dimensions
Guide to the Locations endpoint — multiverse locations, dimensions, filtering, and examples
URL: /locations
# Locations & Dimensions
The Rick and Morty universe spans an infinite multiverse. The Locations endpoint lets you explore planets, space stations, dimensions, and micro-verses — each with its own residents and dimension classification.
## Data model
Each location object contains the following fields:
| Field | Type | Description |
|-------|------|-------------|
| `id` | integer | Unique identifier |
| `name` | string | Location name |
| `type` | string | Type of location (e.g., `Planet`, `Space station`, `Microverse`) |
| `dimension` | string | The dimension the location belongs to (e.g., `Dimension C-137`) |
| `residents` | array | List of character URLs for residents of this location |
| `url` | string | URL to the location's own endpoint |
| `created` | string | ISO 8601 timestamp when the record was created |
## The multiverse
In Rick and Morty, every possible reality exists somewhere. Dimensions are identified by codes like `C-137` (Rick's home dimension) or `Replacement Dimension` (where they bury their own dead bodies in the backyard — it's a long story).
Some locations exist across multiple dimensions, while others — like the Citadel of Ricks — exist outside any single dimension entirely.
## Get all locations
```bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/locations"
```
Returns a paginated list of all locations (20 per page).
## Get a single location
```bash
# Get the Citadel of Ricks
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/locations/3"
```
## Get multiple locations
```bash
# Get Earth (C-137), Abadango, and the Citadel
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/locations/1,2,3"
```
## Filtering
Filter locations using query parameters:
| Parameter | Type | Example Values |
|-----------|------|---------------|
| `name` | string | `earth`, `citadel`, `anatomy park` |
| `type` | string | `planet`, `space station`, `microverse` |
| `dimension` | string | `dimension c-137`, `unknown`, `replacement dimension` |
### Filter examples
```bash
# Find all planets
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/locations?type=planet"
```
```bash
# Find locations in Dimension C-137
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/locations?dimension=dimension+c-137"
```
```bash
# Search for a location by name
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/locations?name=citadel"
```
## Notable locations
| ID | Name | Type | Dimension |
|----|------|------|-----------|
| 1 | Earth (C-137) | Planet | Dimension C-137 |
| 3 | Citadel of Ricks | Space station | unknown |
| 6 | Earth (Replacement Dimension) | Planet | Replacement Dimension |
| 20 | Earth (5-126) | Planet | Dimension 5-126 |
| 64 | Anatomy Park | Microverse | Dimension C-137 |
| 11 | Bepis 9 | Planet | unknown |
The `residents` array in each location response contains URLs to the characters that live there. You can use these to discover characters associated with any location.
## Next steps
- [Characters Guide](/characters) — explore the residents of these locations
- [Episodes Guide](/episodes) — find episodes set in specific locations
- [API Reference](/api) — try the Locations endpoints interactively
---
## Document: Getting Started
Sign up, get your API key, and make your first request to the Rick and Morty API
URL: /getting-started
# Getting Started
Get up and running with the Rick and Morty API in a few quick steps. You'll need an API key to authenticate your requests — no portal gun required.
## 1. Create an account
Click the **Sign In** button in the top navigation to create an account via Auth0. You can sign up with your email or use a social login.
## 2. Choose a plan
Once signed in, head to the API Reference and subscribe to a plan:
| Plan | Rate Limit | Best For |
|------|-----------|----------|
| **Dimension C-137** (Free) | 100 requests/min | Exploring the API, hobby projects |
| **Cronenberg** (Paid) | 1,000 requests/min | Apps and integrations |
| **Pickle Rick** (Paid) | 10,000 requests/min | Production workloads, interdimensional scale |
Want to test a paid plan? Use the test card number `4242 4242 4242 4242` with any future expiry date and any CVC.
## 3. Get your API key
After subscribing, your API key will be available in the Developer Portal. Copy it — you'll include it as a Bearer token in every request.
## 4. Make your first request
Replace `YOUR_API_KEY` with the key from your dashboard:
```bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters/1"
```
You should get back Rick Sanchez:
```json
{
"id": 1,
"name": "Rick Sanchez",
"status": "Alive",
"species": "Human",
"type": "",
"gender": "Male",
"origin": {
"name": "Earth (C-137)",
"url": "https://api.rickandmorty.zuplo.io/v1/locations/1"
},
"location": {
"name": "Citadel of Ricks",
"url": "https://api.rickandmorty.zuplo.io/v1/locations/3"
},
"image": "https://api.rickandmorty.zuplo.io/v1/characters/avatar/1.jpeg"
}
```
All requests require a valid API key sent as a **Bearer token** in the `Authorization` header. Requests without a valid key will return a `401 Unauthorized` response.
## Base URL
All API endpoints are served from:
```
https://api.rickandmorty.zuplo.io/v1
```
## Pagination
List endpoints return paginated results with 20 items per page. The response includes an `info` object with pagination metadata:
```json
{
"info": {
"count": 826,
"pages": 42,
"next": "https://api.rickandmorty.zuplo.io/v1/characters?page=2",
"prev": null
},
"results": [...]
}
```
Use the `page` query parameter to navigate: `?page=2`, `?page=3`, etc.
## Next steps
- [Characters Guide](/characters) — explore character data and filtering
- [Locations Guide](/locations) — browse the multiverse
- [Episodes Guide](/episodes) — find episodes and their casts
- [API Reference](/api) — full interactive API documentation
---
## Document: Episodes
Guide to the Episodes endpoint — data model, episode codes, filtering, and examples
URL: /episodes
# Episodes
The Episodes endpoint provides data on every episode of Rick and Morty — across all seasons. Each episode includes its air date, episode code, and a list of every character that appears in it.
## Data model
Each episode object contains the following fields:
| Field | Type | Description |
|-------|------|-------------|
| `id` | integer | Unique identifier |
| `name` | string | Episode title |
| `air_date` | string | Original air date (e.g., `December 2, 2013`) |
| `episode` | string | Episode code in `SxxExx` format (e.g., `S01E01`) |
| `characters` | array | List of character URLs that appear in this episode |
| `url` | string | URL to the episode's own endpoint |
| `created` | string | ISO 8601 timestamp when the record was created |
## Episode codes
Episodes follow the standard `SxxExx` format:
- `S01E01` — Season 1, Episode 1 ("Pilot")
- `S03E07` — Season 3, Episode 7 ("The Ricklantis Mixup")
- `S05E10` — Season 5, Episode 10 ("Rickmurai Jack")
This makes it easy to filter by season or find specific episodes programmatically.
## Get all episodes
```bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/episodes"
```
Returns a paginated list of all episodes (20 per page).
## Get a single episode
```bash
# Get "The Ricklantis Mixup" (S03E07)
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/episodes/28"
```
## Get multiple episodes
```bash
# Get the first three episodes
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/episodes/1,2,3"
```
## Filtering
Filter episodes using query parameters:
| Parameter | Type | Example Values |
|-----------|------|---------------|
| `name` | string | `pilot`, `ricklantis`, `pickle rick` |
| `episode` | string | `s01e01`, `s03`, `e07` |
### Filter examples
```bash
# Find all Season 1 episodes
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/episodes?episode=s01"
```
```bash
# Search for episodes by name
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/episodes?name=pickle"
```
The `episode` filter supports partial matching — use `s01` to get all of Season 1, or `e01` to get the first episode of every season.
## Notable episodes
| ID | Code | Name | Air Date |
|----|------|------|----------|
| 1 | S01E01 | Pilot | December 2, 2013 |
| 6 | S01E06 | Rick Potion #9 | January 27, 2014 |
| 22 | S03E03 | Pickle Rick | August 6, 2017 |
| 28 | S03E07 | The Ricklantis Mixup | September 10, 2017 |
| 31 | S03E10 | The Rickchurian Mortydate | October 1, 2017 |
| 41 | S04E10 | Star Mort Rickturn of the Jerri | May 31, 2020 |
## Working with character lists
Each episode includes a `characters` array with URLs to every character that appears in it. This is useful for building episode guides or character appearance trackers:
```json
{
"id": 28,
"name": "The Ricklantis Mixup",
"episode": "S03E07",
"characters": [
"https://api.rickandmorty.zuplo.io/v1/characters/1",
"https://api.rickandmorty.zuplo.io/v1/characters/2",
"https://api.rickandmorty.zuplo.io/v1/characters/4",
"..."
]
}
```
## Next steps
- [Characters Guide](/characters) — look up the characters from any episode
- [Locations Guide](/locations) — explore where episodes take place
- [API Reference](/api) — try the Episodes endpoints interactively
---
## Document: Characters
Guide to the Characters endpoint — data model, filtering, and examples
URL: /characters
# Characters
The Characters endpoint gives you access to every character in the Rick and Morty universe — all 826+ of them. From the genius-level alcoholic scientist Rick Sanchez to the interdimensional cable TV hosts, they're all here.
## Data model
Each character object contains the following fields:
| Field | Type | Description |
|-------|------|-------------|
| `id` | integer | Unique identifier |
| `name` | string | Character name |
| `status` | string | `Alive`, `Dead`, or `unknown` |
| `species` | string | Species (e.g., `Human`, `Alien`, `Robot`) |
| `type` | string | Sub-type or subspecies (can be empty) |
| `gender` | string | `Female`, `Male`, `Genderless`, or `unknown` |
| `origin` | object | `{ name, url }` — the character's origin location |
| `location` | object | `{ name, url }` — the character's last known location |
| `image` | string | URL to the character's image (300x300px) |
| `episode` | array | List of episode URLs the character appears in |
| `url` | string | URL to the character's own endpoint |
| `created` | string | ISO 8601 timestamp when the record was created |
## Get all characters
```bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters"
```
Returns a paginated list of all characters (20 per page).
## Get a single character
```bash
# Get Rick Sanchez
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters/1"
```
## Get multiple characters
Request multiple characters by ID in a single call:
```bash
# Get Rick, Morty, and Summer
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters/1,2,3"
```
## Filtering
Filter characters using query parameters. All filters are case-insensitive and use partial matching for string fields.
| Parameter | Type | Example Values |
|-----------|------|---------------|
| `name` | string | `rick`, `morty`, `pickle` |
| `status` | string | `alive`, `dead`, `unknown` |
| `species` | string | `human`, `alien`, `robot` |
| `type` | string | `parasite`, `robot` |
| `gender` | string | `female`, `male`, `genderless`, `unknown` |
### Filter examples
```bash
# Find all alive humans named "Rick"
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters?name=rick&status=alive&species=human"
```
```bash
# Find all dead characters
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters?status=dead"
```
```bash
# Find all Pickle-type characters (you know which one)
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.rickandmorty.zuplo.io/v1/characters?name=pickle"
```
Combine multiple filters to narrow your search. The API returns all characters that match **all** provided filters.
## Notable characters
Here are some fan favorites to get you started:
| ID | Name | Species | Status |
|----|------|---------|--------|
| 1 | Rick Sanchez | Human | Alive |
| 2 | Morty Smith | Human | Alive |
| 3 | Summer Smith | Human | Alive |
| 118 | Evil Morty | Human | Alive |
| 265 | Pickle Rick | Alien | Alive |
| 244 | Mr. Poopybutthole | Unknown | Alive |
## Next steps
- [Locations Guide](/locations) — where do these characters live?
- [Episodes Guide](/episodes) — which episodes do they appear in?
- [API Reference](/api) — try the Characters endpoints interactively