{
  "openapi": "3.0.1",
  "info": {
    "title": "GDACS Disaster Alerts Scraper — GeoJSON & Filters",
    "description": "Extract official GDACS alerts for earthquakes, floods, cyclones, volcanoes, droughts, and wildfires. Use for crisis monitoring, research, newsrooms, and automation. Not for official warnings. Returns typed alerts with severity, country, dates, coordinates, sources, and report URLs. $0.010 per alert.",
    "version": "1.2",
    "x-build-id": "9MttSHDimRhDxe6vj"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/muhammadafzal~gdacs-disaster-alerts-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-muhammadafzal-gdacs-disaster-alerts-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/muhammadafzal~gdacs-disaster-alerts-scraper/runs": {
      "post": {
        "operationId": "runs-sync-muhammadafzal-gdacs-disaster-alerts-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/muhammadafzal~gdacs-disaster-alerts-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-muhammadafzal-gdacs-disaster-alerts-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": {
          "eventTypes": {
            "title": "Disaster types",
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "description": "Use this when you need specific GDACS hazard types. Pass one or more codes such as ['EQ', 'FL'] for earthquakes and floods. Defaults to all six supported types. This is not a free-text keyword search.",
            "items": {
              "type": "string",
              "enum": [
                "EQ",
                "TC",
                "FL",
                "VO",
                "DR",
                "WF"
              ],
              "enumTitles": [
                "Earthquakes",
                "Tropical cyclones",
                "Floods",
                "Volcanoes",
                "Droughts",
                "Wildfires"
              ]
            },
            "default": [
              "EQ",
              "TC",
              "FL",
              "VO",
              "DR",
              "WF"
            ]
          },
          "alertLevels": {
            "title": "Alert levels",
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "description": "Use this when you need a GDACS impact-alert severity band. Pass values such as ['orange', 'red'] for higher-concern events. Defaults to green, orange, and red. This is not an earthquake-magnitude filter.",
            "items": {
              "type": "string",
              "enum": [
                "green",
                "orange",
                "red"
              ],
              "enumTitles": [
                "Green",
                "Orange",
                "Red"
              ]
            },
            "default": [
              "green",
              "orange",
              "red"
            ]
          },
          "daysBack": {
            "title": "Days to look back",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "Use this when dateFrom is empty and you want a rolling time window. Enter an integer such as 7 for the previous seven days ending at dateTo or today. Defaults to 7 and allows 1 to 3650. This does not override an explicit dateFrom.",
            "default": 7
          },
          "dateFrom": {
            "title": "Start date",
            "type": "string",
            "description": "Use this when you need an exact inclusive start date. Enter YYYY-MM-DD, for example '2026-08-01'. Defaults to empty, which derives the date from daysBack. This is not an ISO date-time with hours or a timezone.",
            "default": ""
          },
          "dateTo": {
            "title": "End date",
            "type": "string",
            "description": "Use this when you need an exact inclusive end date. Enter YYYY-MM-DD, for example '2026-08-11'. Defaults to empty, which uses the current UTC date. This is not a relative duration; use daysBack for rolling windows.",
            "default": ""
          },
          "countries": {
            "title": "Countries or ISO codes",
            "type": "array",
            "description": "Use this when alerts must match named or affected countries. Enter one value per line, such as Japan or PHL, using full GDACS country names or ISO-3 codes. Defaults to an empty worldwide list. This is not a fuzzy place-name or city search.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "boundingBox": {
            "title": "Geographic bounding box",
            "maxItems": 4,
            "type": "array",
            "description": "Use this when alerts must fall inside a geographic rectangle. Pass [west, south, east, north], for example [100, -10, 160, 30]; antimeridian-crossing boxes are supported. Defaults to [] for no spatial filter. This is not a polygon or radius search.",
            "items": {
              "type": "number"
            },
            "default": []
          },
          "onlyCurrent": {
            "title": "Current events only",
            "type": "boolean",
            "description": "Use this when you only want events GDACS currently marks active. Set true to exclude concluded events, for example in a scheduled monitoring workflow. Defaults to true. This does not mean the alert has been independently confirmed by local authorities.",
            "default": true
          },
          "maxResults": {
            "title": "Maximum alerts",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Use this to cap dataset rows and predictable result charges. Enter an integer such as 50; GDACS pages are fetched until the cap or source exhaustion. Defaults to 50 and allows 1 to 5000. This is not the upstream API page size.",
            "default": 50
          },
          "skipSeen": {
            "title": "Skip alerts seen before",
            "type": "boolean",
            "description": "Use this for scheduled monitoring that should emit only unseen GDACS event episodes. Set true to persist emitted event keys in a named watchlist, for example a daily automation. Defaults to false. This is not within-run deduplication, which is always enabled.",
            "default": false
          },
          "watchlistName": {
            "title": "Watchlist name",
            "minLength": 1,
            "maxLength": 60,
            "type": "string",
            "description": "Use this to isolate cross-run history when skipSeen is enabled. Enter a stable label such as 'apac-crisis-monitor'; letters, numbers, and hyphens are normalized. Defaults to 'default'. This is not an Apify dataset or key-value store ID.",
            "default": "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}