# Make.com — Daily SAM.gov + TED tenders → Slack (DRAFT)

**Status:** text blueprint only. Not saved in Make. Not published.  
**Actor:** `carmentara/procurement-radar` (id `pzk2egg6t6xxKyOGP`)  
**Alt:** public task `eu-it-software-tenders-daily` (`RjTGcbPmC75xsQ2zp`) — do not rename.

## Modules (in order)

1. **Scheduler** — every day at 07:00 (Europe/Tallinn or your TZ).
2. **HTTP > Make a request**
   - Method: `POST`
   - URL: `https://api.apify.com/v2/acts/carmentara~procurement-radar/runs?waitForFinish=120&memory=512`
   - Headers: `Authorization: Bearer {{APIFY_TOKEN}}`, `Content-Type: application/json`
   - Body:
   ```json
   {
     "sources": ["sam", "ted"],
     "keywords": ["software", "cybersecurity", "cloud"],
     "cpvCodes": ["72000000", "48000000"],
     "naicsCodes": ["541511", "541512"],
     "noticeTypes": ["cn-standard"],
     "includeClosed": false,
     "maxResults": 50,
     "onlyNew": true,
     "includeRaw": false,
     "samApiKey": "{{SAM_API_KEY}}"
   }
   ```
3. **Router / filter** — continue only if `data.status` = `SUCCEEDED`.
4. **HTTP > Make a request**
   - GET `https://api.apify.com/v2/actor-runs/{{data.id}}/dataset/items?limit=100&clean=true`
   - Same Auth header.
5. **Iterator** over dataset array (or Aggregate → Text aggregator).
6. **Text aggregator** — build a Slack mrkdwn list: source, title+url, buyer, deadline.
7. **Slack > Create a Message** (or Incoming Webhook HTTP POST `{ "text": "..." }`).
8. **Error route** — if status ≠ SUCCEEDED, post `:warning:` to Slack.

## Cost note (for future public copy)
Apify Free includes $5 Store credit. PPE ≈ $0.003 per tender + $0.00005 start.

## Publish gate
Needs Mert OK before sharing as a Make template or blog CTA.
