{
  "openapi": "3.0.1",
  "info": {
    "title": "UNGM UN Tenders Scraper | UN Procurement Notices",
    "description": "Search UNGM, the UN Global Marketplace, for procurement notices by keyword, agency, country or notice type. Each row has agency, reference, beneficiary country, publication date, deadline in its own GMT offset and links. Add description, contacts and UNSPSC codes. Export JSON, CSV or Excel.",
    "version": "0.1",
    "x-build-id": "53ME9hrk8IcMTQfWi"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/automatic~ungm-tenders-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-automatic-ungm-tenders-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/automatic~ungm-tenders-scraper/runs": {
      "post": {
        "operationId": "runs-sync-automatic-ungm-tenders-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/automatic~ungm-tenders-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-automatic-ungm-tenders-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",
        "properties": {
          "keywords": {
            "title": "Keywords in the title",
            "type": "string",
            "description": "Words that must appear in the notice title, in any language. UNGM's own title search. Leave empty for all titles.",
            "default": ""
          },
          "descriptionKeywords": {
            "title": "Keywords in the description",
            "type": "string",
            "description": "Words that must appear in the notice description. Use this to search the full text, or combine it with title keywords to narrow both.",
            "default": ""
          },
          "reference": {
            "title": "Reference number",
            "type": "string",
            "description": "The buyer's reference number, for example UNDP-SLE-00337. Leave empty to ignore it.",
            "default": ""
          },
          "agencies": {
            "title": "UN agencies",
            "type": "array",
            "description": "Agency names or abbreviations, for example UNDP, UNICEF, WFP, UNOPS or UNHCR. Leave empty for all agencies.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Beneficiary countries",
            "type": "array",
            "description": "Countries where the goods or services are needed, for example Kenya, Somalia or Viet Nam. Common short names such as USA, UK or South Korea are accepted. Leave empty for all countries.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "noticeTypes": {
            "title": "Notice types",
            "type": "array",
            "description": "Procurement notice types, for example Invitation to bid or Request for quotation. Leave empty for all types.",
            "items": {
              "type": "string",
              "enum": [
                "NotSet",
                "RequestForEoi",
                "RequestForProposal",
                "RequestForQuotation",
                "InvitationToBid",
                "RequestForPreQualification",
                "RequestForInformation",
                "GrantSupportCallForProposal",
                "PreBidNotice",
                "IndividualConsultant",
                "CallForImplementingPartners"
              ],
              "enumTitles": [
                "Not set",
                "Request for EOI",
                "Request for proposal",
                "Request for quotation",
                "Invitation to bid",
                "Request for pre-qualification",
                "Request for information",
                "Grant support - call for proposal",
                "Pre-bid notice",
                "Call for individual consultants",
                "Call for implementing partners"
              ]
            },
            "default": []
          },
          "publishedFrom": {
            "title": "Published from",
            "type": "string",
            "description": "Only notices published on or after this date (YYYY-MM-DD)."
          },
          "publishedTo": {
            "title": "Published to",
            "type": "string",
            "description": "Only notices published on or before this date (YYYY-MM-DD)."
          },
          "deadlineFrom": {
            "title": "Deadline from",
            "type": "string",
            "description": "Only notices whose bid deadline falls on or after this date (YYYY-MM-DD)."
          },
          "deadlineTo": {
            "title": "Deadline to",
            "type": "string",
            "description": "Only notices whose bid deadline falls on or before this date (YYYY-MM-DD)."
          },
          "activeOnly": {
            "title": "Active notices only",
            "type": "boolean",
            "description": "On: only notices that are currently open. Off: also include notices that have closed, including older historical records.",
            "default": true
          },
          "maxItems": {
            "title": "Maximum notices",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Most notices to return. The search is sorted by deadline, so the notices closest to closing come first.",
            "default": 50
          },
          "includeDetails": {
            "title": "Include description, contacts, links and UNSPSC codes",
            "type": "boolean",
            "description": "Reads each notice's page and adds the description as published, the published contact rows, the published links and the UNSPSC codes. Runs take longer with this on.",
            "default": false
          },
          "onlyNewSinceLastRun": {
            "title": "Only new or changed since the last run",
            "type": "boolean",
            "description": "Return only tenders this search has not delivered before, or whose title, deadline, status, value or documents changed since the last run. Keep the same input and schedule to get a clean daily feed.",
            "default": false
          },
          "stateKey": {
            "title": "Feed state key",
            "type": "string",
            "description": "Optional name for the saved feed state. Leave empty to derive it from the input, so different searches keep separate histories. Set a new name to start the feed over.",
            "default": ""
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}