{
  "openapi": "3.0.1",
  "info": {
    "title": "MCA India Company & Director Data Scraper: Email & Phone Leads",
    "description": "Scrape India MCA company and director data(including phone and email) by CIN, DIN, company name, or industry + state. Company master, board of directors, directorships, status, and the company public email. Structured JSON/CSV. B2B company data and lead lists.",
    "version": "1.0",
    "x-build-id": "DQpDBmTXgijjMQwxg"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/factden~mca-company-director-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-factden-mca-company-director-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/factden~mca-company-director-scraper/runs": {
      "post": {
        "operationId": "runs-sync-factden-mca-company-director-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/factden~mca-company-director-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-factden-mca-company-director-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",
        "properties": {
          "mode": {
            "title": "🔎 What to fetch",
            "enum": [
              "company",
              "director"
            ],
            "type": "string",
            "description": "Choose whether to pull company records or director records. Only the section for your choice is used.",
            "default": "company"
          },
          "cins": {
            "title": "🏢 CINs",
            "uniqueItems": true,
            "type": "array",
            "description": "Exact CINs, e.g. U63999MH2024PTC431654. Each one returns that exact company as it stands. The filters below (state, status, type, listed) are ignored for pasted CINs.",
            "items": {
              "type": "string"
            }
          },
          "companyNames": {
            "title": "🏷️ Company names",
            "uniqueItems": true,
            "type": "array",
            "description": "Search by the registered legal name as filed with MCA. This is a prefix match on the registered name, not a substring, so enter the name the way it is registered. Brand or trade names may not resolve.",
            "items": {
              "type": "string"
            }
          },
          "industries": {
            "title": "🏭 Industries",
            "type": "array",
            "description": "Find companies by sector, mapped to the NIC code inside the CIN. Returns companies in the sectors you pick. Add a company name to intersect the two, or use the filters below to narrow by geography or status.",
            "items": {
              "type": "string",
              "enum": [
                "it_software",
                "financial_services",
                "business_services",
                "wholesale_retail_trade",
                "manufacturing",
                "construction_realestate",
                "agriculture",
                "education",
                "healthcare",
                "transport_logistics",
                "hospitality",
                "media_telecom",
                "energy_utilities"
              ],
              "enumTitles": [
                "IT & Software",
                "Financial Services",
                "Business/Professional Services",
                "Wholesale & Retail Trade",
                "Manufacturing",
                "Construction & Real Estate",
                "Agriculture",
                "Education",
                "Healthcare",
                "Transport & Logistics",
                "Hospitality & Food",
                "Media & Telecom",
                "Energy & Utilities"
              ]
            },
            "default": []
          },
          "states": {
            "title": "📍 States / UTs",
            "type": "array",
            "description": "Keep only companies registered in these states or union territories. This narrows a name or industry search, it is not a search on its own.",
            "items": {
              "type": "string",
              "enum": [
                "Andaman & Nicobar Islands",
                "Andhra Pradesh",
                "Arunachal Pradesh",
                "Assam",
                "Bihar",
                "Chandigarh",
                "Chhattisgarh",
                "Dadra & Nagar Haveli",
                "Daman & Diu",
                "Delhi",
                "Goa",
                "Gujarat",
                "Haryana",
                "Himachal Pradesh",
                "Jammu & Kashmir",
                "Jharkhand",
                "Karnataka",
                "Kerala",
                "Ladakh",
                "Lakshadweep",
                "Madhya Pradesh",
                "Maharashtra",
                "Manipur",
                "Meghalaya",
                "Mizoram",
                "Nagaland",
                "Odisha",
                "Puducherry",
                "Punjab",
                "Rajasthan",
                "Sikkim",
                "Tamil Nadu",
                "Telangana",
                "Tripura",
                "Uttar Pradesh",
                "Uttarakhand",
                "West Bengal"
              ]
            },
            "default": []
          },
          "companyStatuses": {
            "title": "🟢 Company status",
            "type": "array",
            "description": "Keep only companies with these statuses. The default is Active only. Clear it to also include struck-off, amalgamated, dormant and the rest.",
            "items": {
              "type": "string",
              "enum": [
                "Active",
                "Strike Off",
                "Under process of striking off",
                "Amalgamated",
                "Dissolved",
                "Dissolved (Liquidated)",
                "Dissolved under section 54",
                "Dissolved under section 59(8)",
                "Dormant under section 455",
                "Converted to LLP",
                "Inactive for e-filing",
                "Under CIRP",
                "Under Liquidation"
              ]
            },
            "default": [
              "Active"
            ]
          },
          "companyTypes": {
            "title": "🏷️ Company type",
            "type": "array",
            "description": "Keep only these registration types, read straight from the CIN with no extra request. Covers the class (Private, Public, OPC) plus foreign, Section-8, government and unlimited companies.",
            "items": {
              "type": "string",
              "enum": [
                "private",
                "public",
                "opc",
                "section8",
                "foreign",
                "government",
                "unlimited"
              ],
              "enumTitles": [
                "Private Limited (PTC)",
                "Public Limited (PLC)",
                "One Person Company (OPC)",
                "Section-8 / Not-for-profit (NPL)",
                "Foreign company / subsidiary (FTC/FLC)",
                "Government (GOI/SGC)",
                "Unlimited (ULT/ULL)"
              ]
            },
            "default": []
          },
          "listed": {
            "title": "📈 Listed status",
            "enum": [
              "any",
              "listed",
              "unlisted"
            ],
            "type": "string",
            "description": "Filter by stock-exchange listing, read from the first letter of the CIN (L is listed, U is unlisted).",
            "default": "any"
          },
          "includeDirectors": {
            "title": "📋 Include board (basic, free)",
            "type": "boolean",
            "description": "Return each company's board as basic director rows (name, DIN, designation, appointment date). Free, included with the company.",
            "default": true
          },
          "directorLeads": {
            "title": "💎 Director contacts ✉️ 📞 (email & phone, paid plan)",
            "type": "boolean",
            "description": "Enrich every board member with their personal email and phone, plus full profile and directorship network. Billed once per unique director (DIN), only when a contact is found. Leave off to ship board basics free. Paid Apify plans only (free plans get the board basics without contacts). Personal data under India's DPDP Act, 2023 - by enabling it you confirm a lawful basis to obtain and process it.",
            "default": false
          },
          "maxCompanies": {
            "title": "🔢 Max companies",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Hard cap on companies returned per run. Each exact CIN returns one. This mainly bounds a name or industry search.",
            "default": 200
          },
          "dins": {
            "title": "👤 DINs",
            "uniqueItems": true,
            "type": "array",
            "description": "Exact 8-digit DINs, e.g. 09397486. Each one returns that exact director as it stands. The filters below are ignored for pasted DINs.",
            "items": {
              "type": "string"
            }
          },
          "directorNames": {
            "title": "🧑‍💼 Director names",
            "uniqueItems": true,
            "type": "array",
            "description": "Search by director name as a prefix match, in first, middle, last order. Common names return many namesakes, so narrow them with the company field below.",
            "items": {
              "type": "string"
            }
          },
          "directorCompany": {
            "title": "🏢 …at company (optional)",
            "type": "string",
            "description": "Narrow a director-name search to the person who sits on a company matching this text (e.g. Infosys). Applied after the search: each namesake's directorships are checked for a company name that contains this keyword. Slower for very common names, since it is one lookup per namesake."
          },
          "includeCompanies": {
            "title": "🏢 Director's companies (free)",
            "type": "boolean",
            "description": "For every company this director sits on, also pull its full company record into the Companies output. Free, bundled with the director lead. A director on many boards means more lookups, so larger runs take a little longer.",
            "default": false
          },
          "maxDirectors": {
            "title": "🔢 Max directors",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Hard cap on directors returned per run in Directors mode. Each exact DIN returns one, so this mainly bounds a name search. It does not apply to Companies mode, which enriches every board member; bound those runs with Max companies.",
            "default": 25
          },
          "proxyConfiguration": {
            "title": "🌐 Proxy",
            "type": "object",
            "description": "Proxy used for requests. Apify Proxy is recommended.",
            "default": {
              "useApifyProxy": true
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}