API gratuita de precios del oro: qué dan 100 solicitudes al mes
Una API gratuita de precios del oro explicada con honestidad: qué incluye el plan Free de MetalAPI, cómo aprovechar 100 solicitudes al mes y cuándo cambiar.
¿Qué puede hacer de verdad una API gratuita de precios del oro?
Una API gratuita de precios del oro es la forma más rápida de poner precios reales del oro en un prototipo, un sitio web personal o un informe interno sin pasar por una orden de compra. También es fácil esperar demasiado de ella. Los planes gratuitos existen para que puedas crear y probar una integración y ejecutar cargas de trabajo pequeñas que necesitan un precio una vez al día. No están pensados para alimentar un proceso de compra que tenga que seguir el mercado minuto a minuto.
Este artículo describe el plan Free de MetalAPI tal como es, incluido lo que deja fuera. Después muestra cómo hacer que 100 solicitudes al mes cubran una cantidad sorprendente de trabajo y cómo saber cuándo se te ha quedado pequeño. Si comparas varios proveedores, la lista de comprobación del final sirve para cualquier API gratuita de metales.
¿Qué incluye el plan gratuito de MetalAPI?
El plan Free no cuesta nada y no requiere tarjeta de crédito. En resumen:
| Característica | Plan Free |
|---|---|
| Precio | 0 USD, sin tarjeta de crédito |
| Solicitudes | 100 al mes, se restablecen el día 1 a las 00:00 UTC |
| Límite por minuto | 10 solicitudes por minuto |
| Actualización de precios | Diaria: una instantánea a medianoche UTC |
| Símbolos | Los 83: oro, plata, platino, paladio, metales industriales, energía, 57 divisas y 13 criptomonedas |
| Endpoints | /latest, días históricos, /convert, /timeframe, /change y /ohlc |
| Historial | Completo: metales y energía desde 2000, divisas desde 1999, criptomonedas desde 2014 |
| Rango por solicitud | Hasta 30 días para /timeframe y /change |
| Divisas y unidades | Cualquier base y cualquier unit, como en todos los planes |
| Widgets | 1 widget integrable; sus visitas no consumen tu cuota |
| Soporte | Soporte de la comunidad |
Algunas funciones requieren un plan de pago:
- Precios del oro por quilate con
/carat: Lite y superiores. En Free puedes calcular igualmente los precios por quilate a partir del precio de 24K. - Precios bid y ask, como
XAU-BIDyXAU-ASK: Standard y superiores. - Alertas de precio: por correo electrónico desde Lite, por webhook desde Advanced.
- Streaming en tiempo real mediante Server-Sent Events: Pro y superiores.
- SLA de disponibilidad: Business y Enterprise.
Una solicitud a la API de algo que tu plan no incluye devuelve el error 106 (plan_restriction) con una upgrade_url, y esa solicitud no se factura. El plan Free también funciona con el servidor MCP de MetalAPI, así que un asistente de IA puede consultar precios del oro con tu cuota gratuita, con la misma actualización diaria.
¿Con qué frecuencia se actualiza una API gratuita de precios del oro?
La línea más importante de esa tabla es el intervalo de actualización. En Free, la API toma una instantánea de precios al día, a medianoche UTC, y todas las solicitudes a /latest hasta la siguiente medianoche devuelven esa instantánea. Una respuesta tiene este aspecto, con los valores de ejemplo de la documentación de MetalAPI:
{
"success": true,
"timestamp": 1792713600,
"date": "2026-10-23",
"base": "USD",
"rates": {
"XAU": 0.0002501319446,
"USDXAU": 3997.89
},
"rate_limit": {
"limit": 100,
"remaining": 99,
"reset": 1793491200,
"used": 1,
"plan": "Free",
"reset_date": "2026-11-01T00:00:00.000Z"
}
}USDXAU es el precio de una onza troy de oro en dólares, y XAU es su inversa. timestamp es la hora de los datos, aquí las 00:00 UTC del 23 de octubre de 2026, y el bloque rate_limit muestra cuánta cuota del mes queda.
De ello se derivan dos consecuencias. Primero, llamar a /latest más de una vez al día en Free gasta cuota sin devolver nunca un precio más reciente. Segundo, Free encaja en las tareas en las que un precio diario es el precio adecuado:
- Valoración diaria de tenencias, existencias o una cartera.
- Informes de cierre del día, boletines y paneles internos.
- Contabilidad y facturas que necesitan el precio del oro de un día concreto.
- Prototipos, proyectos de estudiantes y aprender a usar la API antes de elegir un plan.
No encaja en una tienda que actualiza el precio de sus productos de oro durante el día, en una pantalla de trading ni en nada que prometa a los clientes un precio en tiempo real.
¿Para cuánto dan 100 solicitudes al mes?
Cada llamada correcta a un endpoint de datos cuenta como una solicitud, independientemente de cuántos símbolos devuelva. Esa regla es la que hace viable una cuota pequeña. Un presupuesto mensual realista para un sitio pequeño:
| Tarea | Solicitudes al mes |
|---|---|
| Últimos precios de todos los símbolos que muestras, obtenidos una vez al día | 28–31 |
| Un año de historial diario del oro, un mes natural por solicitud (una sola vez) | 12 |
| Consultas históricas, por ejemplo el precio en la fecha de una factura | 10–20 |
| Desarrollo y pruebas | Lo que queda, unas 35 |
Compáralo con patrones que no encajan:
- Actualizar cada hora: unas 744 solicitudes al mes, para un precio que cambia una vez al día.
- Una solicitud por metal y día para el oro, la plata, el platino y el paladio: unas 124, cuando una solicitud combinada cuesta 31.
- Llamar a la API desde el navegador en cada visita a la página: cien visitas agotan el mes.
Siete formas de estirar una cuota gratuita
- Pide todos los símbolos en una sola llamada.
currencies=XAU,XAG,XPT,XPD,EUR,GBPcuesta una solicitud. Si omitescurrencies, se devuelven todos los símbolos, también por una sola solicitud. - Guarda en caché hasta la siguiente medianoche UTC. En Free no hay nada más reciente que obtener antes de esa hora. Conserva la última respuesta válida y sírvela si falla una llamada.
- Convierte en local. Los gramos y los kilogramos son múltiplos exactos de la onza troy (1 onza troy = 31,1034768 g), y las cotizaciones cruzadas proceden de una misma instantánea: el oro en euros es
USDXAU÷USDEUR. Una sola solicitud en dólares por onza puede alimentar todas las unidades y divisas que muestres. - Guarda el historial una sola vez. Los precios de cierre pasados nunca cambian. Obtén un rango una vez, guárdalo en una base de datos o un archivo y solicita solo los días nuevos.
- Valida antes de enviar. Los errores de validación (códigos
201a210) y el300(sin resultados) cuentan como solicitudes. Comprueba primero las fechas y los símbolos;/symbolsenumera todos los códigos válidos y nunca cuenta para la cuota. - Mantén las llamadas en el servidor. Una clave en el código del navegador es visible para todo el mundo y gasta una solicitud por visitante. Haz la consulta en el servidor y sirve el resultado en caché, o integra un widget, cuyas visitas no consumen tu cuota.
- Vigila el contador. Cada respuesta incluye el bloque
rate_limity las cabecerasX-RateLimit-*, y/usagedevuelve las mismas cifras sin facturarse. Los rechazos por límite de frecuencia (104), restricciones del plan (106), orígenes (107) y errores del servidor tampoco se facturan, así que reintentarlos no cuesta nada.
En conjunto, el núcleo de una integración Free es una única tarea programada. Este script de Node.js se ejecuta una vez al día poco después de la medianoche UTC, hace una sola solicitud y escribe los precios del oro, la plata, el platino y el paladio por onza y por gramo en tres divisas en un archivo JSON que leen tus páginas:
// Ejecútalo una vez al día después de las 00:00 UTC, p. ej. con cron: 5 0 * * * (reloj del servidor en UTC)
import { writeFile } from "node:fs/promises";
const GRAMS_PER_TROY_OZ = 31.1034768;
const METALS = ["XAU", "XAG", "XPT", "XPD"];
const CURRENCIES = ["EUR", "GBP"];
const params = new URLSearchParams({ base: "USD", currencies: [...METALS, ...CURRENCIES].join(",") });
const res = await fetch(`https://metalapi.com/api/v1/latest?${params}`, {
headers: { "X-API-Key": process.env.METALAPI_KEY },
signal: AbortSignal.timeout(10_000),
});
const data = await res.json();
if (!data.success) {
// Deja el archivo de ayer en su sitio, para que las páginas sigan mostrando los últimos precios válidos.
throw new Error(`MetalAPI ${data.error.code} (${data.error.type}): ${data.error.info}`);
}
const prices = {};
for (const metal of METALS) {
const usdPerOz = data.rates[`USD${metal}`];
prices[metal] = {};
for (const cur of ["USD", ...CURRENCIES]) {
const perOz = cur === "USD" ? usdPerOz : usdPerOz / data.rates[`USD${cur}`];
prices[metal][cur] = { perOz, perGram: perOz / GRAMS_PER_TROY_OZ };
}
}
await writeFile("prices.json", JSON.stringify({ asOf: data.timestamp, prices }, null, 2));
console.log(`Saved. ${data.rate_limit.remaining} requests left this month.`);Con una ejecución al día, la tarea usa entre 28 y 31 solicitudes al mes y deja el resto para el historial y las pruebas. En plataformas serverless, escribe el resultado en un almacén clave-valor o en la caché de datos de tu framework en lugar de en un archivo.
Para el historial, el límite de 30 días por rango supone una solicitud por mes natural: un año de precios diarios del oro requiere 12 solicitudes. Precios históricos del oro y la plata por API incluye un script de carga retroactiva y consejos de almacenamiento; en Free, cambia sus ventanas anuales por meses naturales.
Cómo evaluar cualquier API gratuita de precios del oro
Si comparas API gratuitas de metales, las cifras principales dicen menos que los detalles. Merece la pena responder a estas preguntas con cualquier proveedor, incluidos nosotros:
- ¿Con qué frecuencia se actualizan los datos gratuitos? En tiempo real, con retraso o a diario, ¿y cada respuesta indica de cuándo son sus precios?
- ¿Qué cuenta como solicitud? ¿Una llamada para muchos símbolos o una por símbolo? ¿Se facturan las llamadas fallidas o rechazadas?
- ¿Qué endpoints se incluyen? ¿Solo los últimos precios, o también historial, conversión y series temporales?
- ¿Cuánto historial y en qué tramos? Hasta cuándo se remontan los datos y cuántos días puede abarcar una solicitud de rango.
- Unidades y divisas. ¿Gramos, kilogramos y tu divisa local, o solo onzas troy en dólares estadounidenses?
- Condiciones de uso. ¿Pueden aparecer los datos en un sitio web comercial y qué queda excluido?
- ¿Qué pasa al llegar al límite? ¿Un corte claro con un error explícito, o cargos automáticos? ¿Con qué rapidez se aplica un cambio de plan?
- Gestión de la clave. ¿Puede enviarse la clave en una cabecera en lugar de en la URL, donde acaba en los registros?
Después, haz una breve prueba práctica con tus propios símbolos y divisas; para eso basta una clave gratuita. Cómo elegir una API de precios de metales preciosos convierte estas preguntas en una lista de comprobación completa con una plantilla de comparación.
En el caso de MetalAPI, las respuestas están más arriba y en la documentación: instantáneas diarias con timestamp en Free; una solicitud por llamada, independientemente de cuántos símbolos devuelva; los rechazos por límite de frecuencia, plan, origen y errores del servidor no se facturan; historial, conversión y series temporales incluidos; cualquier unidad y cualquiera de las 57 divisas; uso de los datos en tus propios sitios web, aplicaciones e informes, incluido mostrar precios a tus usuarios, pero sin redistribuir el feed en bruto; un corte con el error 105 al agotar la cuota y sin cargos por exceso; claves en una cabecera o en la cadena de consulta.
Cuándo pasar del plan gratuito a uno de pago
El plan Free es suficiente mientras un precio diario sea el precio adecuado y 100 solicitudes cubran tu mes. Estas son las señales habituales de que ya no lo es:
| Necesitas | Plan más pequeño que lo incluye | Precio / mes |
|---|---|---|
| Precios más recientes que uno al día | Lite: cada 30 minutos | 4,99 USD |
| Más de 100 solicitudes al mes | Lite: 1000 solicitudes | 4,99 USD |
| Rangos de más de 30 días por solicitud | Lite: 365 días | 4,99 USD |
Precios por quilate con /carat, alertas por correo electrónico | Lite | 4,99 USD |
| Precios cada 10 minutos, bid y ask | Standard | 11,99 USD |
| Precios cada minuto, alertas por webhook | Advanced | 24,99 USD |
| Streaming en tiempo real | Pro | 49,99 USD |
| Un SLA de disponibilidad | Business | 149,99 USD |
Los cambios de plan se aplican de inmediato, así que una clave que ha alcanzado el error 105 (quota_exceeded) vuelve a funcionar en cuanto cambias de plan; si no, espera al restablecimiento del día 1. La facturación anual ahorra hasta un 25 %. La página de precios tiene los precios actuales y la comparación completa, y Límites de frecuencia y planes explica en detalle las cuotas y los límites por minuto.
La forma más rápida de saber si Free basta para tu proyecto es probarlo. Crea una cuenta gratuita, copia tu clave API del panel y haz tu primera solicitud con la guía de primeros pasos. No se necesita tarjeta de crédito, y puedes pasar a un plan de pago cuando tu proyecto necesite precios más recientes.
Preguntas frecuentes
¿Existe una API de precios del oro completamente gratuita?
Sí. El plan Free de MetalAPI no cuesta nada, no requiere tarjeta de crédito e incluye el oro, la plata, el platino, el paladio y todos los demás símbolos, con 100 solicitudes al mes y precios actualizados una vez al día.
¿Con qué frecuencia actualiza el plan gratuito los precios del oro?
Una vez al día. El plan Free ve una única instantánea tomada a medianoche UTC, y todas las solicitudes hasta la siguiente medianoche devuelven los mismos precios. Los planes de pago se actualizan cada 30 minutos en Lite y hasta cada 5 segundos en Enterprise.
¿Puedo usar una API gratuita de precios del oro en un sitio web comercial?
Con MetalAPI, sí. Los datos pueden usarse en tus propios sitios web, aplicaciones, sistemas internos e informes, incluido mostrar precios a tus usuarios. Redistribuir el feed en bruto, por ejemplo ofreciéndolo como tu propia API, requiere un acuerdo escrito aparte.
¿Qué pasa cuando agoto las 100 solicitudes?
Las solicitudes siguientes devuelven el error 105 (quota_exceeded) con el estado HTTP 429 hasta que la cuota se restablece el día 1 del mes a las 00:00 UTC. No hay cargos automáticos por exceso, y cambiar a un plan superior elimina el límite de inmediato.
¿El plan gratuito incluye precios históricos del oro?
Sí. Las claves Free pueden consultar todo el historial, que en el caso del oro se remonta a 2000, y pueden usar /timeframe y /change con rangos de hasta 30 días por solicitud.
Pruébalo con tus propios datos
Crea una cuenta gratuita y haz tu primera solicitud en menos de dos minutos. 100 solicitudes al mes, sin tarjeta de crédito.
Sigue leyendo
Qué significa XAU/USD: los códigos XAU, XAG, XPT y XPD
Qué significa XAU/USD: por qué el oro tiene un código de divisa ISO 4217, qué son XAG, XPT y XPD y cómo leer el sentido de las cotizaciones y datos de API.
API de precios del oro en Python: consulta, caché y gráficos
Usa una API de precios del oro en Python: obtén precios en tiempo real con requests, gestiona errores y reintentos, usa caché y grafica una serie con pandas.
API de precios del oro en JavaScript: Node.js, TypeScript y Next.js
Obtén el precio del oro en JavaScript con una API: fetch con async/await, tipos de TypeScript, una ruta de Express o Next.js con caché y uso seguro de la clave.