<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Mint Data]]></title><description><![CDATA[Mint Data]]></description><link>https://mintdatatools.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Sun, 01 Nov 2026 17:19:10 GMT</lastBuildDate><atom:link href="https://mintdatatools.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Free (or Very Cheap) EU Tender Alerts by CPV Code Using Official TED Data]]></title><description><![CDATA[Disclosure: I built the Apify tool described later in this article, and I earn money when people use it. The free methods come first, and they're enough…]]></description><link>https://mintdatatools.hashnode.dev/free-or-very-cheap-eu-tender-alerts-by-cpv-code-using-official-ted-data</link><guid isPermaLink="true">https://mintdatatools.hashnode.dev/free-or-very-cheap-eu-tender-alerts-by-cpv-code-using-official-ted-data</guid><category><![CDATA[procurement ]]></category><category><![CDATA[automation]]></category><category><![CDATA[data]]></category><category><![CDATA[APIs]]></category><category><![CDATA[Europe]]></category><dc:creator><![CDATA[Mint Data]]></dc:creator><pubDate>Sun, 25 Oct 2026 15:10:16 GMT</pubDate><content:encoded><![CDATA[<p><em>Disclosure: I built the Apify tool described later in this article, and I earn money when people use it. The free methods come first, and they're enough for many people.</em></p>
<p>Every year, public buyers across Europe publish a huge number of contract opportunities for IT, construction, consulting, cleaning, medical supplies, and more. If your company could sell to governments, the hard part usually isn't qualifying. It's <strong>finding the right tenders in time</strong>, across dozens of countries and languages.</p>
<p>There are paid tender alert services that handle this. Before paying for one, it's worth knowing that the underlying data is official, open, and free: it's called <strong>TED</strong>.</p>
<h2>What is TED?</h2>
<p><strong>TED (Tenders Electronic Daily)</strong> is the online version of the Supplement to the Official Journal of the European Union. Public tenders in the EU above certain value thresholds must be published there, and countries outside the EU, such as EEA members and Switzerland, also publish notices on TED. It covers:</p>
<ul>
<li><strong>Contract notices</strong>: open calls for tenders you can bid on</li>
<li><strong>Prior information notices</strong>: tenders that are coming up later</li>
<li><strong>Contract award notices</strong>: who won and for how much</li>
<li>Plus modifications, voluntary transparency notices, and market consultations</li>
</ul>
<p>TED data can be reused, including commercially, as long as you credit the source (© European Union, TED).</p>
<h2>Why CPV codes are the key</h2>
<p>Keyword searches across 24 languages miss a lot. <strong>CPV (Common Procurement Vocabulary)</strong> codes fix that. Every notice is tagged with standardized category codes, and the codes form a hierarchy:</p>
<ul>
<li><code>72000000</code> covers IT services: consulting, software development, Internet and support</li>
<li><code>72200000</code> covers software programming and consultancy services</li>
<li><code>72212000</code> covers programming services of application software</li>
</ul>
<p>If you filter by a parent code and include its sub-codes, you catch everything in your category no matter what language the buyer wrote the notice in. For most companies, a handful of CPV codes plus a list of target countries makes a very good alert profile.</p>
<h2>The manual way (free)</h2>
<ol>
<li>Go to ted.europa.eu and use the search, filtering by CPV code, country, notice type, and publication date.</li>
<li>Open the notices that look relevant and check the value, deadline, and documents.</li>
<li>Copy the good ones into a spreadsheet or your CRM.</li>
<li>Repeat every working day (TED publishes Monday to Friday) and remember which ones you've already seen.</li>
</ol>
<p>TED also offers its own saved searches and notifications, which are a good free starting point. Where it gets harder is when you want <strong>structured data</strong> in your own tools: a sheet, Slack, a CRM, a bid pipeline. You'll also want to filter by value consistently when notices are published in different currencies.</p>
<h2>The automated way: EU Tenders Scraper on Apify</h2>
<p>I built <strong><a href="https://apify.com/wantmannu/eu-ted-tenders">EU Tenders Scraper – TED Procurement Alerts</a></strong> as a pay-as-you-go alternative to subscription alert services. It uses the <strong>official TED Search API</strong> and returns one clean row per notice.</p>
<p><strong>Pricing:</strong> $0.004 per notice returned, which works out to $4 per 1,000 notices. There's no subscription. You pay for what you pull.</p>
<h3>Step by step</h3>
<ol>
<li><strong>Open the Actor</strong> at apify.com/wantmannu/eu-ted-tenders and click <em>Try for free</em> (you need an Apify account).</li>
<li><strong>CPV codes:</strong> enter one or more, e.g. <code>72</code> or <code>72000000</code>. Sub-codes are included automatically.</li>
<li><strong>Keywords (optional):</strong> e.g. <code>cybersecurity</code>, <code>road maintenance</code>.</li>
<li><strong>Buyer countries:</strong> e.g. <code>DE</code>, <code>FR</code>, <code>NL</code>, <code>PL</code>.</li>
<li><strong>Notice types:</strong> choose <em>Contract notice</em> if you want tenders you can still bid on.</li>
<li><strong>Value range:</strong> set a min/max in EUR. Notices in other currencies are converted using ECB reference rates.</li>
<li><strong>Deadline:</strong> use <em>deadline after</em> a date, or <em>only open tenders</em>.</li>
<li><strong>Publication window:</strong> last N days or a date range.</li>
<li><strong>Preferred language:</strong> English (the default) gives you English-first titles where available.</li>
<li><strong>Click Start</strong> and export to CSV, Excel, or JSON.</li>
</ol>
<p>Here's an example input:</p>
<pre><code class="language-json">{
  "cpvCodes": ["72"],
  "countries": ["DE", "FR", "NL"],
  "noticeTypes": ["competition"],
  "minValueEur": 250000,
  "onlyOpenTenders": true,
  "lastNDays": 7,
  "language": "en",
  "deltaMode": true
}
</code></pre>
<h3>What the output looks like</h3>
<p>This example row comes from the Actor's documentation and is a real TED notice, shortened here:</p>
<table>
<thead>
<tr>
<th>Field</th>
<th>Value</th>
</tr>
</thead>
<tbody><tr>
<td>Notice ID</td>
<td>711403-2026</td>
</tr>
<tr>
<td>Headline (translated)</td>
<td>Denmark – Meter reading service – LEVERING AF FORBRUGSMÅLERE OG -REGNSKABER…</td>
</tr>
<tr>
<td>Notice type</td>
<td>Contract notice (call for tenders)</td>
</tr>
<tr>
<td>Buyer</td>
<td>Boligselskabet Sjælland, Roskilde, DK</td>
</tr>
<tr>
<td>Main CPV</td>
<td>65500000 (Meter reading service)</td>
</tr>
<tr>
<td>Value</td>
<td>25,000,000 DKK ≈ €3.34M (estimated)</td>
</tr>
<tr>
<td>Published / Deadline</td>
<td>2026-10-15 / 2026-11-25</td>
</tr>
<tr>
<td>Procedure</td>
<td>Open</td>
</tr>
<tr>
<td>Links</td>
<td>TED notice page, PDF, XML, procurement documents</td>
</tr>
<tr>
<td>Source</td>
<td>© European Union, TED</td>
</tr>
</tbody></table>
<p>Every row includes a link to the official notice and an attribution line.</p>
<h2>Turning it into a daily alert</h2>
<ol>
<li>Save your input as an Apify <strong>Task</strong> (for example, "IT services – DACH + Benelux – €250k+").</li>
<li>Turn on <strong>Delta mode</strong>, so each run returns only notices that an earlier run with the same filters hasn't already delivered.</li>
<li>Add a <strong>Schedule</strong> for weekdays. TED publishes on working days.</li>
<li>Connect an <strong>integration</strong>: Google Sheets, Slack, email, Zapier, Make, or a webhook into your CRM.</li>
<li>Or call it from your own code through the <strong>Apify API</strong>.</li>
</ol>
<p>You get a short list of new, relevant tenders each day, delivered to wherever your bid team already works.</p>
<h2>Who this is for</h2>
<ul>
<li><strong>Bid teams</strong> who want a steady feed of relevant contract notices</li>
<li><strong>Consultancies</strong> tracking opportunities for several clients, using one Task per client</li>
<li><strong>SMEs</strong> trying public-sector work for the first time without a subscription</li>
<li><strong>Market intelligence</strong> work: award notices show winners and contract values in your category</li>
</ul>
<h2>Honest limitations</h2>
<ul>
<li><strong>TED only covers tenders above the EU thresholds</strong> (plus whatever buyers publish voluntarily). Many smaller contracts appear only on national or regional portals, and this tool doesn't cover those.</li>
<li><strong>EUR values are estimates.</strong> The conversion uses ECB reference rates, and the original amount and currency stay in the data. Many notices publish no value at all, and those are excluded when you set a value filter.</li>
<li><strong>Titles aren't always in English.</strong> If the buyer didn't publish in your language, you get the original title plus TED's translated headline.</li>
<li><strong>Check the official notice before you bid.</strong> Only the version published in the Official Journal is authoritative.</li>
<li><strong>It finds tenders. It doesn't write bids.</strong> No document analysis, no bid/no-bid scoring.</li>
<li>Not affiliated with or endorsed by the EU Publications Office. Data © European Union, TED.</li>
</ul>
<h2>Wrapping up</h2>
<p>If you only need to look occasionally, TED's own website and notifications are free and good. If you want structured, filtered, daily data flowing into your own tools without a subscription, a small pay-per-notice tool can be enough. If you try it and something is missing, the Issues tab on the Actor page reaches me directly.</p>
<p><em>Originally published on <a href="https://medium.com/@mintdata_tools/free-or-very-cheap-eu-tender-alerts-by-cpv-code-using-official-ted-data-0fcc07812e91">Medium</a>.</em></p>
]]></content:encoded></item><item><title><![CDATA[How to Get a Daily List of Recently Funded Startups from SEC Form D Filings]]></title><description><![CDATA[Disclosure: I built the Apify tool described in the second half of this article and earn money when people use it. The manual method below is free and…]]></description><link>https://mintdatatools.hashnode.dev/how-to-get-a-daily-list-of-recently-funded-startups-from-sec-form-d-filings</link><guid isPermaLink="true">https://mintdatatools.hashnode.dev/how-to-get-a-daily-list-of-recently-funded-startups-from-sec-form-d-filings</guid><category><![CDATA[Startups]]></category><category><![CDATA[api]]></category><category><![CDATA[Python]]></category><category><![CDATA[data]]></category><category><![CDATA[automation]]></category><dc:creator><![CDATA[Mint Data]]></dc:creator><pubDate>Sun, 18 Oct 2026 18:00:04 GMT</pubDate><content:encoded><![CDATA[<p><em>Disclosure: I built the Apify tool described in the second half of this article and earn money when people use it. The manual method below is free and works fine. Use whichever one suits you.</em></p>
<p>If you sell to startups, recruit for them, invest in them, or just follow the market, a company that <em>just raised money</em> is usually worth knowing about. It has budget, it's hiring, and it's making decisions. Most people learn about these rounds from press releases or paid databases. A lot of them show up first in a less glamorous place: <strong>SEC Form D filings</strong>.</p>
<h2>What is Form D?</h2>
<p>When a U.S. company raises money without registering the offering with the SEC, it usually relies on an exemption under <strong>Regulation D</strong>, most often Rule 506(b) or Rule 506(c). Companies using these exemptions are required to file a short notice, <strong>Form D</strong>, generally within 15 days after the first sale of securities.</p>
<p>The filing is public and free on SEC EDGAR. It typically includes:</p>
<ul>
<li>Company name, address, and the SEC's company ID (CIK)</li>
<li>Industry group (e.g. "Other Technology", "Biotechnology")</li>
<li>Total offering amount and the amount sold so far</li>
<li>Minimum investment accepted</li>
<li>Date of first sale</li>
<li>The exemption claimed (506(b), 506(c), etc.)</li>
<li>Whether it's a new filing or an amendment</li>
<li>Names of executives, directors, and promoters</li>
</ul>
<p>It does <strong>not</strong> include valuation or investor names.</p>
<h2>Why it works as a lead source</h2>
<ul>
<li><strong>Timing.</strong> The filing is required soon after money comes in, so it's often one of the earliest public signals of a round.</li>
<li><strong>Coverage of quiet rounds.</strong> Plenty of companies raise without announcing it. Many of them still file.</li>
<li><strong>It's official data.</strong> It comes straight from the SEC, not scraped from someone else's database.</li>
<li><strong>It's filterable.</strong> State, industry, and amount let you narrow a big list down to your actual market.</li>
</ul>
<h2>The manual way (free)</h2>
<p>You can do this by hand on EDGAR:</p>
<ol>
<li>Use EDGAR's search to find filings with form type <strong>D</strong> for a date range (or browse the daily filing indexes).</li>
<li>Open each filing and read the Form D details: amounts, industry, state, exemption.</li>
<li>Copy the fields you care about into a spreadsheet.</li>
<li>Remove the investment funds. A large share of Form D filers are VC, PE, and hedge funds, not operating companies.</li>
<li>Repeat every day, and keep track of which filings you've already seen.</li>
</ol>
<p>This is fine for a one-time look. As a daily habit it gets tedious fast. One week of filings can run into the hundreds or more (see the numbers below), and steps 2 to 5 are pure copy-paste.</p>
<h2>The automated way: SEC Form D Scraper on Apify</h2>
<p>I built <strong><a href="https://apify.com/wantmannu/sec-form-d-funding">SEC Form D Scraper – Recently Funded Startups</a></strong> to do those steps for me. It reads new Form D filings from EDGAR and returns one clean row per company.</p>
<p><strong>A real test run:</strong> over the last 5 business days it found <strong>1,324 Form D filings</strong>. After excluding funds, <strong>453 were operating companies.</strong></p>
<p><strong>Pricing:</strong> $0.01 per company returned. That test week would cost about $4.53. Filings removed by your filters aren't charged. Similar tools I found on the Store charge around $0.07 to $0.08 per result.</p>
<h3>Step by step</h3>
<ol>
<li><strong>Open the Actor</strong> at apify.com/wantmannu/sec-form-d-funding and click <em>Try for free</em> (you need an Apify account).</li>
<li><strong>Pick a date window.</strong> Use <em>Last N days</em> (default 7) or set a <em>Date from / Date to</em> range.</li>
<li><strong>Add filters (optional):</strong><ul>
<li><em>States</em>, e.g. <code>CA</code>, <code>NY</code>, <code>TX</code></li>
<li><em>Industry groups</em>, from the official Form D list</li>
<li><em>Min / max amount raised</em>, e.g. at least $1,000,000</li>
<li><em>Offering type</em>, e.g. Rule 506(b) or 506(c)</li>
</ul>
</li>
<li><strong>Keep "Exclude funds" on</strong> (it's the default) if you only want operating companies.</li>
<li><strong>Decide on executive names.</strong> They're <strong>off by default</strong>. Turn them on only if you have a legitimate reason to process that personal data.</li>
<li><strong>Click Start</strong>, then export to CSV, Excel, or JSON.</li>
</ol>
<p>Here's an example input:</p>
<pre><code class="language-json">{
  "lastNDays": 7,
  "states": ["CA", "NY"],
  "minAmountSold": 1000000,
  "excludePooledFunds": true,
  "includeAmendments": false,
  "maxResults": 200,
  "deltaMode": true
}
</code></pre>
<h3>What the output looks like</h3>
<p>Here are four real rows from a run on October 17, 2026 (default 7-day window):</p>
<table>
<thead>
<tr>
<th>Company</th>
<th>CIK</th>
<th>State</th>
<th>Industry</th>
<th>Amount sold</th>
<th>Total offering</th>
<th>Min. investment</th>
<th>First sale</th>
<th>Filed</th>
<th>Exemption</th>
<th>Amendment</th>
<th>Filing</th>
</tr>
</thead>
<tbody><tr>
<td>Ramp Business Corp</td>
<td>1803782</td>
<td>NY</td>
<td>Other Technology</td>
<td>$1,585,000,000</td>
<td>$1,850,000,000</td>
<td>$0</td>
<td>2026-10-07</td>
<td>2026-10-16</td>
<td>506(b)</td>
<td>No</td>
<td><a href="https://www.sec.gov/Archives/edgar/data/1803782/000180378226000003/0001803782-26-000003-index.htm">sec.gov</a></td>
</tr>
<tr>
<td>Armadin, Inc.</td>
<td>2094470</td>
<td>CA</td>
<td>Other Technology</td>
<td>$264,999,494</td>
<td>$264,999,494</td>
<td>$0</td>
<td>2026-09-30</td>
<td>2026-10-15</td>
<td>506(b)</td>
<td>No</td>
<td><a href="https://www.sec.gov/Archives/edgar/data/2094470/000209447026000002/0002094470-26-000002-index.htm">sec.gov</a></td>
</tr>
<tr>
<td>Estuary Biotherapeutics, Inc.</td>
<td>2138862</td>
<td>CA</td>
<td>Biotechnology</td>
<td>$40,654,685</td>
<td>$103,654,385</td>
<td>$0</td>
<td>2026-07-01</td>
<td>2026-10-16</td>
<td>506(b)</td>
<td>No</td>
<td><a href="https://www.sec.gov/Archives/edgar/data/2138862/000213886226000003/0002138862-26-000003-index.htm">sec.gov</a></td>
</tr>
<tr>
<td>Memazing, Inc.</td>
<td>2160552</td>
<td>NJ</td>
<td>Other Technology</td>
<td>$15,404,990</td>
<td>$26,244,981</td>
<td>$0</td>
<td>2026-09-30</td>
<td>2026-10-16</td>
<td>506(b)</td>
<td>No</td>
<td><a href="https://www.sec.gov/Archives/edgar/data/2160552/000123191926001462/0001231919-26-001462-index.htm">sec.gov</a></td>
</tr>
</tbody></table>
<p>Every row links back to the original filing on sec.gov, so you can always check the source.</p>
<h2>Scheduling a daily feed into Google Sheets</h2>
<p>The goal is a list that shows up every morning without you doing anything:</p>
<ol>
<li>In Apify, save your input as a <strong>Task</strong> (for example, "CA+NY tech, $1M+").</li>
<li>Turn on <strong>Delta mode</strong>. Each run then returns only filings that an earlier run with the same filters hasn't already delivered, so you get no duplicates.</li>
<li>Add a <strong>Schedule</strong>, for example every weekday morning US Eastern. EDGAR publishes its daily index after each business day, so a morning run picks up the previous day's filings.</li>
<li>Add an <strong>integration</strong>. Apify has a Google Sheets integration that appends results to a sheet. You can also use Zapier, Make, or a plain webhook to send new rows to Slack, a CRM, or your own app.</li>
<li>If you'd like code instead, call the Actor through the <strong>Apify API</strong> (JavaScript and Python clients available) and handle the results yourself.</li>
</ol>
<h2>Honest limitations</h2>
<ul>
<li><strong>Not every startup files Form D.</strong> Some raise in ways that don't need it, some file late, and some don't file at all. Think of this as a strong signal, not a complete census of funding.</li>
<li><strong>Amounts are self-reported</strong> by the issuer. "Amount sold" is cumulative and can be $0 if the first sale hasn't happened yet. The total offering may be marked "indefinite."</li>
<li><strong>Many filings are funds.</strong> The fund filter removes pooled investment vehicles, but check your results before using them for anything important.</li>
<li><strong>Amendments</strong> often update an older round rather than announcing a new one. Turn them off if you only want new filings.</li>
<li><strong>U.S. only, no investor names or valuations.</strong></li>
<li><strong>Personal data.</strong> Executive names are off by default for a reason. If you turn them on, follow GDPR and your local rules.</li>
</ul>
<h2>Wrapping up</h2>
<p>Form D is one of the more useful free datasets around for finding companies with fresh money. Done by hand, it costs time. Automated, it's a small daily spreadsheet. If you try the tool and something is missing or broken, the Issues tab on the Actor page goes straight to me.</p>
<p><em>Originally published on <a href="https://medium.com/@mintdata_tools/how-to-get-a-daily-list-of-recently-funded-startups-from-sec-form-d-filings-56a2a45bf3c4">Medium</a>.</em></p>
]]></content:encoded></item></channel></rss>