{
  "openapi": "3.0.1",
  "info": {
    "title": "Property Hazard Data API - Wildfire, Flood, Hail Risk",
    "description": "Property risk data for any US address: wildfire risk and special hazard zones, flood zone determination, hail risk and damage scores, hurricane catastrophe hazard, earthquake and brush fire zones, sinkhole, crime risk, public fire protection class, distance to coast and homeowner data.",
    "version": "0.1",
    "x-build-id": "rBnUPwEjHYCC0VtFK"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~property-hazard-risk-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-property-hazard-risk-api",
        "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/nabeelbaghoor~property-hazard-risk-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-property-hazard-risk-api",
        "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/nabeelbaghoor~property-hazard-risk-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-property-hazard-risk-api",
        "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": {
          "report": {
            "title": "Which report to run",
            "enum": [
              "homeownerData",
              "wildfireDetail",
              "wildfireAbbreviated",
              "wildfireExpanded",
              "wildfireSpecialHazardsDetail",
              "wildfireSpecialHazardsAbbreviated",
              "firewise",
              "californiaBrushFire",
              "californiaEarthquakeZone",
              "floodAssistGuaranteed",
              "floodAssistNonGuaranteed",
              "hurricaneCatastropheHazard",
              "hailRiskScore",
              "hailDamageScore",
              "sinkhole",
              "lavaAndTsunami",
              "windpool",
              "distanceToCoast",
              "actualDistanceToCoast",
              "crimeAbbreviated",
              "publicProtectionClassDetail",
              "publicProtectionClassAbbreviated",
              "futureEffectivePublicProtectionClass",
              "buildingCodeEffectiveness",
              "propertyTerritory",
              "autoTerritory",
              "citizensTerritory",
              "premiumTax",
              "latitudeAndLongitude",
              "geocodeAccuracyCheck",
              "unitedKingdomReplacementValuation",
              "hongKongPropertyReport"
            ],
            "type": "string",
            "description": "One report per run, over every address you give it. Hazard reports answer what could happen to a property. Fire protection reports answer how well the local service could respond. Territory reports answer which rating or tax area it falls in. Homeowner and property data answers what the property actually is.",
            "default": "wildfireDetail"
          },
          "addresses": {
            "title": "Addresses",
            "type": "array",
            "description": "One address per line, written as street, city, state and optionally postcode, separated by commas. The state must be its two-letter code. A line with no state is refused rather than sent, because a report for an address the provider had to guess at would look like an answer and would not be one.",
            "items": {
              "type": "string"
            }
          },
          "orgId": {
            "title": "Organisation id",
            "type": "string",
            "description": "The OrgId your provider issued with your credentials. This API carries it inside every request body rather than in a header, and it is how a lookup is attributed to your account."
          },
          "shipId": {
            "title": "Shipping id",
            "type": "string",
            "description": "The ShipId your provider issued with your credentials, alongside the OrgId. Both are required on every request this API serves."
          },
          "consumerKey": {
            "title": "Consumer key",
            "type": "string",
            "description": "Your own consumer key for the property underwriting data provider. This actor is bring-your-own-key and never ships credentials of its own. Leave blank to use the DATA_API_KEY environment secret instead."
          },
          "consumerSecret": {
            "title": "Consumer secret",
            "type": "string",
            "description": "The consumer secret that pairs with your consumer key. The two are exchanged for a bearer token that the provider documents as lasting 60 minutes, so one exchange serves a whole run."
          },
          "useTestEnvironment": {
            "title": "Use the customer test gateway",
            "type": "boolean",
            "description": "Run against the provider's customer integration gateway instead of production. Note that the two issue different credential pairs, so a production key will be refused here and the other way round.",
            "default": false
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "Stop after this many rows. Every row here is a separately metered lookup on your provider contract, so this cap is what keeps a long address list from spending more than you meant.",
            "default": 200
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 300,
            "type": "integer",
            "description": "Pacing ceiling. This API takes one address per request with no batch form, so a long list is a long series of calls. Lower this if your contract sets a throughput limit.",
            "default": 30
          },
          "baseUrl": {
            "title": "API base URL",
            "type": "string",
            "description": "Override the service host. Only needed if your account is served from somewhere other than the public gateway."
          },
          "tokenUrl": {
            "title": "Token URL",
            "type": "string",
            "description": "Override the token host. Only needed if your account authenticates somewhere other than the public gateway's token endpoint."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}