{
  "openapi": "3.0.1",
  "info": {
    "title": "RU Company Property Footprint by INN (auctions + fire-safety)",
    "description": "Real estate linked to a Russian company by INN: buildings it declared for fire-safety compliance (address level) and properties from public auction lots (with cadastral numbers). Partial by design - a company shows up only where it filed a declaration or a property reached an auction.",
    "version": "0.1",
    "x-build-id": "8tO673a0wIo2l7009"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/isolovyev~ru-company-realestate-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-isolovyev-ru-company-realestate-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/isolovyev~ru-company-realestate-finder/runs": {
      "post": {
        "operationId": "runs-sync-isolovyev-ru-company-realestate-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/isolovyev~ru-company-realestate-finder/run-sync": {
      "post": {
        "operationId": "run-sync-isolovyev-ru-company-realestate-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": [
          "inns"
        ],
        "properties": {
          "inns": {
            "title": "INNs",
            "type": "array",
            "description": "Company INN (10 digits for a legal entity) to search for. Each INN is queried against every enabled source and merged into one company record.",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "title": "Sources",
            "type": "array",
            "description": "Which open sources to search per INN. torgi = torgi.gov.ru public auction and bidding lots (covers property actually put up for sale), on by default. mchs = digital.mchs.gov.ru fire-safety declaration registry, where owners declare the buildings they operate directly (needs the resolved company name, see 'Resolve company name'), on by default. sudact = sudact.ru full-text arbitration court decisions - an optional, experimental source, off by default. Turn it on if you need court-sourced records; if a search does not return a result, that is recorded per INN in the output's sourceErrors field and the rest of the record still ships.",
            "items": {
              "type": "string",
              "enum": [
                "sudact",
                "torgi",
                "mchs"
              ],
              "enumTitles": [
                "sudact.ru (court decisions)",
                "torgi.gov.ru (auction lots)",
                "digital.mchs.gov.ru (fire-safety declarations)"
              ]
            },
            "default": [
              "torgi",
              "mchs"
            ]
          },
          "maxPerSource": {
            "title": "Max items examined per source",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Per INN, per source: sudact = max court decisions opened and scanned for cadastral numbers; torgi = max auction lots examined. Higher = more thorough but slower/heavier on the source site.",
            "default": 15
          },
          "resolveCompanyName": {
            "title": "Resolve company name via fedresurs.ru",
            "type": "boolean",
            "description": "Look up each INN on fedresurs.ru first to get the company's legal name, then also search sudact.ru by that name (a bare INN string has much weaker recall in court-decision text than the company's own name) and to search mchs by name (its only search key). If this lookup fails, the run continues with INN-only queries for sudact/torgi and skips mchs - it never blocks the actor.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Required on Apify: set proxyConfiguration to Apify Residential proxy with country RU. All sources require a Russian IP.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "RU"
            }
          },
          "resolveCadastralNumbers": {
            "title": "Resolve cadastral numbers by address",
            "type": "boolean",
            "description": "Fire-safety declarations give an address but no cadastral number. Turn this on to look each address up on the public cadastral map and attach the number, the object type and the address as the register spells it. Auction lots already carry their own number from the lot text and are left untouched.",
            "default": true
          },
          "maxAddressLookups": {
            "title": "Max address lookups per run",
            "minimum": 0,
            "maximum": 200,
            "type": "integer",
            "description": "Safety cap on how many distinct addresses are looked up on the cadastral map - this counts lookups, not objects: a repeated address is served from cache for free and does not count again. Each new lookup takes roughly 13-14 seconds, so a higher cap adds runtime. Objects beyond the cap keep their address and stay without a number.",
            "default": 25
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}