{
  "openapi": "3.0.1",
  "info": {
    "title": "EU Public Tenders Search, from TED data",
    "description": "Search European public tenders using open data from TED (Tenders Electronic Daily), the EU procurement journal. Filter by keywords, CPV codes, countries, dates, notice types and days left to bid. English titles, CPV descriptions, values, deadlines and lots. Not affiliated with the EU.",
    "version": "0.1",
    "x-build-id": "fQrmtznbhuKpAWjhV"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/br_data_hub~eu-ted-tenders/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-br_data_hub-eu-ted-tenders",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/br_data_hub~eu-ted-tenders/runs": {
      "post": {
        "operationId": "runs-sync-br_data_hub-eu-ted-tenders",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/br_data_hub~eu-ted-tenders/run-sync": {
      "post": {
        "operationId": "run-sync-br_data_hub-eu-ted-tenders",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Enter words to search in the full text of the notice, one per line, e.g. software, cloud or ambulance. Any word matches, in any language field. Leave empty for no keyword filter.",
            "default": [
              "software"
            ],
            "items": {
              "type": "string"
            }
          },
          "cpvCodes": {
            "title": "CPV codes",
            "type": "array",
            "description": "Enter Common Procurement Vocabulary codes, one per line, e.g. 72000000 (IT services) or 45000000 (construction). The check digit is optional and a short prefix such as 72 covers the whole division. Leave empty for all sectors.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Buyer countries",
            "type": "array",
            "description": "Enter buyer countries as 2- or 3-letter ISO codes, one per line, e.g. DE, FR or PL. Leave empty for every country that publishes on TED.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "noticeTypes": {
            "title": "Notice types",
            "type": "array",
            "description": "Pick the kinds of notice to return. Contract notices are the open calls for tenders. Leave empty for all types.",
            "items": {
              "type": "string",
              "enum": [
                "contract-notice",
                "prior-information-call",
                "prior-information",
                "design-contest",
                "qualification-system",
                "subcontracting",
                "pre-market-consultation",
                "contract-award",
                "voluntary-ex-ante",
                "contract-modification"
              ],
              "enumTitles": [
                "Contract notice (call for tenders)",
                "Prior information notice used as call for competition",
                "Prior information notice (information only)",
                "Design contest",
                "Qualification system",
                "Subcontracting notice",
                "Pre-market consultation",
                "Contract award (result)",
                "Voluntary ex-ante transparency",
                "Contract modification"
              ]
            },
            "default": [
              "contract-notice"
            ]
          },
          "publishedWithinDays": {
            "title": "Published in last N days",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "Set the publication window in days, ending on 'Published to' (or today), e.g. 14. Ignored when 'Published from' is set.",
            "default": 14
          },
          "onlyOpen": {
            "title": "Only open tenders",
            "type": "boolean",
            "description": "Keep on to skip notices whose submission deadline has passed. Notices without a deadline (such as award notices) are kept.",
            "default": true
          },
          "publishedFrom": {
            "title": "Published from",
            "type": "string",
            "description": "Type the oldest publication date as YYYY-MM-DD to use instead of the last N days.",
            "default": ""
          },
          "publishedTo": {
            "title": "Published to",
            "type": "string",
            "description": "Type the newest publication date as YYYY-MM-DD. Leave empty for today.",
            "default": ""
          },
          "minDaysToDeadline": {
            "title": "Min days left to bid",
            "minimum": 0,
            "type": "integer",
            "description": "Set the minimum days until the next submission deadline, e.g. 10 to leave time to prepare a bid. Notices without a deadline are skipped when set."
          },
          "minEstimatedValue": {
            "title": "Min estimated value",
            "minimum": 0,
            "type": "integer",
            "description": "Set a minimum estimated value in the notice's own currency (most are EUR), e.g. 100000. Notices without an estimate are skipped when set."
          },
          "titleLanguage": {
            "title": "Preferred language",
            "type": "string",
            "description": "Type an EU language code for titles, buyer names and lot titles, e.g. en, fr or de. Falls back to English, then to the original; the language used is returned in titleLanguage.",
            "default": "en"
          },
          "maxItems": {
            "title": "Max notices",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Set the maximum number of matching notices to return, e.g. 50. You pay only for the notices returned.",
            "default": 50
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}