Voter ID Verification API
INSTANT VERIFICATION OF INDIAN VOTER ID NUMBER (EPIC)

API Details
Request
Type | URL |
---|---|
POST | https://api.attestr.com/api/{version} /public/checkx/epic |
Request Body Parameters
Type | Name | Description | Optional (default) | Min Version | Max Version |
---|---|---|---|---|---|
String | epic | Input EPIC number to be verified. | Required | v1 |
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 Payload
{
"epic": "SL**37***2"
}
Response
HTTP status code 200
Please note that the valid key decides the availability of rest of the keys in the response. If the provided EPIC number does not exist, 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 depending on if provided EPIC number exists and is valid | Boolean | v1 | |
name | name of the voter card holder | String | v1 | |
message | Error message if provided EPIC is invalid | String | v1 | |
gender | Gender of the user as registered in EPIC database | String | v1 | |
relationName | Father, mother, spouse name as registered in the database | String | v1 | |
relationType | Relation type - Father, Mother, Spouse | String | v1 | |
dob | Date of birth if available | String | v1 | |
age | Age of the person if available. | String | v1 | |
houseNumber | Registered house number | String | v1 | |
area | Area location as registered in EPIC database | String | v1 | |
district | District name of the registered address | String | v1 | |
state | State name | String | v1 | |
assemblyConstituency | Name of the assembly constituency | String | v1 | |
assemblyConstituencyNumber | Unique number assigned to the constituency by the election commission of India | String | v1 | |
pollingStation | Name of the polling station where this voter holder is allowed to vote | String | v1 | |
partNumber | Part code of the polling station | String | v1 | |
partName | Part name of the polling station | String | v1 | |
serialNumber | Serial number in the voting list for the given polling station | String | v1 | |
parliamentaryConstituency | Name of the parliamentary constituency | String | v1 |
Sample Response
Sample response for valid EPIC number
{
"valid": true,
"gender": "M",
"state": "Goa",
"name": "Gitanjali Raheja",
"relationName": "Subhash Raheja",
"relationType": "Father",
"houseNumber": null,
"dob": null,
"age": "24",
"area": "St. Aloysius High School (West Wing), Benaulim",
"district": "South Goa",
"assemblyConstituency": "Benaulim",
"assemblyConstituencyNumber": "32",
"pollingStation": "St. Aloysius High School, Benaulim",
"partNumber": "22",
"partName": "St. Aloysius High School (West Wing), Benaulim",
"serialNumber": "417",
"parliamentaryConstituency": "South Goa",
}
Sample response for invalid EPIC number
{
"valid": false,
"message": "Provided EPIC 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"
}