JSON a Kotlin Data Class

Convierte datos JSON en data classes de Kotlin con anotaciones @SerializedName, manejo de nulos e inferencia de tipos anidados

Datos clave

Categoría
Desarrollo y Web
Tipos de entrada
textarea, text, checkbox
Tipo de salida
text
Cobertura de muestras
4
API disponible
Yes

Resumen

Esta herramienta te permite convertir de forma instantánea cualquier estructura de datos JSON en data classes de Kotlin limpias y fuertemente tipadas. Facilita la integración de APIs en tus proyectos de Kotlin o Android al generar automáticamente las clases necesarias con soporte para anotaciones de serialización, inferencia de tipos anidados y control de nulabilidad.

Cuándo usarlo

  • Al integrar APIs REST en aplicaciones Android o backend escritas en Kotlin.
  • Cuando necesitas generar modelos de datos estructurados a partir de respuestas JSON complejas de forma rápida.
  • Al configurar serializadores como Gson que requieren mapeo de nombres con anotaciones @SerializedName.

Cómo funciona

  • Pega el código JSON en el campo de entrada de texto.
  • Define el nombre de la clase raíz y selecciona si deseas que las propiedades sean anulables (nullable).
  • El convertidor analiza la estructura del JSON, infiere los tipos de datos y genera el código de las data classes de Kotlin correspondientes.

Casos de uso

Desarrollo de aplicaciones Android que consumen servicios web y requieren modelos de datos rápidos.
Migración de código heredado o respuestas de APIs a proyectos basados en Kotlin.
Creación de esquemas de datos tipados para pruebas unitarias a partir de payloads JSON reales.

Ejemplos

1. Modelado de perfil de usuario para Android

Desarrollador Android
Contexto
Está integrando un endpoint de perfil de usuario que devuelve información detallada con objetos anidados.
Problema
Escribir manualmente las clases de datos de Kotlin para un JSON con múltiples niveles de anidamiento consume mucho tiempo y es propenso a errores de tipado.
Cómo usarlo
Pega el JSON del perfil de usuario en el cuadro de texto, define 'UserProfile' como nombre de la clase raíz y activa la opción de propiedades anulables.
Configuración de ejemplo
jsonInput: {"id": 101, "username": "dev_user", "profile": {"avatar_url": "https://example.com/img.png", "bio": null}}, rootName: UserProfile, optionalFields: true
Resultado
Se generan las clases 'UserProfile' y 'Profile' en Kotlin con propiedades anulables y anotaciones @SerializedName listas para usar con Gson.

2. Mapeo de respuesta de API de productos

Desarrollador Backend Kotlin
Contexto
Necesita consumir un servicio externo de catálogo de productos que devuelve una lista de elementos con precios y categorías.
Problema
Crear la estructura de clases para mapear la lista de productos sin perder la consistencia de los tipos de datos numéricos y de texto.
Cómo usarlo
Introduce el JSON de respuesta de la API de productos, establece el nombre de la clase raíz como 'ProductResponse' y mantén las propiedades no anulables para campos obligatorios.
Configuración de ejemplo
jsonInput: {"status": "success", "items": [{"id": 1, "title": "Laptop", "price": 999.99}]}, rootName: ProductResponse, optionalFields: false
Resultado
Obtiene la clase 'ProductResponse' y la clase interna 'Items' mapeadas con tipos estrictos como Double, String e Int sin valores nulos.

Probar con muestras

json

Hubs relacionados

Preguntas frecuentes

¿Cómo maneja el convertidor los objetos anidados en el JSON?

Crea automáticamente clases de datos secundarias para cada objeto anidado detectado en la estructura jerárquica del JSON.

¿Qué hace la opción de propiedades anulables?

Define todas las variables generadas como tipos opcionales en Kotlin (añadiendo el signo '?'), permitiendo que contengan valores nulos.

¿Se incluyen anotaciones de serialización?

Sí, el generador incluye anotaciones @SerializedName para asegurar la compatibilidad con librerías de parseo como Gson.

¿Puedo cambiar el nombre de la clase principal?

Sí, puedes especificar el nombre de la clase raíz en el campo de configuración antes de realizar la conversión.

¿Soporta arreglos y listas de datos?

Sí, detecta arreglos en el JSON y los mapea a colecciones de tipo List en Kotlin con su respectivo tipo de dato inferido.

Documentación de la API

Punto final de la solicitud

POST /es/api/tools/json-to-kotlin

Parámetros de la solicitud

Nombre del parámetro Tipo Requerido Descripción
jsonInput textarea -
rootName text No -
optionalFields checkbox No -

Formato de respuesta

{
  "result": "Processed text content",
  "error": "Error message (optional)",
  "message": "Notification message (optional)",
  "metadata": {
    "key": "value"
  }
}
Texto: Texto

Documentación de MCP

Agregue este herramienta a su configuración de servidor MCP:

{
  "mcpServers": {
    "elysiatools-json-to-kotlin": {
      "name": "json-to-kotlin",
      "description": "Convierte datos JSON en data classes de Kotlin con anotaciones @SerializedName, manejo de nulos e inferencia de tipos anidados",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=json-to-kotlin",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Puede encadenar múltiples herramientas, por ejemplo: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, máximo 20 herramientas.

Si encuentra algún problema, por favor, póngase en contacto con nosotros en [email protected]