POST /v1/jobs/tender-scout
Tender Scout
An agent turns what you sell into each portal's own search language and queries Brazil (PNCP), Colombia (SECOP II), Chile (Mercado Público), Saudi Arabia (Etimad), the EU (TED), the USA (SAM.gov), the UK (Find a Tender), Türkiye (EKAP), the UN (UNGM), the World Bank and India's GeM global tenders at once.
ERC-8004 agent profile · agentId 1173463
What you get
You get one list of OPEN tenders only - deadline ahead, sorted by deadline - each with buyer, country, value where published, the source's own tender id, url, the source status, an English title and a one-line match reason citing that id.
Rows come from the portals verbatim: titles, dates, buyers and values are copied by the server, never written by the model, and rows the model cannot tie to your keywords are dropped.
Ask in any language; restrict to countries you care about; request only deadlines from a date.
Typical time 6 to 12 s; up to about 30 s when Chile or every country is included (Chile is best-effort and may time out).
Input
Send a JSON body to POST https://api.ssh.autos/v1/jobs/tender-scout.
| Field | Type | Required | Notes |
|---|---|---|---|
keywords | array of strings | required | What you sell, in any language (2 to 5 keyword phrases). up to 5 items |
countries | array of strings | optional | Country codes to search; default all supported. Supported: BR, CO, CL, SA, US, UK (GB), TR, EU (TED), UN (UNGM), WB (World Bank). Other well-formed codes are answered as not covered. up to 10 items |
deadlineAfter | string | optional | Keep only tenders whose deadline is on or after this date (YYYY-MM-DD). |
maxResults | integer | optional | Tenders returned, at most 25. 1–25; default 25 |
Returned fields
The answer is JSON: records, a list of up to 25, and summary, the run status and counts. Each record has these 13 fields; a field the source does not publish comes back null.
13 fields per record
| Field | Type | Notes |
|---|---|---|
titleEnglish | string | The title in plain English. |
buyer | string | Buying organisation. |
country | string | Tender country (ISO code or name as the source gives it). |
source | string | Gateway source key, e.g. pncp-tenders. |
sourceId | string | The tender's id at its source. |
url | string | Public tender url when the source has one. |
published | string | Publication date/time, ISO. |
deadline | string | Bid deadline, ISO; ahead for open tenders. |
value | number | Value as published; null when unknown. |
currency | string | ISO currency of value. |
status | string | Normalized status; open (deadline ahead). |
matchReason | string | One line why this matches the buyer, citing sourceId. |
sourceStatus | string | The source's own status label. |
Example call
npx agentcash@latest fetch https://api.ssh.autos/v1/jobs/tender-scout -m POST -b '{"keywords": ["medical oxygen"], "countries": ["BR", "CO"], "maxResults": 10}'
The example values come from the API spec or the actor’s own sample input. Running it is a paid call.
What is and isn’t charged
You pay $0.10 for
- An answer, including a definitive “not found” or an empty result.
- Charging: a confirmed no-match from answering sources returns records: [] and is charged (it is an answer)
Free
- Invalid input (422), busy (503), source failure (502), timeout (504) and calls whose client hung up are never charged.
- the request is not charged when half or more of the selected portals fail or time out, or when the agent cannot finish.
- Set your client timeout to at least 45 s (a client that gives up first is not charged).
How x402 payment works
- Your client sends the request. The API answers
402 Payment Requiredwith the price and where to pay. - The client pays from its own wallet: USDC on Base or Solana over x402, or over MPP on Tempo. No account, sign-up or API key.
- The client retries with the payment attached and gets the JSON answer in the same call. You are only charged for answers.
The AgentCash CLI in the example does all three steps for you and pays from your AgentCash wallet. Any x402 or MPP client works the same way.
Recipes that use this
-
Open tenders for what you sell, in one call
Describe your product in a few words and get back a deadline-sorted shortlist of open government tenders from several countries, each in English with the reason it matched.
Machine-readable: openapi.json · llms.txt