{
  "openapi": "3.0.1",
  "info": {
    "title": "California Unclaimed Property Scraper",
    "description": "Search California's official Unclaimed Property database (State Controller's Office) by owner name, city, or holder business. Browse by value range. Free, no login, sourced from the SCO's public weekly data files.",
    "version": "1.0",
    "x-build-id": "wYwBIgVnatB6l9HV8"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/crawlerbros~ca-unclaimed-property-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-crawlerbros-ca-unclaimed-property-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/crawlerbros~ca-unclaimed-property-scraper/runs": {
      "post": {
        "operationId": "runs-sync-crawlerbros-ca-unclaimed-property-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/crawlerbros~ca-unclaimed-property-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-crawlerbros-ca-unclaimed-property-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",
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "title": "Mode",
            "enum": [
              "search",
              "browse",
              "byId"
            ],
            "type": "string",
            "description": "What to do.",
            "default": "search"
          },
          "ownerName": {
            "title": "Owner name (mode=search)",
            "type": "string",
            "description": "Full or partial owner name to search for (case-insensitive substring match against the owner-of-record). Required for mode=search. Example: `Smith`.",
            "default": "Smith"
          },
          "propertyId": {
            "title": "Property ID (mode=byId)",
            "type": "string",
            "description": "Exact SCO property identifier to look up (the `propertyId` field from a previous run's output). Required for mode=byId. If the property isn't found, try `valueRange: \"all\"` — you may not know which value bucket it lives in."
          },
          "ownerCity": {
            "title": "Owner city contains",
            "type": "string",
            "description": "Only keep records whose owner city contains this text (case-insensitive)."
          },
          "ownerState": {
            "title": "Owner state",
            "enum": [
              "",
              "AL",
              "AK",
              "AZ",
              "AR",
              "CA",
              "CO",
              "CT",
              "DE",
              "DC",
              "FL",
              "GA",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "OH",
              "OK",
              "OR",
              "PA",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY",
              "AS",
              "GU",
              "MP",
              "PR",
              "VI"
            ],
            "type": "string",
            "description": "Only keep records where the owner's on-file state matches exactly. Most owners are in CA, but out-of-state owners are common.",
            "default": ""
          },
          "ownerZip": {
            "title": "Owner ZIP starts with",
            "type": "string",
            "description": "Only keep records whose owner ZIP code starts with this value. Enter a full 5-digit ZIP (`94105`) or a shorter prefix for a wider area (`941`)."
          },
          "ownerCountry": {
            "title": "Owner country contains",
            "type": "string",
            "description": "Only keep records whose owner country code contains this text (case-insensitive). The SCO stores mostly ISO-3166 alpha-3 codes, e.g. `USA`, `CAN`, `MEX`, `GBR`, `CHN`, `JPN`; a small share of records use 2-letter codes instead, so a short prefix like `US` also works."
          },
          "holderName": {
            "title": "Holder business name contains",
            "type": "string",
            "description": "Only keep records where the company/entity that reported the property (the \"holder\") contains this text. Useful for finding everything a specific company owes, e.g. `Bank of America`."
          },
          "holderCity": {
            "title": "Holder city contains",
            "type": "string",
            "description": "Only keep records whose holder (reporting business) city contains this text (case-insensitive)."
          },
          "holderState": {
            "title": "Holder state",
            "enum": [
              "",
              "AL",
              "AK",
              "AZ",
              "AR",
              "CA",
              "CO",
              "CT",
              "DE",
              "DC",
              "FL",
              "GA",
              "HI",
              "ID",
              "IL",
              "IN",
              "IA",
              "KS",
              "KY",
              "LA",
              "ME",
              "MD",
              "MA",
              "MI",
              "MN",
              "MS",
              "MO",
              "MT",
              "NE",
              "NV",
              "NH",
              "NJ",
              "NM",
              "NY",
              "NC",
              "ND",
              "OH",
              "OK",
              "OR",
              "PA",
              "RI",
              "SC",
              "SD",
              "TN",
              "TX",
              "UT",
              "VT",
              "VA",
              "WA",
              "WV",
              "WI",
              "WY",
              "AS",
              "GU",
              "MP",
              "PR",
              "VI"
            ],
            "type": "string",
            "description": "Only keep records where the holder's on-file state matches exactly. Holders are often out-of-state (e.g. insurance/brokerage HQs).",
            "default": ""
          },
          "propertyTypeContains": {
            "title": "Property type contains",
            "type": "string",
            "description": "Only keep records whose NAUPA property-type code/description contains this text, e.g. `Securities`, `Wages`, `Insurance`, `Safe Deposit`, `Utility`."
          },
          "propertyCategory": {
            "title": "Property category",
            "enum": [
              "",
              "AC",
              "CK",
              "SC",
              "MS",
              "IN",
              "TR",
              "MI",
              "CT",
              "IR",
              "UT",
              "HS",
              "SD",
              "CS",
              "ED"
            ],
            "type": "string",
            "description": "Only keep records in this top-level NAUPA property category (verified against the live database). Records reported under the legacy pre-2-letter numeric codes (~24% of rows, labelled \"Non Standard NAUPA Code\") aren't classified into these categories and are excluded when a category is chosen — use `propertyTypeContains` to also catch those.",
            "default": ""
          },
          "cusip": {
            "title": "CUSIP",
            "type": "string",
            "description": "Only keep records whose security identifier (CUSIP) matches exactly, e.g. `92343V104`. Only present on securities-type properties."
          },
          "minCashBalance": {
            "title": "Min current cash balance (USD)",
            "minimum": 0,
            "maximum": 100000000,
            "type": "integer",
            "description": "Drop records with a current cash balance below this amount."
          },
          "maxCashBalance": {
            "title": "Max current cash balance (USD)",
            "minimum": 0,
            "maximum": 100000000,
            "type": "integer",
            "description": "Drop records with a current cash balance above this amount."
          },
          "valueRange": {
            "title": "Value range bucket to scan",
            "enum": [
              "500plus",
              "100to500",
              "10to100",
              "under10",
              "all"
            ],
            "type": "string",
            "description": "The SCO publishes its database as 4 separate files by dollar value. Smaller buckets download/scan faster. `all` scans every bucket (smallest first) and can take several minutes.",
            "default": "500plus"
          },
          "maxItems": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Hard cap on emitted records. With `sortBy: \"none\"` the scan stops early once this many matches are found. With any other `sortBy`, this is also the number of top-ranked records kept.",
            "default": 50
          },
          "sortBy": {
            "title": "Sort by",
            "enum": [
              "none",
              "cashDesc",
              "cashAsc",
              "ownerNameAsc",
              "ownerNameDesc"
            ],
            "type": "string",
            "description": "Order emitted records and keep only the top `maxItems`. Any option other than `none` requires scanning the entire selected value-range bucket(s) to guarantee a correct ranking (no early stop), so it's slower — especially with `valueRange: \"all\"`.",
            "default": "none"
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}