Voter ID Verification API

AI Tools

API v1 Flow v1

INSTANT VERIFICATION OF INDIAN VOTER ID NUMBER (EPIC)


The legacy data processing model is being formally deprecated.

In order to ensure continued compliance with the Digital Personal Data Protection Act, 2023 (DPDP Act), we are implementing DPDP V3 (Consent-Driven Processing). Under this framework, clients are required to obtain explicit, informed, and verifiable consent from the data principal prior to accessing, processing, viewing, or storing any personal data through the platform. This regulatory transition may require modifications to existing configurations and workflows. Clients are advised to review and update their implementations to ensure ongoing compliance with applicable data protection obligations. Further information regarding this transition can be enquired here. Learn more about this change here.

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


Info

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

Info

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" }


  Last updated