Documentación
Introducción
La Gumball API es una API REST gratuita y de solo lectura con datos sobre El Increíble Mundo de Gumball y The Wonderfully Weird World of Gumball. Ofrece personajes, lugares, episodios, temporadas, canciones, juegos y medios del universo de la serie en formato JSON.
No hay autenticación, clave de API ni registro. Todas las rutas son solicitudes GET, así que puedes llamarlas desde el navegador, un servidor o la terminal. Abre cualquier panel Probar de esta página para enviar una solicitud real y ver la respuesta.
El contenido que devuelve la API, como nombres, títulos y descripciones, está en inglés.
URL base
Todas las solicitudes comienzan con la URL base de abajo. Su raíz enumera todos los recursos disponibles, por lo que es una excelente primera solicitud.
https://gumball-api-server.vercel.app/{
"name": "The Amazing World of Gumball API",
"description": "A free, read-only REST API about The Amazing World of Gumball and The Wonderfully Weird World of Gumball. No authentication required.",
"resources": {
"characters": "/characters",
"locations": "/locations",
"episodes": "/episodes",
"seasons": "/seasons",
"songs": "/songs",
"games": "/games",
"media": "/media"
}
}Límite de solicitudes y caché
Cada dirección IP puede hacer hasta 100 solicitudes por minuto. Cada respuesta informa tu consumo actual en los encabezados de abajo. Al alcanzar el límite, la API responde con 429 Too Many Requests hasta que se reinicie la ventana.
| Encabezado | Tipo | Descripción |
|---|---|---|
| X-RateLimit-Limit | integer | Solicitudes permitidas por minuto. |
| X-RateLimit-Remaining | integer | Solicitudes restantes en la ventana actual. |
| X-RateLimit-Reset | integer | Segundos hasta que se reinicie la ventana. |
Las listas y los elementos individuales se guardan en caché durante 5 minutos con Cache-Control: public, así que las solicitudes repetidas son rápidas. Las rutas aleatorias nunca usan caché. Siempre que sea posible, guarda las respuestas en caché de tu lado también.
Información y paginación
Las rutas de listado devuelven 20 elementos por página de forma predeterminada. Usa page y limit para recorrer los resultados. Además de los elementos en data, cada respuesta de listado incluye meta, con los totales, y links, con rutas listas para usar hacia las demás páginas.
| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| Clave | Tipo | Descripción |
|---|---|---|
| data | array | Los elementos de la página actual. |
| meta.page | integer | La página actual, a partir de 1. |
| meta.limit | integer | La cantidad de elementos por página. |
| meta.totalItems | integer | El total de elementos. |
| meta.totalPages | integer | El total de páginas. |
| meta.hasNextPage | boolean | Indica si existe una página siguiente. |
| meta.hasPreviousPage | boolean | Indica si existe una página anterior. |
| links.self | string | La ruta de la página actual. |
| links.first | string | La ruta de la primera página. |
| links.previous | string | null | La ruta de la página anterior, si existe. |
| links.next | string | null | La ruta de la página siguiente, si existe. |
| links.last | string | La ruta de la última página. |
{
"data": [
{
"id": 3,
"slug": "anais-watterson",
"name": "Anais Watterson",
"fullName": "Anais Watterson",
"aliases": [
"Jimmy",
"Runtus Decepticus",
"The Anaihilator",
"Clever Girl",
"Pink One"
],
"description": "The youngest member of the Watterson family and, by far, its most intelligent. Despite being only four years old, she speaks with an advanced vocabulary and attends Elmore Junior High in a higher grade than her older brothers, Gumball and Darwin.",
"species": "Rabbit",
"gender": "female",
"age": 4,
"occupation": "Student",
"role": "main",
"status": "alive",
"animationStyle": "2d",
"voiceActors": [
"Kyla Kowalewski",
"Kinza Syed Khan"
],
"firstAppearance": {
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"code": "S01E01",
"url": "/episodes/1"
},
"colors": [
"#f9b6ba",
"#ffffff"
],
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/characters/anais-watterson.webp",
"url": "/characters/3",
"createdAt": "2026-09-30T03:52:12.603Z",
"updatedAt": "2026-09-30T13:59:03.490Z"
},
{
"id": 4,
"slug": "nicole-watterson",
"name": "Nicole Watterson",
"fullName": "Nicole Watterson",
"aliases": [
"Nicole Senicourt",
"Mom"
],
"description": "The mother of the Watterson family and its only truly responsible member. She works hard to support her family, is fiercely devoted to keeping them safe, and has a famously explosive temper when pushed too far.",
"species": "Cat",
"gender": "female",
"age": 38,
"occupation": "Rainbow Factory employee",
"role": "main",
"status": "alive",
"animationStyle": "2d",
"voiceActors": [
"Teresa Gallagher"
],
"firstAppearance": {
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"code": "S01E01",
"url": "/episodes/1"
},
"colors": [
"#4bc5e5",
"#f7f7f7",
"#989377",
"#3c5c61",
"#d2d4d3"
],
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/characters/nicole-watterson.webp",
"url": "/characters/4",
"createdAt": "2026-09-30T03:52:12.603Z",
"updatedAt": "2026-09-30T13:59:03.490Z"
}
],
"meta": {
"page": 2,
"limit": 2,
"totalItems": 245,
"totalPages": 123,
"hasNextPage": true,
"hasPreviousPage": true
},
"links": {
"self": "/characters?page=2&limit=2",
"first": "/characters?page=1&limit=2",
"previous": "/characters?page=1&limit=2",
"next": "/characters?page=3&limit=2",
"last": "/characters?page=123&limit=2"
}
}Ordenamiento
Usa el parámetro sort con el nombre de un campo para orden ascendente, o agrega - delante para orden descendente. Los elementos sin valor en ese campo siempre aparecen al final. Cada recurso documenta los campos por los que se puede ordenar.
GET /characters?sort=-name
GET /episodes?sort=usAirDateFiltros
Todas las rutas de listado aceptan filtros como query parameters, y se pueden combinar libremente. Algunas reglas se aplican a todos los recursos:
searchhace una búsqueda parcial por nombre o título, sin distinguir mayúsculas de minúsculas.- Los valores de enum van en minúsculas y en kebab-case, como
stop-motionoschool-facility. idsrecibe una lista separada por comas, comoids=1,2,3, para obtener varios elementos a la vez.- Los parámetros desconocidos o inválidos se rechazan con
400 Bad Request, así que ningún error de escritura pasa desapercibido.
GET /characters?species=cat&status=alive&sort=nameRecursos relacionados
Los recursos se enlazan entre sí mediante pequeños objetos de referencia en lugar de ids sueltos. Cada referencia incluye una url con la ruta al elemento completo.
EpisodeReference
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id del episodio. |
| slug | string | El slug del episodio. |
| title | string | El título del episodio. |
| code | string | null | Código de temporada y episodio, como |
| url | string | La ruta del episodio. |
CharacterReference
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id del personaje. |
| slug | string | El slug del personaje. |
| name | string | El nombre del personaje. |
| url | string | La ruta del personaje. |
LocationReference
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id del lugar. |
| slug | string | El slug del lugar. |
| name | string | El nombre del lugar. |
| url | string | La ruta del lugar. |
Imágenes
Las imágenes se sirven en formato WebP desde una CDN pública, en el campo image de cada elemento. Son de alta calidad y la mayoría de las imágenes de personajes tienen fondo transparente, así que combinan con cualquier color.
Errores
Los errores usan los códigos de estado HTTP estándar y siempre devuelven el mismo formato de JSON.
| Clave | Tipo | Descripción |
|---|---|---|
| statusCode | integer | El código de estado HTTP. |
| error | string | El texto del estado HTTP. |
| message | string | string[] | Qué salió mal. Los errores de validación enumeran todos los problemas. |
| path | string | La ruta solicitada. |
| timestamp | datetime | Cuándo ocurrió el error. |
{
"statusCode": 404,
"error": "Not Found",
"message": "Character with id 9999 not found",
"path": "/characters/9999",
"timestamp": "2026-10-01T12:00:00.000Z"
}| Estado | Significado |
|---|---|
| 200 | La solicitud se completó correctamente. |
| 400 | Un id, slug o query parameter no es válido. |
| 404 | El elemento o la ruta no existe. |
| 429 | Se superó el límite de solicitudes. Espera a que se reinicie la ventana. |
| 500 | Algo salió mal de nuestro lado. |
Personajes
Todos los personajes con nombre de la serie, desde la familia Watterson hasta los habitantes de Elmore que aparecen en un solo episodio.
245 personajes disponibles.
Esquema de personaje
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único del personaje. |
| slug | string | Identificador único y apto para URLs del personaje. |
| name | string | El nombre por el que se conoce al personaje. |
| fullName | string | null | El nombre completo, cuando se conoce. |
| aliases | string[] | Apodos y nombres alternativos. |
| description | string | null | Una descripción breve. |
| species | string | null | La especie o el tipo de ser, como |
| gender | enum | El género del personaje.
|
| age | integer | null | La edad en años, cuando se menciona en la serie. |
| occupation | string | null | La ocupación principal. |
| role | enum | La importancia del personaje en la serie.
|
| status | enum | Si el personaje está vivo.
|
| animationStyle | enum | Cómo está animado el personaje.
|
| voiceActors | string[] | Los actores que dieron voz al personaje. |
| firstAppearance | EpisodeReference | null | El episodio en el que el personaje aparece por primera vez. |
| colors | string[] | Los colores principales del personaje, en hexadecimal. |
| image | string | URL de la imagen del personaje (WebP). |
| url | string | La ruta del personaje en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todos los personajes
Devuelve una lista paginada de personajes, con 20 por página de forma predeterminada.
/characters| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener un personaje
Devuelve un personaje por su id numérico.
/characters/{id}{
"id": 1,
"slug": "gumball-watterson",
"name": "Gumball Watterson",
"fullName": "Gumball Tristopher Watterson",
"aliases": [
"Gummypuss",
"G-Ball",
"Zach"
],
"description": "The protagonist of the series: a twelve-year-old blue cat who attends Elmore Junior High with his adoptive brother Darwin and his sister Anais. Energetic, impulsive and endlessly overconfident, he constantly gets his family into absurd situations, and he starts dating Penny as of \"The Shell.\"",
"species": "Cat",
"gender": "male",
"age": 12,
"occupation": "Student",
"role": "main",
"status": "alive",
"animationStyle": "2d",
"voiceActors": [
"Logan Grove",
"Jacob Hopkins",
"Nicolas Cantu",
"Duke Cutler",
"Alkaio Thiele"
],
"firstAppearance": {
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"code": "S01E01",
"url": "/episodes/1"
},
"colors": [
"#4ac2e4",
"#ffffff",
"#3e5156",
"#f4d8b2"
],
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/characters/gumball-watterson.webp",
"url": "/characters/1",
"createdAt": "2026-09-30T03:52:12.603Z",
"updatedAt": "2026-09-30T13:59:03.490Z"
}Obtener un personaje por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/characters/slug/{slug}Obtener personajes aleatorios
Devuelve una selección aleatoria de personajes. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/characters/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 20. El valor predeterminado es 1. |
Filtrar personajes
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por nombre y nombre completo, sin distinguir mayúsculas de minúsculas. |
| species | string | Especie exacta, sin distinguir mayúsculas de minúsculas. |
| gender | enum | Filtra por género.
|
| role | enum | Filtra por importancia en la serie.
|
| status | enum | Filtra por estado.
|
| animationStyle | enum | Filtra por estilo de animación.
|
| voiceActor | string | Nombre exacto de uno de los actores de voz. |
| firstAppearanceId | integer | Id del episodio en el que aparece por primera vez. |
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /characters?species=cat&role=mainLugares
Los lugares del universo de Gumball, organizados en jerarquía: un aula pertenece a una escuela, que pertenece a Elmore.
112 lugares disponibles.
Esquema de lugar
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único del lugar. |
| slug | string | Identificador único y apto para URLs del lugar. |
| name | string | El nombre del lugar. |
| description | string | null | Una descripción breve. |
| type | enum | El tipo de lugar.
|
| parent | LocationReference | null | El lugar que contiene a este. |
| firstAppearance | EpisodeReference | null | El episodio en el que el lugar aparece por primera vez. |
| image | string | URL de la imagen del lugar (WebP). |
| url | string | La ruta del lugar en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todos los lugares
Devuelve una lista paginada de lugares, con 20 por página de forma predeterminada.
/locations| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener un lugar
Devuelve un lugar por su id numérico.
/locations/{id}{
"id": 1,
"slug": "elmore",
"name": "Elmore",
"description": "The fictional California town where most of the series takes place, with an estimated \"weird\" population of 20,000. It works much like any other town, except that anything in it, from food to furniture, can come to life.",
"type": "town",
"parent": null,
"firstAppearance": {
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"code": "S01E01",
"url": "/episodes/1"
},
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/locations/elmore.webp",
"url": "/locations/1",
"createdAt": "2026-09-30T04:25:12.603Z",
"updatedAt": "2026-09-30T13:59:03.490Z"
}Obtener un lugar por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/locations/slug/{slug}Obtener lugares aleatorios
Devuelve una selección aleatoria de lugares. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/locations/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 20. El valor predeterminado es 1. |
Filtrar lugares
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por nombre, sin distinguir mayúsculas de minúsculas. |
| type | enum | Filtra por tipo.
|
| parentId | integer | Id del lugar que contiene a este. |
| firstAppearanceId | integer | Id del episodio en el que aparece por primera vez. |
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /locations?type=school-facilityEpisodios
Todos los episodios, especiales, cortos y pilotos, con fechas de emisión, créditos y enlaces al episodio anterior y al siguiente.
305 episodios disponibles.
Esquema de episodio
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único del episodio. |
| slug | string | Identificador único y apto para URLs del episodio. |
| title | string | El título del episodio. |
| description | string | null | Una sinopsis breve. |
| series | enum | La serie a la que pertenece el episodio.
|
| type | enum | El tipo de episodio.
|
| status | enum | Si el episodio se estrenó.
|
| season | integer | null | El número de la temporada. |
| episodeNumber | integer | null | El número del episodio dentro de su temporada. |
| overallNumber | integer | null | El número del episodio en toda la serie. |
| code | string | null | Código de temporada y episodio, como |
| productionCode | string | null | El código de producción. |
| usAirDate | date | null | Fecha de la primera emisión en EE. UU. |
| ukAirDate | date | null | Fecha de la primera emisión en el Reino Unido. |
| writers | string[] | Los guionistas del episodio. |
| storyboardArtists | string[] | Los artistas de storyboard del episodio. |
| previous | EpisodeReference | null | El episodio anterior en orden. |
| next | EpisodeReference | null | El episodio siguiente en orden. |
| image | string | URL de la imagen del episodio (WebP). |
| url | string | La ruta del episodio en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todos los episodios
Devuelve una lista paginada de episodios, con 20 por página de forma predeterminada.
/episodes| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener un episodio
Devuelve un episodio por su id numérico.
/episodes/{id}{
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"description": "Gumball and Darwin will do anything to avoid paying the late fee on an overdue DVD, no matter how extreme their schemes get.",
"series": "amazing-world",
"type": "episode",
"status": "released",
"season": 1,
"episodeNumber": 1,
"overallNumber": 1,
"code": "S01E01",
"productionCode": null,
"usAirDate": "2011-05-03",
"ukAirDate": "2011-09-05",
"writers": [
"Ben Bocquelet",
"Jon Foster",
"James Lamont"
],
"storyboardArtists": [
"Benjamin Marsaud"
],
"previous": null,
"next": {
"id": 2,
"slug": "the-responsible",
"title": "The Responsible",
"code": "S01E02",
"url": "/episodes/2"
},
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/episodes/the-dvd.webp",
"url": "/episodes/1",
"createdAt": "2026-09-30T05:03:47.171Z",
"updatedAt": "2026-09-30T05:03:47.171Z"
}Obtener un episodio por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/episodes/slug/{slug}Obtener episodios aleatorios
Devuelve una selección aleatoria de episodios. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/episodes/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 20. El valor predeterminado es 1. |
Filtrar episodios
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por título, sin distinguir mayúsculas de minúsculas. |
| series | enum | Filtra por serie.
|
| type | enum | Filtra por tipo.
|
| status | enum | Filtra por estado.
|
| season | integer | Número de la temporada. |
| writer | string | Nombre exacto de uno de los guionistas. |
| storyboardArtist | string | Nombre exacto de uno de los artistas de storyboard. |
| airedFrom | date | Emitido en EE. UU. desde esta fecha ( |
| airedTo | date | Emitido en EE. UU. hasta esta fecha ( |
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /episodes?season=1&sort=-usAirDateTemporadas
Las seis temporadas de El Increíble Mundo de Gumball y las temporadas de The Wonderfully Weird World of Gumball.
8 temporadas disponibles.
Esquema de temporada
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único de la temporada. |
| slug | string | Identificador único y apto para URLs de la temporada. |
| number | integer | El número de la temporada considerando ambas series. |
| title | string | El título de la temporada. |
| description | string | null | Un resumen breve. |
| series | enum | La serie a la que pertenece la temporada.
|
| seriesSeasonNumber | integer | El número de la temporada dentro de su serie. |
| status | enum | Si la temporada terminó, está en emisión o aún no se estrena.
|
| episodeCount | integer | null | La cantidad prevista de episodios. |
| releasedEpisodeCount | integer | La cantidad de episodios ya estrenados. |
| networks | string[] | Los canales que la emitieron. |
| usPremiereDate | date | null | Fecha de estreno en EE. UU. |
| usFinaleDate | date | null | Fecha del último episodio en EE. UU. |
| ukPremiereDate | date | null | Fecha de estreno en el Reino Unido. |
| ukFinaleDate | date | null | Fecha del último episodio en el Reino Unido. |
| episodes | string | Ruta que enumera los episodios de la temporada. |
| image | string | URL de la imagen de la temporada (WebP). |
| url | string | La ruta de la temporada en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todas las temporadas
Devuelve una lista paginada de temporadas, con 20 por página de forma predeterminada.
/seasons| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener una temporada
Devuelve una temporada por su id numérico.
/seasons/{id}{
"id": 1,
"slug": "season-1",
"number": 1,
"title": "Season 1",
"description": "The debut season of The Amazing World of Gumball, introducing Gumball, Darwin and the rest of the Watterson family. It premiered in the US on May 3, 2011 with \"The DVD\" and wrapped up 36 episodes later with \"The Fight.\"",
"series": "amazing-world",
"seriesSeasonNumber": 1,
"status": "completed",
"episodeCount": 36,
"releasedEpisodeCount": 36,
"networks": [
"Cartoon Network"
],
"usPremiereDate": "2011-05-03",
"usFinaleDate": "2012-03-13",
"ukPremiereDate": "2011-09-05",
"ukFinaleDate": "2012-04-01",
"episodes": "/episodes?season=1",
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/seasons/season-1.webp",
"url": "/seasons/1",
"createdAt": "2026-09-30T13:34:03.707Z",
"updatedAt": "2026-09-30T13:34:03.707Z"
}Obtener una temporada por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/seasons/slug/{slug}Obtener temporadas aleatorias
Devuelve una selección aleatoria de temporadas. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/seasons/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 10. El valor predeterminado es 1. |
Filtrar temporadas
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por título, sin distinguir mayúsculas de minúsculas. |
| series | enum | Filtra por serie.
|
| status | enum | Filtra por estado.
|
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /seasons?series=amazing-worldCanciones
Las canciones interpretadas en la serie, desde el tema de apertura hasta los números musicales de cada episodio.
156 canciones disponibles.
Esquema de canción
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único de la canción. |
| slug | string | Identificador único y apto para URLs de la canción. |
| title | string | El título de la canción. |
| description | string | null | Una descripción breve. |
| type | enum | El tipo de canción.
|
| episode | EpisodeReference | null | El episodio en el que se interpreta la canción. |
| characters | CharacterReference[] | Los personajes que la cantan. |
| vocalists | string[] | Los intérpretes reales. |
| genres | string[] | Géneros musicales. |
| duration | string | null | Duración con formato |
| durationSeconds | integer | null | Duración en segundos. |
| musicalKey | string | null | La tonalidad musical. |
| image | string | null | URL de la imagen de la canción (WebP). |
| url | string | La ruta de la canción en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todas las canciones
Devuelve una lista paginada de canciones, con 20 por página de forma predeterminada.
/songs| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener una canción
Devuelve una canción por su id numérico.
/songs/{id}{
"id": 1,
"slug": "opening-theme",
"title": "Opening theme",
"description": "The theme song of the series. Most countries air the full introduction, while the United States usually airs a shortened version. The Wonderfully Weird World of Gumball introduced a new version.",
"type": "theme",
"episode": {
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"code": "S01E01",
"url": "/episodes/1"
},
"characters": [],
"vocalists": [],
"genres": [],
"duration": "0:20",
"durationSeconds": 20,
"musicalKey": "G major",
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/songs/opening-theme.webp",
"url": "/songs/1",
"createdAt": "2026-09-30T13:47:38.110Z",
"updatedAt": "2026-09-30T13:47:38.110Z"
}Obtener una canción por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/songs/slug/{slug}Obtener canciones aleatorias
Devuelve una selección aleatoria de canciones. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/songs/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 20. El valor predeterminado es 1. |
Filtrar canciones
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por título, sin distinguir mayúsculas de minúsculas. |
| type | enum | Filtra por tipo.
|
| episodeId | integer | Id del episodio. |
| season | integer | Número de temporada del episodio. |
| characterId | integer | Id de un personaje que la canta. |
| vocalist | string | Nombre exacto de uno de los intérpretes. |
| genre | string | Nombre exacto de uno de los géneros. |
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /songs?characterId=1&sort=-durationSecondsJuegos
Juegos oficiales ambientados exclusivamente en el universo de Gumball, desde juegos de navegador hasta apps móviles.
81 juegos disponibles.
Esquema de juego
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único del juego. |
| slug | string | Identificador único y apto para URLs del juego. |
| title | string | El título del juego. |
| description | string | null | Una descripción breve. |
| platforms | enum[] | Las plataformas en las que se lanzó el juego.
|
| status | enum | Si el juego sigue disponible.
|
| releaseDate | date | null | La fecha de lanzamiento. |
| releaseYear | integer | null | El año de lanzamiento. |
| developers | string[] | Los estudios detrás del juego. |
| image | string | URL de la imagen del juego (WebP). |
| url | string | La ruta del juego en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todos los juegos
Devuelve una lista paginada de juegos, con 20 por página de forma predeterminada.
/games| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener un juego
Devuelve un juego por su id numérico.
/games/{id}{
"id": 1,
"slug": "school-house-rush",
"title": "School House Rush",
"description": "A 2D side-scrolling platformer in which Gumball and Darwin save students trapped in a flooded Elmore Junior High and fix the broken pipe outside.",
"platforms": [
"web"
],
"status": "discontinued",
"releaseDate": "2012-01-30",
"releaseYear": 2012,
"developers": [],
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/games/school-house-rush.webp",
"url": "/games/1",
"createdAt": "2026-09-30T16:15:16.273Z",
"updatedAt": "2026-09-30T16:15:16.273Z"
}Obtener un juego por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/games/slug/{slug}Obtener juegos aleatorios
Devuelve una selección aleatoria de juegos. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/games/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 20. El valor predeterminado es 1. |
Filtrar juegos
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por título, sin distinguir mayúsculas de minúsculas. |
| platform | enum | Filtra por plataforma.
|
| status | enum | Filtra por estado.
|
| developer | string | Nombre exacto de uno de los estudios. |
| releaseYear | integer | Año de lanzamiento. |
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /games?platform=mobile&status=availableMedios
Películas, series, libros y juegos que existen dentro del universo de Gumball, muchos de ellos parodias de obras reales.
16 medios disponibles.
Esquema de medio
| Clave | Tipo | Descripción |
|---|---|---|
| id | integer | El id único del medio. |
| slug | string | Identificador único y apto para URLs del medio. |
| title | string | El título del medio. |
| description | string | null | Una descripción breve. |
| type | enum | El tipo de medio.
|
| parodyOf | string | null | La obra real que parodia. |
| firstAppearance | EpisodeReference | null | El episodio en el que aparece por primera vez. |
| image | string | URL de la imagen del medio (WebP). |
| url | string | La ruta del medio en la API, como |
| createdAt | datetime | Cuándo se agregó el elemento a la API, en ISO 8601. |
| updatedAt | datetime | Cuándo se actualizó el elemento por última vez, en ISO 8601. |
Obtener todos los medios
Devuelve una lista paginada de medios, con 20 por página de forma predeterminada.
/media| Parámetro | Tipo | Descripción |
|---|---|---|
| page | integer | La página que se devuelve, a partir de 1. |
| limit | integer | Elementos por página, de 1 a 100. El valor predeterminado es 20. |
| sort | string | Campo por el que se ordena. Agrega
|
Obtener un medio
Devuelve un medio por su id numérico.
/media/{id}{
"id": 1,
"slug": "alligators-on-a-train",
"title": "Alligators on a Train",
"description": "The action movie Nicole rents from Laser Video in \"The DVD.\" After Gumball accidentally ruins the disc, he and Darwin try to remake the entire film themselves to avoid paying the late fee.",
"type": "movie",
"parodyOf": "Snakes on a Plane",
"firstAppearance": {
"id": 1,
"slug": "the-dvd",
"title": "The DVD",
"code": "S01E01",
"url": "/episodes/1"
},
"image": "https://arturbomtempo-dev.github.io/arturbomtempo-cdn/assets/images/projects/gumball-api/in-universe-media/alligators-on-a-train.webp",
"url": "/media/1",
"createdAt": "2026-10-01T00:54:23.135Z",
"updatedAt": "2026-10-01T00:54:23.135Z"
}Obtener un medio por slug
Los slugs son identificadores estables y legibles, ideales para las URLs de tu propia app.
/media/slug/{slug}Obtener medios aleatorios
Devuelve una selección aleatoria de medios. Las respuestas aleatorias nunca usan caché, así que cada solicitud trae un resultado diferente.
/media/random| Parámetro | Tipo | Descripción |
|---|---|---|
| count | integer | Cuántos elementos devolver, de 1 a 20. El valor predeterminado es 1. |
Filtrar medios
Combina cualquiera de estos query parameters entre sí, con la paginación y con el ordenamiento.
| Parámetro | Tipo | Descripción |
|---|---|---|
| search | string | Búsqueda parcial por título, sin distinguir mayúsculas de minúsculas. |
| type | enum | Filtra por tipo.
|
| firstAppearanceId | integer | Id del episodio en el que aparece por primera vez. |
| ids | integer[] | Lista de ids separados por comas, hasta 100. |
| sort | string | Campo por el que se ordena. Agrega
|
GET /media?type=movie