{
  "openapi": "3.0.1",
  "info": {
    "title": "Austender Scraper",
    "version": "1.0",
    "x-build-id": "sTyrDR5RvcUpuZ2HT"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/mrdoe~austender-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-mrdoe-austender-scraper",
        "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/mrdoe~austender-scraper/runs": {
      "post": {
        "operationId": "runs-sync-mrdoe-austender-scraper",
        "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/mrdoe~austender-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-mrdoe-austender-scraper",
        "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",
        "required": [
          "operation"
        ],
        "properties": {
          "operation": {
            "title": "Operation",
            "enum": [
              "search",
              "noticeDetails"
            ],
            "type": "string",
            "description": "What the run does. 'Search notices' filters Australian Government contract notices and approaches to market (ATMs) by keyword, agency, category, date range, value range and supplier. 'Notice details' takes one or more notice ids or record URLs and returns the full record for each, with no result cap.",
            "default": "search"
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "One keyword or phrase per line (for example 'software', 'cyber security', 'cloud hosting'). Each keyword is searched separately. For the 'Notice details' operation, put notice ids here instead (for example 'CN4275454' or a Department of Parliamentary Services ATM reference).",
            "default": [
              "software"
            ],
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Start URLs",
            "type": "array",
            "description": "Optional. For 'Search notices': paste tenders.gov.au keyword search URLs. For 'Notice details': paste record page URLs such as https://www.tenders.gov.au/Cn/Show/<id> or https://www.tenders.gov.au/Atm/Show/<id>.",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "noticeType": {
            "title": "Notice type (search only)",
            "enum": [
              "",
              "contract_notice",
              "atm"
            ],
            "type": "string",
            "description": "Limit a search to one notice type. 'Any' returns both contract notices and approaches to market.",
            "default": ""
          },
          "agency": {
            "title": "Agency (search only)",
            "type": "string",
            "description": "Optional. Only keep notices whose publishing agency name contains this text (for example 'Defence', 'Health', 'Australian Federal Police').",
            "default": ""
          },
          "supplier": {
            "title": "Supplier (search only)",
            "type": "string",
            "description": "Optional. Only keep contract notices whose supplier name contains this text. Useful for building a supplier's federal win history.",
            "default": ""
          },
          "category": {
            "title": "Category (search only)",
            "type": "string",
            "description": "Optional. Only keep notices whose category description contains this text (for example 'software', 'construction', 'consulting').",
            "default": ""
          },
          "publishedFrom": {
            "title": "Published from (search only)",
            "type": "string",
            "description": "Optional. Earliest publish date to include, as YYYY-MM-DD. Defaults to 60 days ago when left blank.",
            "default": ""
          },
          "publishedTo": {
            "title": "Published to (search only)",
            "type": "string",
            "description": "Optional. Latest publish date to include, as YYYY-MM-DD. Defaults to today when left blank.",
            "default": ""
          },
          "minValue": {
            "title": "Minimum contract value AUD (search only)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Only keep contract notices with a contract value at or above this amount in Australian dollars."
          },
          "maxValue": {
            "title": "Maximum contract value AUD (search only)",
            "minimum": 0,
            "type": "integer",
            "description": "Optional. Only keep contract notices with a contract value at or below this amount in Australian dollars."
          },
          "maxItems": {
            "title": "Max notices per keyword",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of notices to return for each keyword. Keep this low for quick test runs and raise it for full exports. Ignored for the 'Notice details' operation, which always returns every notice you asked for.",
            "default": 20
          },
          "useCache": {
            "title": "Use cache",
            "type": "boolean",
            "description": "Reuse notice records collected in an earlier run to speed up recurring runs. Disabled by default so every run returns fresh data.",
            "default": false
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Proxy settings. AusTender is a public Australian Government service. Residential IPs located in Australia are prefilled for the most reliable access; you can switch to a cheaper tier if runs stay stable.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "AU"
            }
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}