{
  "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, capital, filings, status, and the company public email. Structured JSON/CSV. B2B company data and lead lists.",
    "version": "1.0",
    "x-build-id": "XRWWLgpA7ioUeiXwW"
  },
  "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)",
            "type": "boolean",
            "description": "Get each director's personal contact (email and phone), plus their full profile and every company they direct (the directorship network). Every director on each company's board is enriched (there is no per-director cap; bound the run with Max companies). You are billed once per unique director (DIN), not per row, and only when a contact is actually found. Leave it off to ship the board basics for free. This is personal data protected under India's DPDP Act, 2023, so by enabling it you confirm you have a lawful basis or consent to obtain and process it and are responsible for using it compliantly.",
            "default": false
          },
          "maxCompanies": {
            "title": "🔢 Max companies",
            "minimum": 1,
            "maximum": 1000000,
            "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. 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": 1000000,
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}