{
  "openapi": "3.0.1",
  "info": {
    "title": "Australian Property Zoning and Development API",
    "description": "Australian property planning data by address, property ID or coordinate: the zone and overlays over a parcel, permitted and prohibited uses, flood, bushfire and heritage flags, lot identifier and area, development potential with built precedents, and a rendered planning map.",
    "version": "0.1",
    "x-build-id": "OrxC38zzZjFZLNows"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~property-development-potential-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-property-development-potential-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-development-potential-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-property-development-potential-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-development-potential-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-property-development-potential-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": {
          "mode": {
            "title": "What to do",
            "enum": [
              "planningEssentials",
              "developmentPotential",
              "grannyFlatEligibility",
              "propertyImage",
              "matchAddresses"
            ],
            "type": "string",
            "description": "Planning essentials reads the zone, overlays, permitted and prohibited uses and parcel details. Development potential reads the estimated dwelling yield with the built precedents behind it. Granny flat checks eligibility for a secondary dwelling. Property image renders a map with a planning layer drawn over the parcel. Match addresses turns street addresses into the property IDs the other modes use.",
            "default": "planningEssentials"
          },
          "addresses": {
            "title": "Addresses",
            "type": "array",
            "description": "One Australian street address per line. This API takes no free text on its data endpoints, so each address is matched to a property ID first and the match travels on every row it produces.",
            "items": {
              "type": "string"
            }
          },
          "propertyIds": {
            "title": "Property IDs",
            "type": "array",
            "description": "One provider property ID per line, if you already have them from a previous run. Skips the address matching step entirely.",
            "items": {
              "type": "string"
            }
          },
          "points": {
            "title": "Points",
            "type": "array",
            "description": "One \"latitude,longitude\" pair per line, in that order. The actor sends them as the separate named fields this API expects, so a swapped pair cannot quietly return a real parcel somewhere else.",
            "items": {
              "type": "string"
            }
          },
          "suburb": {
            "title": "Suburb",
            "type": "string",
            "description": "Suburb to use for every address, overriding anything parsed out of the address line. Leave empty to let the actor read it from the address."
          },
          "state": {
            "title": "State or territory",
            "enum": [
              "",
              "NSW",
              "VIC",
              "QLD",
              "SA",
              "WA",
              "TAS",
              "NT",
              "ACT"
            ],
            "type": "string",
            "description": "State or territory to use for every address, overriding anything parsed out of the address line.",
            "default": ""
          },
          "postCode": {
            "title": "Postcode",
            "type": "integer",
            "description": "Four digit postcode to use for every address, overriding anything parsed out of the address line."
          },
          "includePrecedents": {
            "title": "Include development precedents",
            "type": "boolean",
            "description": "Adds the nearby built precedents behind a development potential estimate to each row: their address, zone, site area, dwelling count and estimated frontage. These are the comparable approvals the estimate rests on, so they are on by default.",
            "default": true
          },
          "overlay": {
            "title": "Image overlay",
            "enum": [
              "zoning",
              "heritage",
              "bushfire",
              "flood",
              "contours"
            ],
            "type": "string",
            "description": "Which planning layer the property image mode draws over the parcel.",
            "default": "zoning"
          },
          "addLegend": {
            "title": "Add a legend to the image",
            "type": "boolean",
            "description": "Returns the legend items for the overlay alongside the image, so a stored row can be read without opening the picture.",
            "default": true
          },
          "imageWidth": {
            "title": "Image width (pixels)",
            "type": "integer",
            "description": "Width of the generated property image in pixels.",
            "default": 660
          },
          "imageHeight": {
            "title": "Image height (pixels)",
            "type": "integer",
            "description": "Height of the generated property image in pixels.",
            "default": 845
          },
          "maxResults": {
            "title": "Maximum rows",
            "type": "integer",
            "description": "Stop after this many rows. Counts every row: planning records, development potential, eligibility checks, images and address matches alike.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "type": "integer",
            "description": "How fast to call the provider. The default of 60 is one a second, which is polite for a metered API. Raise it if your contract allows more.",
            "default": 60
          },
          "apiKey": {
            "title": "API key",
            "type": "string",
            "description": "Your own account key, issued by the provider. Sent in an x-api-key header. Paste the key on its own rather than a whole header line or a bearer token. Stored encrypted and never written into the dataset. Can also be supplied as the DATA_API_KEY environment secret."
          },
          "baseUrl": {
            "title": "API host",
            "type": "string",
            "description": "Overrides the host the API is called on. Leave empty unless the provider has given you a different one."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}