# Cuatro endpoints nuevos para leer y estructurar la web

**Publicado:** 9 de agosto de 2026 | **Autores:** Cristian Correa

---

La API de Croma ya no solo responde por fuentes oficiales. Desde hoy puedes pasarle una URL o una pregunta y recibir contenido listo para usar en tu producto.

Son cuatro endpoints, todos bajo `/global`, todos con el mismo esquema de autenticación y de errores que el resto de la API.

## Extraer una página como markdown

`POST /global/extract/markdown/v1` devuelve el contenido legible de una página, sin navegación, sin banners y sin scripts.

```bash
curl https://api.croma.run/global/extract/markdown/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://ejemplo.gov.co/resolucion-1234",
    "scope": "main"
  }'
```



## Extraer campos con un esquema

`POST /global/extract/json/v1` recibe un JSON Schema y devuelve exactamente esos campos. Útil cuando ya sabes qué necesitas y no quieres parsear texto.

```bash
curl https://api.croma.run/global/extract/json/v1 \
  -H "Authorization: Bearer $CROMA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://ejemplo.gov.co/resolucion-1234",
    "json_schema": {
      "type": "object",
      "properties": {
        "numero": { "type": "string" },
        "fecha": { "type": "string" },
        "entidad": { "type": "string" }
      },
      "required": ["numero", "fecha"]
    }
  }'
```

Si

```json
{
  "error": {
    "type": "invalid_request_error",
    "code": "invalid_param",
    "param": "json_schema",
    "message": "`json_schema` was rejected. It must be a valid JSON Schema object describing the fields you want."
  }
}
```



`POST /global/generate/json/v1` no necesita una URL. Le das una instrucción y un esquema, y devuelve el objeto. Los detalles están en [generate](https://docs.usecroma.com/guides/global/generate).

## Investigación con fuentes

`POST /global/research/v1` recibe una pregunta y devuelve un informe con las fuentes que consultó y cuántas páginas analizó. Es el endpoint más lento de la API y tiene su propio límite, explicado en [research](https://docs.usecroma.com/guides/global/research).

## Límites

| Endpoint | Límite por organización |
| --- | --- |
| `/global/extract/markdown/v1` | 60 solicitudes / hora |
| `/global/extract/json/v1` | 60 solicitudes / hora |
| `/global/generate/json/v1` | 60 solicitudes / hora |
| `/global/research/v1` | 10 solicitudes / hora |

Los cuatro están disponibles también como herramientas MCP, así que tu asistente puede llamarlos sin que escribas código. La referencia completa está en la [documentación](https://docs.usecroma.com).

## Por qué viven en la misma API

Consultar un registro público casi nunca es el trabajo completo. Encuentras la resolución, y después hay que leerla, sacarle tres campos, resumirla y cruzarla con lo que ya tenías. Ese pedazo casi siempre termina resuelto con un proveedor aparte: otra llave, otro contrato, otro formato de errores, otra factura.

Nos parece que no tiene por qué ser así. Ya tienes una llave nuestra y ya sabes cómo respondemos cuando algo sale mal. Estos cuatro endpoints usan exactamente eso: el mismo `Authorization`, el mismo esquema de errores, los mismos límites por organización. Integrarlos es leer una página de documentación, no arrancar una evaluación de vendors.

Ahí está la ventaja real de haber construido esto nosotros. Cada capacidad que agregamos entra por la misma puerta y le sirve a todo lo que ya tienes conectado, en lugar de sumar una pieza más que mantener.

Vamos a seguir por ese camino. Si hay algo que hoy resuelves con un servicio aparte y que tendría sentido pedirle a la misma API, [cuéntanos](/support): esa lista es la que estamos usando para decidir qué sigue.

---

**Más novedades:** [Ver todas las entradas del changelog](/es/changelog/sitemap.md) | [Croma](https://usecroma.com)
