{
  "openapi": "3.0.1",
  "info": {
    "title": "EPA Brownfield-to-Solar Site Finder - RE-Powering Mapper",
    "description": "Find EPA RE-Powering pre-screened contaminated land, landfills and abandoned mine sites with renewable-energy redevelopment potential. Filter 190,976 sites by state, technology, acreage, solar and wind resource and 2022 interconnection context, ranked as development candidates.",
    "version": "1.0",
    "x-build-id": "SItKgwi6bMD4IEpno"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/malonestar~epa-repowering-brownfield-to-solar-site-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-malonestar-epa-repowering-brownfield-to-solar-site-finder",
        "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/malonestar~epa-repowering-brownfield-to-solar-site-finder/runs": {
      "post": {
        "operationId": "runs-sync-malonestar-epa-repowering-brownfield-to-solar-site-finder",
        "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/malonestar~epa-repowering-brownfield-to-solar-site-finder/run-sync": {
      "post": {
        "operationId": "run-sync-malonestar-epa-repowering-brownfield-to-solar-site-finder",
        "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": [
          "states"
        ],
        "properties": {
          "states": {
            "title": "States (required)",
            "type": "array",
            "description": "Two-letter US state or territory codes to screen, for example [\"CO\"] or [\"PA\",\"WV\"]. Required, and capped at 6 per run, so that a bare {} call can never run against all 190,976 national sites and bill for it.",
            "items": {
              "type": "string"
            }
          },
          "counties": {
            "title": "Counties",
            "type": "array",
            "description": "Optional county names to narrow the search, matched exactly and case-insensitively against EPA's County column, for example [\"EL PASO\",\"DENVER\"]. Leave empty for all counties in the chosen states.",
            "items": {
              "type": "string"
            }
          },
          "cities": {
            "title": "Cities",
            "type": "array",
            "description": "Optional city names to narrow the search, matched exactly and case-insensitively against EPA's City column. Note that 19,675 sites carry no city, so a city filter will exclude them.",
            "items": {
              "type": "string"
            }
          },
          "technologies": {
            "title": "Renewable technologies",
            "type": "array",
            "description": "Keep only sites EPA flagged for at least one of these technologies. Valid values: utility_solar, distributed_solar, offgrid_solar, utility_wind, community_wind, facility_wind, biopower, biorefinery. Leave empty for every technology. Note that EPA's summary Solar column is 'Y' on all 190,976 sites and carries no information, so this actor filters on the scale-specific columns instead.",
            "items": {
              "type": "string"
            }
          },
          "programCategories": {
            "title": "Cleanup program categories",
            "type": "array",
            "description": "Keep only sites whose EPA program falls in these categories. Valid values: abandoned_mine_land, brownfield, landfill, superfund, rcra_corrective_action, underground_storage_tank, institutional_control, state_cleanup_program. Applied in memory after the query, because the category is derived from EPA's 49 verbatim program names.",
            "items": {
              "type": "string"
            }
          },
          "landfillOnly": {
            "title": "Known landfills only",
            "type": "boolean",
            "description": "Keep only the 18,298 sites EPA flags as a known landfill. Landfill-to-solar is the deepest-precedent redevelopment archetype."
          },
          "abandonedMineLandOnly": {
            "title": "Abandoned mine land only",
            "type": "boolean",
            "description": "Keep only the 17,756 sites EPA flags as known Abandoned Mine Land."
          },
          "minAcreage": {
            "title": "Minimum acreage",
            "minimum": 1,
            "type": "integer",
            "description": "Minimum site acreage. EPA writes acreage 0 as a null sentinel on 108,888 sites (it means 'acreage unknown', not 'zero acres'), so any minimum-acreage filter necessarily excludes every site with unknown acreage."
          },
          "minGhi": {
            "title": "Minimum solar resource (GHI, kWh/m2/day)",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Minimum maximum-annual Global Horizontal Irradiance. Measured range across the layer is 2.0 to 6.9 kWh/m2/day."
          },
          "minWindSpeed100m": {
            "title": "Minimum wind speed at 100 m (m/s)",
            "minimum": 0,
            "maximum": 20,
            "type": "integer",
            "description": "Minimum modelled wind speed at 100 m hub height. Roughly 6.5 m/s and above is where utility-scale wind becomes interesting."
          },
          "maxSubstationDistanceMiles": {
            "title": "Max distance to substation (miles, 2022 estimate)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum distance to the nearest substation. This is EPA's FROZEN 2022 precomputation, not a live measurement, and it must not be used to size an interconnection. Run hifld-grid-proximity-screener on the returned coordinates for the live figure."
          },
          "maxTransmissionDistanceMiles": {
            "title": "Max distance to transmission (miles, 2022 estimate)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum distance to the nearest transmission line, again from EPA's frozen 2022 precomputation rather than a live measurement."
          },
          "minTransmissionKv": {
            "title": "Minimum nearby transmission voltage (kV, 2022 estimate)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum voltage of the nearest transmission line from EPA's 2022 precomputation. Note that 16,803 sites publish a voltage while reporting the line status as NOT AVAILABLE, which this actor flags on the row rather than silently resolving."
          },
          "sortBy": {
            "title": "Sort order",
            "enum": [
              "score_desc",
              "acreage_desc",
              "ghi_desc",
              "wind_speed_desc",
              "interconnection_distance_asc",
              "state_then_county"
            ],
            "type": "string",
            "description": "How to order the returned sites. Valid values: score_desc (default), acreage_desc, ghi_desc, wind_speed_desc, interconnection_distance_asc, state_then_county. Sites with a missing value always sort last."
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of sites to return and bill for. Every row also carries matched_sites_total and results_truncated, so a capped answer can never be mistaken for a complete one.",
            "default": 500
          },
          "simulateOutage": {
            "title": "Simulate an outage (diagnostics)",
            "enum": [
              "none",
              "total_floor",
              "positive_canary",
              "sentinel_integrity",
              "negative_control",
              "filter_narrows",
              "pv_plateau_integrity",
              "all_probes",
              "paging"
            ],
            "type": "string",
            "description": "Diagnostic seam that forces a specific drift probe or the paging step to fail, so the failure paths can be re-proved on demand rather than only during a real outage. Valid values: none (default), total_floor, positive_canary, sentinel_integrity, negative_control, filter_narrows, pv_plateau_integrity, all_probes, paging."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}