{
  "openapi": "3.0.1",
  "info": {
    "title": "Brazil JUCESP Junta Comercial State Registry Scraper",
    "description": "Search São Paulo Junta Comercial (JUCESP) by company name, CNPJ, or NIRE. Returns NIRE, CNPJ, company type, constitution date, share capital, business object, and address. Every term returns a row — a confirmed \"not registered in SP\" counts as a result. For KYC, AML, and M&A diligence.",
    "version": "0.1",
    "x-build-id": "VxaEm9hAqWdXotcWO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jungle_synthesizer~brazil-jucesp-junta-comercial-state-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jungle_synthesizer-brazil-jucesp-junta-comercial-state-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/jungle_synthesizer~brazil-jucesp-junta-comercial-state-scraper/runs": {
      "post": {
        "operationId": "runs-sync-jungle_synthesizer-brazil-jucesp-junta-comercial-state-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/jungle_synthesizer~brazil-jucesp-junta-comercial-state-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-jungle_synthesizer-brazil-jucesp-junta-comercial-state-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": [
          "sp_intended_usage",
          "sp_improvement_suggestions",
          "searchTerms"
        ],
        "properties": {
          "sp_intended_usage": {
            "title": "What is the intended usage of this data?",
            "minLength": 1,
            "type": "string",
            "description": "What will this data feed? E.g. lead lists, KYB checks, price tracking."
          },
          "sp_improvement_suggestions": {
            "title": "How can we improve this crawler for you?",
            "minLength": 1,
            "type": "string",
            "description": "Provide any feedback or suggestions for improvements."
          },
          "sp_contact": {
            "title": "Contact email (optional)",
            "minLength": 1,
            "type": "string",
            "description": "We'll personally help with your use case. No spam."
          },
          "lookupMode": {
            "title": "Lookup Mode",
            "enum": [
              "razao_social",
              "cnpj",
              "nire"
            ],
            "type": "string",
            "description": "How to search the JUCESP database.",
            "default": "razao_social"
          },
          "searchTerms": {
            "title": "Search Terms",
            "type": "array",
            "description": "List of search values to look up (names, CNPJs, or NIREs depending on Lookup Mode).",
            "items": {
              "type": "string"
            }
          },
          "concurrency": {
            "title": "Concurrency",
            "minimum": 1,
            "maximum": 32,
            "type": "integer",
            "description": "How many search terms to process at once. Each one runs on its own session and its own proxy IP, so raising this speeds up large batches without hammering the registry from a single address. Range 1-32. The default of 8 is the measured sweet spot at the default memory; raising it further pays off only if you raise memory too.",
            "default": 8
          },
          "detailConcurrency": {
            "title": "Detail Fetch Concurrency",
            "minimum": 1,
            "maximum": 16,
            "type": "integer",
            "description": "How many company pages to fetch at once within a single search term. Company pages need no search context, so they are fetched on their own connections. Total requests in flight is Concurrency x this, capped at 32 — if the product would exceed that, this value is reduced.",
            "default": 4
          },
          "maxItems": {
            "title": "Max Items",
            "type": "integer",
            "description": "Maximum number of rows to return (0 = unlimited). Counts both found companies and confirmed not-found results — every term you submit yields one row per answer, and all of them are billed at the record rate. Set this to bound what a bulk lookup can cost.",
            "default": 10
          },
          "documents": {
            "title": "Documents to Emit (NIRE lookup only)",
            "type": "array",
            "description": "Which free JUCESP documents to emit for each company, in addition to the registry record. Requires your own JUCESP sign-in (see below) — JUCESP charges nothing for these, but it will not release them anonymously. Leave empty for the registry record only. Paid certidões are not offered.",
            "items": {
              "type": "string",
              "enum": [
                "ficha_completa",
                "copia_digitalizada"
              ],
              "enumTitles": [
                "Ficha Cadastral Completa (registry summary, native text)",
                "Cópia Digitalizada (scanned archived documents)"
              ]
            },
            "default": []
          },
          "jucespCpf": {
            "title": "JUCESP CPF",
            "type": "string",
            "description": "Your JUCESP Online sign-in CPF. Only needed when \"Documents to Emit\" is set. Sign-in uses the Nota Fiscal Paulista credential (or gov.br) at jucesponline.sp.gov.br. Punctuated CPFs are accepted."
          },
          "jucespPassword": {
            "title": "JUCESP Password",
            "type": "string",
            "description": "Password for the CPF above. Only needed when \"Documents to Emit\" is set. Stored encrypted by Apify and never written to the dataset, the key-value store, or the log."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}