v1.0 • REST API
API REST Pública de Minerva
API gratuita, abierta y en tiempo real para bots de Discord, aplicaciones web y herramientas de Fallout 76.
URL Base
https://whereisminerva.infoAutenticaciónNinguna (100% Gratis)
CORSHabilitado (*)
FormatoJSON (UTF-8)
GET
Estado y Stock/api/v1/minerva
Devuelve el estado en tiempo real de Minerva en Fallout 76: si está presente, su ubicación exacta en Appalachia, fechas UTC y Unix de llegada/salida, inventario y próxima visita.
Probar Endpoint
Ejemplos de Código
curl -X GET "https://whereisminerva.info/api/v1/minerva" \
-H "Accept: application/json"¿Creando un Bot de Discord?
La API es 100% pública, con CORS abierto y sin claves de API. Las fechas incluyen marcas de tiempo Unix en segundos (startsAtUnix, endsAtUnix) para cuentas atrás automáticas en Discord. (<t:TIMESTAMP:R>).
// Slash Command: /minerva (Discord.js v14)
import { SlashCommandBuilder, EmbedBuilder } from 'discord.js';
export const data = new SlashCommandBuilder()
.setName('minerva')
.setDescription('Check Minerva live location, countdown, and stock in Fallout 76');
export async function execute(interaction) {
const res = await fetch('https://whereisminerva.info/api/v1/minerva');
const { data } = await res.json();
const embed = new EmbedBuilder()
.setTitle(data.isActive ? `Minerva is at ${data.location.nameEn}!` : 'Minerva is currently away')
.setColor(data.isActive ? 0x8ba358 : 0x555555);
if (data.isActive) {
embed
.setDescription(`📍 **Location:** ${data.location.nameEn} (${data.location.coordinates})\n⏳ **Leaves:** <t:${data.endsAtUnix}:R> (<t:${data.endsAtUnix}:f>)`)
.setImage(data.location.imageUrl)
.addFields({
name: `Featured Plans (${data.inventory.totalItems} total)`,
value: data.inventory.preview.map(i => `• **${i.name}** — ${i.priceGold} Gold`).join('\n') || 'None'
});
} else if (data.nextVisit) {
embed.setDescription(`📍 **Next Visit:** ${data.nextVisit.location.nameEn}\n⏳ **Arrives:** <t:${data.nextVisit.startsAtUnix}:R> (<t:${data.nextVisit.startsAtUnix}:f>)`);
}
await interaction.reply({ embeds: [embed] });
}