Skip to content

Filtering ​

Search tenders accepts a rich set of optional filters, and all of them can be combined freely. Get alert tender results accepts a subset (text, publication and last-significant-change dates, sorting) on top of the alert's own criteria.

json
{ "text": "highway construction Spain" }

Status ​

The most common values:

ValueMeaning
PublicadaOpen for bids
AdjudicadaAwarded
ResueltaResolved
FormalizadaContract signed
CerradaClosed

Every accepted value: Creada, Anuncio Previo, Publicada, Evaluación Previa, Evaluación, Adjudicada, Parcialmente Adjudicada, Resolución Provisional, Resuelta, No Resuelta, Finalizada, Formalizada, Parcialmente Resuelta, Desistida, Cerrada, Anulada, No definido, Desierta.

json
{ "status": ["Publicada", "Adjudicada"] }

Tender type ​

FilterTypeDescription
isOnlyWithinDeadlinebooleanOnly tenders still within their submission deadline
isMinorContractbooleanOnly minor contracts
hasLotsbooleanOnly tenders with lots
proceduresstring[]Procedure types
contractTypesstring[]Contract types
json
{ "isOnlyWithinDeadline": true, "hasLots": true }

CPV codes ​

json
{ "cpvs": ["45000000-7", "72000000-5"] }

Locations ​

json
{ "locations": ["country/ES"] }
{ "locations": ["town/Madrid", "town/Barcelona"] }

Budget & amounts ​

Each pair sets an inclusive range; send one side or both.

Filter pairDescription
minBudget / maxBudgetBudget without taxes
minEstimatedValue / maxEstimatedValueEstimated contract value
minAwardAmount / maxAwardAmountAward amount
minDiscountRate / maxDiscountRateDiscount rate of the award, 0–100
minMonthlyProratedBudget / maxMonthlyProratedBudgetBudget prorated per month of the contract
minYearlyProratedBudget / maxYearlyProratedBudgetBudget prorated per year of the contract
json
{
  "minBudget": 50000,
  "maxBudget": 1000000
}

Dates ​

All dates are ISO 8601 date-times.

Filter pairDescription
minPublicationDate / maxPublicationDateWhen the tender was published
minDeadlineDate / maxDeadlineDateSubmission deadline
minAwardingDate / maxAwardingDateWhen the tender was awarded
minFormalizationDate / maxFormalizationDateWhen the contract was signed (may be estimated)
minExpirationDate / maxExpirationDateWhen the contract expires (may be estimated)
minExpirationWithExtensionDate / maxExpirationWithExtensionDateWhen the contract expires including every extension (may be estimated)
minLastUpdateDate / maxLastUpdateDateLast time the record was updated
minLastSignificantChangeDate / maxLastSignificantChangeDateLast significant change to the tender
json
{
  "minPublicationDate": "2024-01-01T00:00:00Z",
  "maxDeadlineDate": "2024-06-30T23:59:59Z"
}

Sorting ​

ValueDescription
by-published-datePublication date (default)
by-relevanceRelevance to text query
by-update-dateLast update
by-due-dateSubmission deadline
by-budgetBudget amount
by-prorated-budgetProrated budget
by-expiration-dateContract expiration
by-awarding-dateAward date
by-last-significant-changeLast significant change

isDescendent (default true) sets the direction.

json
{ "sort": "by-due-date", "isDescendent": false }

Full example ​

bash
curl -X POST https://api-rest.tendios.com/api/v1/tenders/search \
  -H "api-key: tend_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "software development",
    "status": ["Publicada"],
    "locations": ["country/ES"],
    "cpvs": ["72000000-5"],
    "minBudget": 50000,
    "isOnlyWithinDeadline": true,
    "sort": "by-due-date",
    "page": 1,
    "pageSize": 25
  }'

© Tendios