MCA Company Search API
SEARCH MCA REGISTERED COMPANIES BY NAME AND MORE
Description
Depending on the use case, organizations frequently need to search for companies based on name, location, incorporation date, and other factors. Attestr provides a search API that is built on an indexed database with around 3 million Indian registered companies master data.

API Details
Request
Type | URL | Current / LTS Version | Min Version | Max Version |
---|---|---|---|---|
POST | https://api.attestr.com/api/{version}/public/corpx/business/search | v2 | v2 | - |
Request Header Parameters
Type | Name | Value / Description | Optional | Min Version | Max Version |
---|---|---|---|---|---|
String | Content-Type | application/json | Required | v2 | |
String | Authorization | Basic {authToken} | Required | v2 |
If you do not have the authentication token, please refer to Register App
Request Body Parameters
Type | Name | Description | Optional (default) | Min Version | Max Version |
---|---|---|---|---|---|
Business Name Search Object | businessName | Criteria object to search using businessName. See table below for definition. | Optional | v2 | |
String | city | Name of the city | Optional | v2 | |
String | state | Name of the state | Optional | v2 | |
String | type | Type of the company. See table below for allowed values | Optional | v2 | |
String | incorporatedBefore | Date string in DD-MM-YYYY format. | Optional | v2 | |
String | incorporatedAfter | Date string in DD-MM-YYYY format. | Optional | v2 | |
Boolean | active | Set true for searching active companies only. | Optional | v2 | |
Number | skip | Pagination parameter. Number of records to skip. | Optional | v2 | |
Number | limit | Pagination parameter. Number of records to return. skip and limit must be used in conjunction. | Optional | v2 | |
String | sort | Sort parameter. Allowed values are -
| Optional | v2 | |
Number | sortOrder | Sort order. Use 1 for ascending and -1 for descending order. sort and sortOrder must be used in conjunction. | Optional | v2 |
Business Name Search Object
Type | Key | Description | Required/Optional | Min Version | Max Version |
---|---|---|---|---|---|
String | matchCriteria | Business name match criteria. Allowed values are - CONTAINS - The response returns only the company names that, in any order, contain every word from the supplied value. In the event that enableFuzzy is selected, all words are matched in a fuzzy manner. Eg. Input: Pegas Eg. Output Pegadroid IQ Solutions Pvt Ltd Pemas National LLC Vegas Corp. EQUALS - Name is exactly same as provided value. Eg. Input: Pegadroid IQ Solutions Pvt Ltd Eg. Output Pegadroid IQ Solutions Pvt Ltd MATCHES - Name matches the provided value. The search result includes all company names that contain one or more words from the supplied value. Additionally, this search recognizes commonly used abbreviations, so terms like "private" and "pvt." as well as "corporation" and "corp" are processed similarly. Eg. Input: If the provided value is IQ Solutions Private, the search will return all the records which contain one or more of the words IQ, Solutions or Private in any order. Eg. Output:
PHRASE - Name contains the provided value as a Phrase. Eg. Input: If the provided phrase is IQ Solutions Private, the search will return all the records which contain the terms IQ, Solutions and Private in the exact same order. Positions need not to be next to each other. Eg. Output:
| Required | v2 | |
String | matchValue | Value to be searched for the specified match criteria | Required | v2 | |
Boolean | enableFuzzy | Allowed only when the match criteria is CONTAINS. If set, fuzzy search mode is enabled. Know more about fuzzy searches. | Conditional | v2 |
Company Types
Value | Description |
---|---|
FLC | Financial Lease Company as Public Limited |
FTC | Subsidiary of a Foreign Company as Private Limited Company |
GAP | General Association Public |
GAT | General Association Private |
GOI | Companies owned by Govt. Of India |
NPL | Not For Profits License Company |
PLC | Public Limited Company |
PTC | Private Limited Company |
SGC | Companies owned by State Govt. |
ULL | Public Limited Company with Unlimited Liability |
ULT | Private Limited Company with Unlimited Liability |
LLP | Limited Liability Partnership |
OPC | One Person Company |
FCN | Foreign Company |
FLLP | Foreign Limited Liability Partnership |
Sample Request
{
"businessName": {
"matchCriteria": "CONTAINS",
"matchValue": "PHOENIX",
"enableFuzzy": true
},
"city": "Hyderabad",
"state": "Telangana",
"type": "PTC",
"incorporatedAfter":"31-12-2004",
"incorporatedBefore":"31-12-2021",
"active": true,
"skip": 0,
"limit": 100,
"sort": "businessName",
"sortOrder": 1
}
Response
HTTP status code 200
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
indexId | Unique Attestr index Id assigned to every registered company | String | v2 | |
type | Type of the company | String | v2 | |
status | Company status - Active, Dissolved etc. | String | v2 | |
businessName | Registered legal entity name | String | v2 | |
incorporatedDate | Incorporated date string DD-MM-YYYY | String | v2 | |
active | Boolean flag indicating if the company status is active | Boolean | v2 | |
addresses | List of all associated addresses | Array (MCA Address Object) | v2 |
MCA Address Object
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
type | Type of the address - Registered Address, Annual Return Address, Book Address etc. | String | v2 | |
line1 | Line 1 of the address | String | v2 | |
line2 | Line 2 of the address | String | v2 | |
line3 | Line 3 of the address | String | v2 | |
line4 | Line 4 of the address | String | v2 | |
locality | Locality name | String | v2 | |
district | District where located | String | v2 | |
city | City name | String | v2 | |
state | Name of the state | String | v2 | |
country | Country | String | v2 | |
zip | Pin code of the address | String | v2 | |
officeType | Type of office | String | v2 | |
active | Whether current address or past address | Boolean | v2 | |
establishmentDate | Date of establishment at this address if available | String | v2 | |
fullAddress | Complete address in one line | String | v2 |
Sample Response
Sample response for matching results found
[
{
"type": "Private Limited Company",
"status": "Active",
"businessName": "REVA PHOENIX ENGINEERS & CONSULTANTS INDIA PRIVATE LIMITED",
"incorporatedDate": "09-09-2011",
"addresses": [
{
"type": "Annual Return Address",
"city": "chennai",
"state": "Tamil Nadu",
"fullAddress": "New No.14, 4th Street, Rajarajeshwari Nagar, Madipakkam, NA, chennai, Tamil Nadu, India, 600091"
},
{
"type": "Registered Address",
"city": "CHENNAI",
"state": "Tamil Nadu",
"fullAddress": "NEW NO 14, 4TH STREET, RAJA RAJESHWARI NAGAR, MADIPAKKAM, NA, Chennai, CHENNAI, Tamil Nadu, India, 600091"
},
{
"type": "Police Station Address",
"city": "CHENNAI",
"state": "Tamil Nadu",
"fullAddress": "BIG STREET, MADIPAKKAM, NA, CHENNAI, Tamil Nadu, India, 600117"
}
],
"active": true,
"indexId": "U74999TN2011PTC082281"
},
{
"type": "Private Limited Company",
"status": "Active",
"businessName": "PHOENIX FACILITIES PRIVATE LIMITED",
"incorporatedDate": "04-09-1961",
"addresses": [
{
"type": "Annual Return Address",
"city": "AMEDABAD",
"state": "Gujarat",
"fullAddress": "ANAND BHAVAN 2ND FLOOR,NR.RUPAM CINEMA,RELIEF ROAD,, NA, AMEDABAD, Gujarat, India, 380001"
},
{
"type": "Police Station Address",
"city": "Ahmedabad",
"state": "Gujarat",
"fullAddress": "Karanj Bhavan, Opp. Bhadrakali Mata Mandir, Laldarwaja,, NA, Ahmedabad, Gujarat, India, 380001"
},
{
"type": "Registered Address",
"city": "Ahmedabad",
"state": "Gujarat",
"fullAddress": "1st Floor, Sastu Sahitya Buliding Swami Akhandanand Marg, Bhadra, NA, Ahmedabad, Ahmedabad, Gujarat, India, 380001"
}
],
"active": true,
"indexId": "U65910GJ1961PTC001083"
}
]
Sample response for no records
[]
Error Response
Parameter | Type | Description |
---|---|---|
code | Number | Unique error codes for different errors. Always available. |
message | String | Error message describing the error. Always Available. |
details | String | Detail error message. Available only for certain types of errors. |
Error Codes
HTTP Status | Error Code | Error Message |
---|---|---|
400 | 4001 | Malformed data or missing required parameter values |
400 | 4005 | Operation could not be performed due to low credits balance |
401 | 4016 | Invalid client authorization |
403 | 4031 | Unauthorized access |
403 | 4035 | Requested service is not provisioned for your account |
403 | 4039 | Client's IP address is not whitelisted |
403 | 4035 | Requested service is not provisioned for your account |
429 | 4291 | Maximum account rate limit exceeded |
429 | 4292 | Maximum API rate limit exceeded |
429 | 4293 | Maximum account daily limit exceeded |
429 | 4294 | Maximum API daily limit exceeded |
500 | 5001 | Request could not be processed |
Sample Error Response
{
"code": 4001,
"message": "Malformed data or missing required parameter values"
}