MCA Director Master Data DIN API
GET DIRECTOR MASTER DATA LIVE AS REGISTERED WITH MCA
Description
The Ministry of Corporate Affairs' (MCA) Registrar of Companies (ROC) office is responsible for overseeing company registration and administration. For a given Director Identification Number (DIN), this API retrieves the live director information as registered in the MCA database.

API Details
Request
Type | URL | Current / LTS Version | Min Version | Max Version |
---|---|---|---|---|
POST | https://api.attestr.com/api/{version}/public/corpx/director/master | v2 | v1 |
Version v1 of MCA Director Data API is now deprecated as of Dec 1, 2023. All new integrations must use version v2. Existing v1 integrations will become end-of-life effective Mar 1, 2024.
Request Body Parameters
Type | Name | Description | Optional (default) | Min Version | Max Version |
---|---|---|---|---|---|
String | reg | Input DIN | Required | v1 | |
Boolean | live | Flag indicating if live data should be fetched from MCA | Optional (false) | v2 | |
Boolean | fetchLiveOnCacheMiss | When live mode is off, this flag can be enabled to fetch live data if indexed document is not available. For live mode on, this flag has no relevance. | Optional (false) | v2 | |
Boolean | advanced | Enable advanced mode to fetch the director complete profile including personal identifiable information (PII) and contact details | Optional (false) | v2 |
Advanced mode is available only on request. For more details, please talk to us or write to us at contact@attestr.com.
Request Header Parameters
Type | Name | Value / Description | Optional | Min Version | Max Version |
---|---|---|---|---|---|
String | Content-Type | application/json | Required | v1 | |
String | Authorization | Basic {authToken} | Required | v1 |
If you do not have the authentication token, please refer to Register App to generate one.
Sample Request
{
"reg": "01745078",
"live": false,
"fetchLiveOnCacheMiss": false,
"advanced": false
}
Response
HTTP status code 200
Please note that the valid key decides the availability of rest of the keys in the response. If provided registration number is invalid, all keys except valid and message are omitted. If true, remaining keys will have appropriate data.
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
valid | True | false indicating if the provided registration number number is valid. | Boolean | v1 | |
din | DIN number of the director | String | v1 | |
name | Name of the director | String | v1 | Removed in v2 |
firstName | First name of the director | String | v2 | |
middleName | Middle name of the director | String | v2 | |
lastName | Last name of the director | String | v2 | |
fullName | Full name created by concatenating the first, middle and last names. | String | v2 | |
status | Status of registration - Approved etc. | String | v1 | |
approved | Date of DIN approval DD-MM-YYYY | Date | v1 | Removed in v2 |
dinAllocationDate | Date of allocation of DIN | Date | v2 | |
disqualified | Flag indicates where DIN stands disqualified or active. | Boolean | v2 | |
disqualificationRemovalDate | Disqualification revoked date. DIN became active again after this date. | Date | v2 | |
disqualificationSection | Section name under which DIN stands disqualified | String | v2 | |
disqualificationDate | Date of disqualification of DIN | Date | v2 | |
dinSurrenderDate | Date of surrender of DIN | Date | v2 | |
dinSurrenderDeactivationReason | Reason for DIN deactivation or surrender | String | v2 | |
dir3KYCFiled | Whether DIR3 KYC has been filed by the director | Boolean | v2 | |
dir3KYCFiledFY | Financial year in which DIR3 KYC was last filed | String | v2 | |
associations | List of associated entities ie the entities where the individual is registered as a director or signatory | Array (Association Object) | v1 | |
signatoryAssociations | List of companies where director is / was enrolled as signatory. | Array (Signatory Association Object) | v2 | |
pastAssociations | List of past company associations of the director. | Array (Past Association Object) | v2 | |
advanced | Director PII Object and director contact details. | Director Profile Object | v2 | |
indexId | Unique index id of the director in Attestr database. Null for live mode. | String | v2 | |
updated | Unix timestamp of index last updated date. Null for live mode. | Number | v2 | |
message | Message if the provided registration number is invalid (available only if valid is false) | String | v1 |
MCA Address Object
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
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 residing | 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 | |
fullAddress | Complete address in one line | String | v2 |
Association Object
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
cin | Entity registration number | String | v1 | Removed in v2 |
llpin | LLP registration number | String | v1 | Removed in v2 |
fcrn | Foreing entity registration number | String | v1 | Removed in v2 |
fllpin | Foreign LLP registration number | String | v1 | Removed in v2 |
reg | Registration number of the company - CIN, LLPIN, FCRN, FLLPIN | String | v2 | |
startDate | Date since associated | Date | v1 | Removed in v2 |
endDate | Date of resigning / separation | Date | v1 | Removed in v2 |
businessName | Name of the entity | String | v1 | |
compliant | DIR3 KYC compliance status | Boolean | v1 | Removed in v2 |
role | Role in the company | String | v2 | |
roleEffectiveDate | Role effective since DD-MM-YYYY | Date | v2 | |
roleCessationDate | Role cessation date if applicable | Date | v2 | |
designation | Designation in the company | String | v2 | |
designationEffectiveDate | Designation effective since | Date | v2 | |
isDirector | Where holds a director position in the company | Boolean | v2 | |
companyType | Type of company | String | v2 | |
shareHoldingPercentage | Share holding percentage in the company | String | v2 | |
profitSharingPercentage | Profile sharing percentage in the company | String | v2 | |
monetaryContributionValue | Monetary contribution value in the company | String | v2 | |
obligationContribution | Obligation contribution in the company | String | v2 | |
companyStatus | Status of the company (Active, Inactive etc) | String | v2 | |
companyOrigin | Company origin country | String | v2 | |
type | Type of the user (Signatory, FO User etc) | String | v2 | |
directorCategory | Director Category - Promoter, Independent etc | String | v2 | |
isCurrentSignatory | Whether an authorized signatory in this company at present | Boolean | v2 |
Signatory Association Object
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
reg | Registration number of the company - CIN, LLPIN etc. | String | v2 | |
appointmentDate | Date of appointment as signatory in the company | Date | v2 | |
cessationDate | Signatory association ended date | Date | v2 |
Past Association Object
Key | Description | Type | Min Version | Max Version |
---|---|---|---|---|
reg | Registration number of the company - CIN, LLPIN etc. | String | v2 | |
businessName | Name of the company | String | v2 | |
designation | Designation of the director in the company | String | v2 | |
appointmentDate | Date of appointment in the company | Date | v2 | |
cessationDate | Association ended date | Date | v2 |
Sample Response
Sample response for valid registration number - Advanced Mode
{
"valid": true,
"din": "01745078",
"status": "Approved",
"firstName": "SIVA RAM",
"middleName": "PRASAD",
"lastName": "ADUSUMILLI",
"fullName": "SIVA RAM PRASAD ADUSUMILLI",
"dinAllocationDate": "28-08-2007",
"disqualified": false,
"disqualificationRemovalDate": "10-01-2018",
"disqualificationSection": "164(2)(a)",
"disqualificationDate": null,
"disqualificationReason": null,
"dinSurrenderDate": null,
"dinSurrenderDeactivationReason": null,
"dir3KYCFiled": true,
"dir3KYCFiledFY": null,
"associations": [
{
"businessName": "SUKRA ASSOCIATES PRIVATE LIMITED",
"reg": "U68100TS2023PTC171385",
"role": "Director/Designated Partner",
"roleEffectiveDate": "26-03-2023",
"roleCessationDate": null,
"designation": "Director",
"designationEffectiveDate": "26-03-2023",
"isDirector": true,
"companyType": "Company",
"shareHoldingPercentage": null,
"profitSharingPercentage": null,
"monetaryContributionValue": null,
"obligationContribution": null,
"companyStatus": "Active",
"companyOrigin": "Indian",
"type": "Signatory",
"directorCategory": "Promoter",
"isCurrentSignatory": false
},
{
"businessName": "DRUVAH AGRITECH & FARMS PRIVATE LIMITED",
"reg": "U01100AP2022PTC121964",
"role": "Director/Designated Partner",
"roleEffectiveDate": "15-06-2022",
"roleCessationDate": null,
"designation": "Director",
"designationEffectiveDate": "15-06-2022",
"isDirector": true,
"companyType": "Company",
"shareHoldingPercentage": null,
"profitSharingPercentage": null,
"monetaryContributionValue": null,
"obligationContribution": null,
"companyStatus": "Active",
"companyOrigin": "Indian",
"type": "Signatory",
"directorCategory": "Promoter",
"isCurrentSignatory": true
}
],
"signatoryAssociations": [
{
"appointmentDate": "26-03-2023",
"cessationDate": null,
"reg": "U68100TS2023PTC171385"
},
{
"appointmentDate": "20-10-2004",
"cessationDate": null,
"reg": "L14102AP1983PLC004315"
},
{
"appointmentDate": "04-12-2007",
"cessationDate": null,
"reg": "U45400MH2007PTC176435"
}
],
"pastAssociations": [],
"indexId": "01745078",
"updated": 1700139206171
}
Sample response for invalid registration number
{
"valid": false,
"message": "Provided director registration number does not exist"
}
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"
}