// Simple Node.js + Express API server to look up Slovak companies by IČO // using the Finančná správa SR open data API const express = require("express"); const axios = require("axios"); const app = express(); const PORT = 3000; // Insert your API key from Finančná správa SR below const API_KEY = "2t5lK487ces7Rc4oEHrIwCjB5DpoZUBChQxCLBiSrwGNdEubKpraAtQLEiJmPXkdjNw5FssYpuO0LXSZpk3U6oqePyFaIGHokg4WNPEM0302X2BK4iXpkFv9Qg7jyeUXh50bWVExVrVSBuOnOQpBzzdJ1k1D54b115MD3y5ticWxvGDLUaqLQgA6nzFgbYOx6dR0ToJUxU714TetLBZCBy0xKSnBaOrxYv10I1gZ1q4rQx4Q8k7BTR6MaP"; // Endpoint: GET /api/lookup?ico=XXXXXXXX // Example: http://localhost:3000/api/lookup?ico=36215589 app.get("/api/lookup", async (req, res) => { const ico = req.query.ico; // Validate ICO presence if (!ico) { return res.status(400).json({ error: "Missing ICO parameter" }); } const url = `https://iz.opendata.financnasprava.sk/api/data/ds_dsrdp/search?page=1&column=ico&search=${ico}`; try { // Make a request to Finančná správa API const response = await axios.get(url, { headers: { accept: "application/json", key: API_KEY } }); // Return the fetched JSON data res.json(response.data); } catch (error) { // Handle errors (e.g. invalid API key, server down) res.status(500).json({ error: error.message }); } }); // Start the server app.listen(PORT, () => { console.log(`API server is running at http://localhost:${PORT}`); });