Pre Registration APIs

This section details about the service API in the Pre-Registration modules.

Note: The id, version and requesttime in request and responsetime in response bodies are optional fields and not consumed by pre-registration application unless defined. Though we need to pass these as part of the request, it should not be tested. Few of the error messages are intended for API consumer, who are mostly SI and developers. User friendly messages need to be mapped in the UI reference implementation.

API testing Prerequisites

  • Generate a Authorization Token by using following Kernel AuthManager APIs

  • Use this Authorization token in the every request header of all pre-registration APIs.

Login Service (Public)

This service details used by Pre-Registration portal to authenticate user by sending OTP to the user, validating with userid and OTP.

POST /login/sendOtp

This request will send the OTP to the requested user in the preferred channel(sms/email)

Resource URL

https://{base_url}/preregistration/v1/login/sendOtp

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

No

Request Part Parameters

NameRequiredDescriptionComment

id

Yes

id

mosip.pre-registration.login.sendotp

version

Yes

version of the application

1.0

requesttime

Yes

Time of the request

2019-01-16T05:23:08.019Z

request

Yes

Request for the application

request.userid

Yes

user id of the applicant(mobile number/email address)

8907654778

For SMS

Request for SMS

{
  "id": "mosip.pre-registration.login.sendotp",
  "version": "1.0",
  "requesttime": "2019-05-14T07:24:47.605Z",
  "request": {
    "userId": "8907654778"
  }
}

Responses for SMS

Success Response

Status code: 200

Description: OTP sent successfully to specified channel

{
  "id": "mosip.pre-registration.login.sendotp",
  "version": "1.0",
  "responsetime": "2019-06-03T06:41:46.796Z",
  "response": {
    "message": "Sms Request Sent",
    "status": "success"
  },
  "errors": null
}

For Email

Request for Email

{
  "id": "mosip.pre-registration.login.sendotp",
  "version": "1.0",
  "requesttime": "2019-05-14T07:24:47.605Z",
  "request": {
	"userId": "info@mosip.io"
  }
}

Responses for Email

Success Response

Status code: 200

Description: OTP sent successfully to specified channel

{
  "id": "mosip.pre-registration.login.sendotp",
  "version": "1.0",
  "responsetime": "2019-06-03T06:41:46.796Z",
  "response": {
    "message": "Email Request submitted",
    "status": "success"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: Invalid parameters

{
  "id": "mosip.pre-registration.login.sendotp",
  "version": "1.0",
  "responsetime": "2019-05-14T16:46:39.582Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_AUTH_001",
      "message": "OTP failed to send through a specified channel"
    }
  ]
}

Other Failure details

Error CodeError MessageError Description

PRG_PAM_LGN_008

Invalid Request userId received

if requested userId is empty or invalid

PRG_PAM_CORE_001

Request id is invalid

Invalid or empty Request Id

PRG_PAM_CORE_002

Request version is invalid

Invalid or empty Request version

PRG_PAM_CORE_003

Invalid request time

Empty Request time

PRG_CORE_REQ_013

Request date should be current date

If request date is not current date

POST /login/validateOtp

This request will validate the OTP with respect to userid and provide the authorize token in the browser cookies.

Resource URL

https://{base_url}/preregistration/v1/login/validateOtp

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

No

Request Part Parameters

NameRequiredDescriptionComment

id

Yes

id

mosip.pre-registration.login.useridotp

version

Yes

version of the application

1.0

requesttime

Yes

Time of the request

2019-01-16T05:23:08.019Z

request

Yes

Request for the application

request.userid

Yes

user id of the applicant (mobile number/email address)

8907654778

request.OTP

Yes

received OTP

345674

Request

{
  "id": "mosip.pre-registration.login.useridotp",
  "version": "1.0",
  "requesttime": "2019-06-03T08:28:04.783Z",
  "request": {
    "otp": "345674",
    "userId": "8907654778"
  }
}

Responses

Success Response

Status code: 200

Description: sms sent successfully

{
  "id": "mosip.pre-registration.login.useridotp",
  "version": "1.0",
  "responsetime": "2019-06-03T06:47:10.838Z",
  "response": {
    "message": "VALIDATION_SUCCESSFUL",
    "status": "success"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: Invalid parameters

{
  "id": "mosip.pre-registration.login.useridotp",
  "version": "1.0",
  "responsetime": "2019-06-03T18:03:12.305Z",
  "response": null,
  "errors": [
    {
      "errorCode": "KER-OTV-005",
      "message": "Validation can't be performed against this key. Generate OTP first."
    }
  ]
}

Other Failure details

Error CodeError MessageError Description

KER-ATH-003

User Detail doesn't exist.

If userId is empty or invalid

KER-OTV-003

OTP can't be empty or null.

If otp field is empty or null

KER-OTV-004

OTP consists of only numeric characters. No other characters is allowed

If otp contains character other than numeric

PRG_PAM_CORE_001

Request id is invalid

Invalid or empty Request Id

PRG_PAM_CORE_002

Request version is invalid

Invalid or empty Request version

PRG_PAM_CORE_003

Invalid request time

Empty Request time

PRG_CORE_REQ_013

Request date should be current date

If request date is not current date

PRG_PAM_LGN_013

VALIDATION_UNSUCCESSFUL

If incorrect otp is entered

PRG_PAM_LGN_014

Token is not present in the header

When token does not come from kernel service in the header

POST /login/invalidateToken

This request will invalidate the authorization token when force logout is done.

Resource URL

https://{base_url}/preregistration/v1/login/invalidateToken

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

Yes

Responses

Success Response

Status code: 200

Description: Token invalidated successfully

{
  "id": "mosip.pre-registration.login.invalidate",
  "version": "1.0",
  "responsetime": "2019-05-16T09:37:04.941Z",
  "response": {
    "message": "Token has been invalidated successfully",
    "status": "success"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: Token is not present in cookies

{
  "id": "mosip.pre-registration.login.invalidate",
  "version": "1.0",
  "responsetime": "2019-06-14T08:41:17.156Z",
  "response": null,
  "errors": [
    {
      "errorCode": "KER-ATH-007",
      "message": "Token is not present in cookies"
    }
  ]
}

Other Failure details

Error CodeError MessageError Description

KER-ATH-008

Token is not present in datastore, Please try with new token

If token is not present in datastore

KER-ATH-006

Cookies are empty

When no Cookie is passed in the header

GET /login/config

This request will load the configuration parameters while loading the pre-registration portal page.

All the values are retrieving from the pre-registration config properties file. If any value get changed in the config properties file it will get reflected in the response of this API. Following mentioned response is the sample of that.

Resource URL

https://{base_url}/preregistration/v1/login/config

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

No

Responses

Success Response

Status code: 200

Description: Config parameter retrieved sucessfully

{
  "id": "mosip.pre-registration.login.config",
  "version": "1.0",
  "responsetime": "2019-05-14T16:01:20.534Z",
  "response": {
    "mosip.kernel.otp.default-length": "6",
    "mosip.id.validation.identity.postalCode": "^[(?i)A-Z0-9]{5}$",
    "mosip.left_to_right_orientation": "eng,fra",
    "preregistration.recommended.centers.locCode": "5",
    "mosip.kernel.otp.validation-attempt-threshold": "10",
    "mosip.country.code": "MOR",
    "mosip.primary-language": "fra",
    "preregistration.timespan.cancel": "1",
    "mosip.default.dob.month": "01",
    "mosip.preregistration.auto.logout.timeout": "60",
    "preregistration.availability.noOfDays": "5",
    "mosip.kernel.otp.expiry-time": "180",
    "mosip.id.validation.identity.dateOfBirth": "^\\d{4}/([0]\\d|1[0-2])/([0-2]\\d|3[01])$",
    "mosip.supported-languages": "eng,ara,fra",
    "preregistration.workflow.documentupload": "true/false",
    "preregistration.workflow.demographic": "true/false",
    "preregistration.documentupload.allowed.file.nameLength": "50",
    "mosip.id.validation.identity.postalCode.length": "5",
    "mosip.kernel.sms.number.length": "10",
    "preregistration.availability.sync": "6",
    "mosip.id.validation.identity.email.length": "50",
    "preregistration.timespan.rebook": "1",
    "mosip.id.validation.identity.email": "^[\\w-\\+]+(\\.[\\w]+)*@[\\w-]+(\\.[\\w]+)*(\\.[a-z]{2,})$",
    "mosip.id.validation.identity.age": "^(150|1[0-4][0-9]|[1-9]?[0-9])$",
    "mosip.id.validation.identity.referenceIdentityNumber": "^([0-9]{10,30})$",
    "mosip.right_to_left_orientation": "ara",
    "mosip.kernel.pin.length": "6",
    "mosip.id.validation.identity.phone": "^([6-9]{1})([0-9]{9})$",
    "preregistration.workflow.booking": "true/false",
    "mosip.preregistration.auto.logout.ping": "30 ",
    "mosip.id.validation.identity.referenceIdentityNumber.length": "30",
    "mosip.id.validation.identity.fullName.[*].value": "^(?=.{0,50}$).*",
    "mosip.id.validation.identity.addressLine1.[*].value": "^(?=.{0,50}$).*",
    "mosip.login.mode": "email,mobile",
    "mosip.id.validation.identity.phone.length": "10",
    "mosip.preregistration.auto.logout.idle": "180",
    "preregistration.auto.logout": "10",
    "mosip.secondary-language": "ara",
    "preregistration.nearby.centers": "2000",
    "preregistration.documentupload.allowed.file.size": "1000000",
    "mosip.default.dob.day": "01",
    "preregistration.booking.offset": "1",
    "preregistration.documentupload.allowed.file.type": "application/pdf,image/jpeg,image/png,image/gif"
  },
  "errors": null
}

Other Failure details

Error CodeError MessageError Description

PRG_AUTH_012

Config file not found in the config server

If config file is missing in the config server

GET /login/refreshconfig

This request will reload the configuration parameters.

When ever there is change in the property file, then this rest end point should be called manually,so that the property get reflected.

Resource URL

https://{base_url}/preregistration/v1/login/refreshconfig

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

No

Responses

Success Response

Status code: 200

Description: Config parameter retrieved sucessfully

{
  "id": "mosip.pre-registration.login.config",
  "version": "1.0",
  "responsetime": "2019-08-08T07:43:45.908Z",
  "response": "success",
  "errors": null
} 

Other Failure details

Error CodeError MessageError Description

PRG_AUTH_012

Config file not found in the config server

If config file is missing in the config server

Demographic Service (public)

This service details used by Pre-Registration portal to maintain the demographic data by providing his/her basic details.

POST /applications

This request is used to create new pre-registration with demographic details, which generates pre-registration id and associates it with demographic details.

Resource URL

https://{base_url}/preregistration/v1/applications

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

Yes

Request Body Parameters

NameRequiredDescriptionComment

id

Yes

Id of the application

mosip.pre-registration.demographic.create

version

Yes

version of the application

1.0

requesttime

Yes

Request time of the application

2019-01-16T05:23:08.019Z

request

Yes

Request for the application

request.langCode

Yes

primary language code

value will be derived from UI

request.demographicDetails

Yes

demographicDetails of the applicant

request.demographicDetails.identity

Yes

identity of the applicant

request.demographicDetails.identity.gender

Yes

gender of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.city

Yes

city of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.phone

Optional

mobile number of the applicant

request.demographicDetails.identity.IDSchemaVersion

Optional

id schema version

1

request.demographicDetails.identity.fullName

Yes

full name of the applicant

request.demographicDetails.identity.dateOfBirth

Yes

date of birth of the applicant

request.demographicDetails.identity.email

Optional

email Id of the applicant

request.demographicDetails.identity.province

Yes

province of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.postalCode

Yes

postal code of the applicant

request.demographicDetails.identity.addressLine1

Yes

address Line 1 of the applicant

request.demographicDetails.identity.addressLine2

Optional

address Line 2 of the applicant

request.demographicDetails.identity.addressLine3

Optional

address Line 3 of the applicant

request.demographicDetails.identity.region

Yes

region of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.residenceStatus

Yes

residence status of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.zone

Yes

zone of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.referenceIdentityNumber

Yes

referenceIdentityNumber Number of the applicant

Request

{
  "id": "mosip.pre-registration.demographic.create",
  "version": "1.0",
  "request": {
    "langCode": "eng",
    "demographicDetails": {
      "identity": {
        "IDSchemaVersion": 1,
        "fullName": [
          {
            "language": "eng",
            "value": "Puja Thakur"
          },
          {
            "language": "ara",
            "value": "پُجَ تهَكُر"
          }
        ],
        "dateOfBirth": "1996/01/01",
        "gender": [
          {
            "language": "eng",
            "value": "MLE"
          },
          {
            "language": "ara",
            "value": "MLE"
          }
        ],
        "addressLine1": [
          {
            "language": "eng",
            "value": "Green olive villa"
          },
          {
            "language": "ara",
            "value": "گرِِن ُلِڤِ ڤِللَ"
          }
        ],
        "residenceStatus": [
          {
            "language": "eng",
            "value": "FR"
          },
          {
            "language": "ara",
            "value": "FR"
          }
        ],
        "addressLine2": [
          {
            "language": "eng",
            "value": "22 ananda reddy Layout"
          },
          {
            "language": "ara",
            "value": "٢٢ َنَندَ رِددي لَيُُت"
          }
        ],
        "addressLine3": [
          {
            "language": "eng",
            "value": ""
          },
          {
            "language": "ara",
            "value": ""
          }
        ],
        "region": [
          {
            "language": "eng",
            "value": "RSK"
          },
          {
            "language": "ara",
            "value": "RSK"
          }
        ],
        "province": [
          {
            "language": "eng",
            "value": "KTA"
          },
          {
            "language": "ara",
            "value": "KTA"
          }
        ],
        "city": [
          {
            "language": "eng",
            "value": "KNT"
          },
          {
            "language": "ara",
            "value": "KNT"
          }
        ],
        "zone": [
          {
            "language": "eng",
            "value": "BNMR"
          },
          {
            "language": "ara",
            "value": "BNMR"
          }
        ],
        "postalCode": "14022",
        "phone":"9999999999",
        "email": "mosip@gmail.com",
        "referenceIdentityNumber": "12312312312312"
      }
    }
  },
  "requesttime": "2019-08-19T11:18:48.393Z"
}

Responses

Success Response

Status code: 200

Description: Pre-Registration successfully Created

{
  "id": "mosip.pre-registration.demographic.create",
  "version": "1.0",
  "responsetime": "2019-08-19T11:18:51.326Z",
  "response": {
    "preRegistrationId": "46537143845798",
    "createdDateTime": "2019-08-19T11:18:51.281Z",
    "statusCode": "Pending_Appointment",
    "langCode": "eng",
    "demographicDetails": {
      "identity": {
        "gender": [
          {
            "language": "eng",
            "value": "MLE"
          },
          {
            "language": "ara",
            "value": "MLE"
          }
        ],
        "city": [
          {
            "language": "eng",
            "value": "KNT"
          },
          {
            "language": "ara",
            "value": "KNT"
          }
        ],
        "postalCode": "14022",
        "fullName": [
          {
            "language": "eng",
            "value": "Puja Thakur"
          },
          {
            "language": "ara",
            "value": "پُجَ تهَكُر"
          }
        ],
        "dateOfBirth": "1996/01/01",
        "referenceIdentityNumber": "12312312312312",
        "phone":"9999999999",
        "email": "mosip@mosip.io",
        "IDSchemaVersion": 1,
        "province": [
          {
            "language": "eng",
            "value": "KTA"
          },
          {
            "language": "ara",
            "value": "KTA"
          }
        ],
        "zone": [
          {
            "language": "eng",
            "value": "BNMR"
          },
          {
            "language": "ara",
            "value": "BNMR"
          }
        ],
        "addressLine1": [
          {
            "language": "eng",
            "value": "Green olive villa"
          },
          {
            "language": "ara",
            "value": "گرِِن ُلِڤِ ڤِللَ"
          }
        ],
        "residenceStatus": [
          {
            "language": "eng",
            "value": "FR"
          },
          {
            "language": "ara",
            "value": "FR"
          }
        ],
        "addressLine2": [
          {
            "language": "eng",
            "value": "22 ananda reddy Layout"
          },
          {
            "language": "ara",
            "value": "٢٢ َنَندَ رِددي لَيُُت"
          }
        ],
        "addressLine3": [
          {
            "language": "eng",
            "value": ""
          },
          {
            "language": "ara",
            "value": ""
          }
        ],
        "region": [
          {
            "language": "eng",
            "value": "RSK"
          },
          {
            "language": "ara",
            "value": "RSK"
          }
        ]
      }
    }
  },
  "errors": null
}

Failure Response

Status code: 200

Description: invalid or empty request id

{
  "id": "mosip-registration.demographic.create",
  "version": "1.0",
  "responsetime": "2019-05-20T05:52:20.435Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_CORE_001",
      "message": "Request id is invalid"
    }
  ]
}

Other Failure details

Error CodeError MessageError Description

PRG_PAM_CORE_002

Request version is invalid

Invalid or empty Request version

PRG_PAM_CORE_003

Invalid request time

Empty Request time

PRG_CORE_REQ_013

Request date should be current date

If request date is not current date

PRG_CORE_REQ_014

Lang code is invalid

when language code is invalid or empty

PRG_PAM_CORE_011

encryption failed

encryption of demographic data failed

PRG_PAM_APP_007

json parsing is failed

demographic json parsing failed

PRG_PAM_CORE_010

hashing failed

demographic data hashing failed

PRG_PAM_CORE_012

decryption failes

decryption of demographic data failed

PRG_PAM_APP_020

Rest call to get prid failed

Service call to get Prid failed

PRG_PAM_APP_021

Duplicate key for prid

Failure of unique key constrains

KER-IOV-005

Missing input parameter - identity/fullName

If fullName attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/dateOfBirth|identity/age

If dateOfBirth attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/gender

If gender attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/residenceStatus

If residenceStatus attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/addressLine1

If addressLine1 attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/region

If region attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/zone

If zone attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/province

If province attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/city

If city attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/postalCode

If postalCode attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/referenceIdentityNumber

If referenceIdentityNumber attribute is not found in the identity request

KER-IOV-004

Invalid input parameter - identity/phone

If phone attribute is found but it's value is empty or invalid

KER-IOV-004

Invalid input parameter - identity/email

If email attribute is found but it's value is empty or invalid

KER-IOV-004

Invalid input parameter - identity/fullName/{*}/language

If language code is empty or invalid in the specified position(*) inside fullName attribute

KER-IOV-004

Invalid input parameter - identity/dateOfBirth

If dateOfBirth value is empty or invalid

KER-IOV-004

Invalid input parameter - identity/gender/{*}/language

If language code is empty or invalid in the specified position(*) inside gender attribute

KER-IOV-004

Invalid input parameter - identity/gender/{*}/value

If value is empty or invalid in the specified position(*) inside gender attribute

KER-IOV-004

Invalid input parameter - identity/addressLine1/{*}/language

If language code is empty or invalid in the specified position(*) inside addressLine1 attribute

KER-IOV-004

Invalid input parameter - identity/addressLine2/{*}/language

If language code is empty or invalid in the specified position(*) inside addressLine2 attribute

KER-IOV-004

Invalid input parameter - identity/addressLine3/{*}/language

If language code is empty or invalid in the specified position(*) inside addressLine3 attribute

KER-IOV-004

Invalid input parameter - identity/residenceStatus/{*}/language

If language code is empty or invalid in the specified position(*) inside residenceStatus attribute

KER-IOV-004

Invalid input parameter - identity/region/{*}/language

If language code is empty or invalid in the specified position(*) inside region attribute

KER-IOV-004

Invalid input parameter - identity/region/{*}/value

If value is empty or invalid in the specified position(*) inside region attribute

KER-IOV-004

Invalid input parameter - identity/province/{*}/language

If language code is empty or invalid in the specified position(*) inside province attribute

KER-IOV-004

Invalid input parameter - identity/province/{*}/value

If value is empty or invalid in the specified position(*) inside province attribute

KER-IOV-004

Invalid input parameter - identity/city/{*}/language

If language code is empty or invalid in the specified position(*) inside city attribute

KER-IOV-004

Invalid input parameter - identity/city/{*}/value

If value is empty or invalid in the specified position(*) inside city attribute

KER-IOV-004

Invalid input parameter - identity/zone/{*}/language

If language code is empty or invalid in the specified position(*) inside zone attribute

KER-IOV-004

Invalid input parameter - identity/zone/{*}/value

If value is empty or invalid in the specified position(*) inside zone attribute

KER-IOV-004

Invalid input parameter - identity/postalCode

If postalCode is empty or invalid

KER-IOV-004

Invalid input parameter - identity/referenceIdentityNumber

If referenceIdentityNumber is empty or invalid

PUT /applications/{preRegistrationId}

This request is used to update pre-registration's demographic details by providing pre-registration id in the path parameter and updated demographic details in request body.

Resource URL

https://{base_url}/preregistration/v1/applications/{preRegistrationId}

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

NameRequiredDescriptionComment

preRegistrationId

Yes

pre-registration id of the application

64269837502851

Request Body Parameters

NameRequiredDescriptionComment

id

Yes

Id of the application

mosip.pre-registration.demographic.create

version

Yes

version of the application

1.0

requesttime

Yes

Request time of the application

2019-01-16T05:23:08.019Z

request

Yes

Request for the application

request.langCode

Yes

primary language code

value will be derived from UI

request.demographicDetails

Yes

demographicDetails of the applicant

request.demographicDetails.identity

Yes

identity of the applicant

request.demographicDetails.identity.gender

Yes

gender of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.city

Yes

city of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.phone

Optional

mobile number of the applicant

request.demographicDetails.identity.IDSchemaVersion

Optional

id schema version

1

request.demographicDetails.identity.fullName

Yes

full name of the applicant

request.demographicDetails.identity.dateOfBirth

Yes

date of birth of the applicant

request.demographicDetails.identity.email

Optional

email Id of the applicant

request.demographicDetails.identity.province

Yes

province of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.postalCode

Yes

postal code of the applicant

request.demographicDetails.identity.addressLine1

Yes

address Line 1 of the applicant

request.demographicDetails.identity.addressLine2

Optional

address Line 2 of the applicant

request.demographicDetails.identity.addressLine3

Optional

address Line 3 of the applicant

request.demographicDetails.identity.region

Yes

region of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.residenceStatus

Yes

residence status of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.zone

Yes

zone of the applicant

value will be derived from the domain metadata

request.demographicDetails.identity.referenceIdentityNumber

Yes

referenceIdentityNumber Number of the applicant

Request

{
  "id": "mosip.pre-registration.demographic.update",
  "version": "1.0",
  "request": {
    "langCode": "eng",
    "demographicDetails": {
      "identity": {
        "IDSchemaVersion": 1,
        "fullName": [
          {
            "language": "eng",
            "value": "Puja Thakur"
          },
          {
            "language": "ara",
            "value": "پُجَ تهَكُر"
          }
        ],
        "dateOfBirth": "1996/01/01",
        "gender": [
          {
            "language": "eng",
            "value": "MLE"
          },
          {
            "language": "ara",
            "value": "MLE"
          }
        ],
        "addressLine1": [
          {
            "language": "eng",
            "value": "Green olive villa"
          },
          {
            "language": "ara",
            "value": "گرِِن ُلِڤِ ڤِللَ"
          }
        ],
        "residenceStatus": [
          {
            "language": "eng",
            "value": "FR"
          },
          {
            "language": "ara",
            "value": "FR"
          }
        ],
        "addressLine2": [
          {
            "language": "eng",
            "value": "22 ananda reddy Layout"
          },
          {
            "language": "ara",
            "value": "٢٢ َنَندَ رِددي لَيُُت"
          }
        ],
        "addressLine3": [
          {
            "language": "eng",
            "value": ""
          },
          {
            "language": "ara",
            "value": ""
          }
        ],
        "region": [
          {
            "language": "eng",
            "value": "RSK"
          },
          {
            "language": "ara",
            "value": "RSK"
          }
        ],
        "province": [
          {
            "language": "eng",
            "value": "KTA"
          },
          {
            "language": "ara",
            "value": "KTA"
          }
        ],
        "city": [
          {
            "language": "eng",
            "value": "KNT"
          },
          {
            "language": "ara",
            "value": "KNT"
          }
        ],
        "zone": [
          {
            "language": "eng",
            "value": "BNMR"
          },
          {
            "language": "ara",
            "value": "BNMR"
          }
        ],
        "postalCode": "14022",
        "phone":"9999999999",
        "email": "mosip@mosip.io",
        "referenceIdentityNumber": "12312312312312"
      }
    }
  },
  "requesttime": "2019-08-19T11:18:48.393Z"
}

Responses

Success Response

Status code: 200

Description: Pre-Registration demographic details successfully updated

{
  "id": "mosip.pre-registration.demographic.update",
  "version": "1.0",
  "responsetime": "2019-08-19T11:18:51.326Z",
  "response": {
    "preRegistrationId": "46537143845798",
    "createdDateTime": "2019-08-19T11:18:51.281Z",
    "statusCode": "Pending_Appointment",
    "langCode": "eng",
    "demographicDetails": {
      "identity": {
        "gender": [
          {
            "language": "eng",
            "value": "MLE"
          },
          {
            "language": "ara",
            "value": "MLE"
          }
        ],
        "city": [
          {
            "language": "eng",
            "value": "KNT"
          },
          {
            "language": "ara",
            "value": "KNT"
          }
        ],
        "postalCode": "14022",
        "fullName": [
          {
            "language": "eng",
            "value": "Puja Thakur"
          },
          {
            "language": "ara",
            "value": "پُجَ تهَكُر"
          }
        ],
        "dateOfBirth": "1996/01/01",
        "referenceIdentityNumber": "12312312312312",
        "IDSchemaVersion": 1,
        "province": [
          {
            "language": "eng",
            "value": "KTA"
          },
          {
            "language": "ara",
            "value": "KTA"
          }
        ],
        "zone": [
          {
            "language": "eng",
            "value": "BNMR"
          },
          {
            "language": "ara",
            "value": "BNMR"
          }
        ],
        "addressLine1": [
          {
            "language": "eng",
            "value": "Green olive villa"
          },
          {
            "language": "ara",
            "value": "گرِِن ُلِڤِ ڤِللَ"
          }
        ],
        "residenceStatus": [
          {
            "language": "eng",
            "value": "FR"
          },
          {
            "language": "ara",
            "value": "FR"
          }
        ],
        "addressLine2": [
          {
            "language": "eng",
            "value": "22 ananda reddy Layout"
          },
          {
            "language": "ara",
            "value": "٢٢ َنَندَ رِددي لَيُُت"
          }
        ],
        "addressLine3": [
          {
            "language": "eng",
            "value": ""
          },
          {
            "language": "ara",
            "value": ""
          }
        ],
        "region": [
          {
            "language": "eng",
            "value": "RSK"
          },
          {
            "language": "ara",
            "value": "RSK"
          }
        ],
        "phone": "9999999999",
        "email": "mosip@mosip.io"
      }
    }
  },
  "errors": null
}

Failure Response

Status code: 200

Description: Invalid preregistration id(non-empty) or data is not found for that preregistration id.

{
  "id": "mosip.pre-registration.demographic.update",
  "version": "1.0",
  "responsetime": "2019-05-20T06:31:35.160Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error CodeError MessageError Description

PRG_PAM_CORE_001

Request id is invalid

Invalid or empty Request Id

PRG_PAM_CORE_002

Request version is invalid

Invalid or empty Request version

PRG_PAM_CORE_003

Invalid request time

Empty Request time

PRG_CORE_REQ_013

Request date should be current date

If request date is not current date

PRG_PAM_CORE_011

encryption failed

encryption of demographic data failed

PRG_PAM_APP_007

json parsing is failed

demographic json parsing failed

PRG_PAM_CORE_010

hashing failed

demographic data hashing failed

PRG_PAM_CORE_012

decryption failes

decryption of demographic data failed

PRG_PAM_APP_017

Requested preregistration id does not belong to the user

when the user tries to access another user's demographic data

KER-IOV-005

Missing input parameter - identity/fullName

If fullName attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/dateOfBirth|identity/age

If dateOfBirth attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/gender

If gender attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/residenceStatus

If residenceStatus attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/addressLine1

If addressLine1 attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/region

If region attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/zone

If zone attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/province

If province attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/city

If city attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/postalCode

If postalCode attribute is not found in the identity request

KER-IOV-005

Missing input parameter - identity/referenceIdentityNumber

If referenceIdentityNumber attribute is not found in the identity request

KER-IOV-004

Invalid input parameter - identity/phone

If phone attribute is found but it's value is empty or invalid

KER-IOV-004

Invalid input parameter - identity/email

If email attribute is found but it's value is empty or invalid

KER-IOV-004

Invalid input parameter - identity/fullName/{*}/language

If language code is empty or invalid in the specified position(*) inside fullName attribute

KER-IOV-004

Invalid input parameter - identity/dateOfBirth

If dateOfBirth value is empty or invalid

KER-IOV-004

Invalid input parameter - identity/gender/{*}/language

If language code is empty or invalid in the specified position(*) inside gender attribute

KER-IOV-004

Invalid input parameter - identity/gender/{*}/value

If value is empty or invalid in the specified position(*) inside gender attribute

KER-IOV-004

Invalid input parameter - identity/addressLine1/{*}/language

If language code is empty or invalid in the specified position(*) inside addressLine1 attribute

KER-IOV-004

Invalid input parameter - identity/addressLine2/{*}/language

If language code is empty or invalid in the specified position(*) inside addressLine2 attribute

KER-IOV-004

Invalid input parameter - identity/addressLine3/{*}/language

If language code is empty or invalid in the specified position(*) inside addressLine3 attribute

KER-IOV-004

Invalid input parameter - identity/residenceStatus/{*}/language

If language code is empty or invalid in the specified position(*) inside residenceStatus attribute

KER-IOV-004

Invalid input parameter - identity/region/{*}/language

If language code is empty or invalid in the specified position(*) inside region attribute

KER-IOV-004

Invalid input parameter - identity/region/{*}/value

If value is empty or invalid in the specified position(*) inside region attribute

KER-IOV-004

Invalid input parameter - identity/province/{*}/language

If language code is empty or invalid in the specified position(*) inside province attribute

KER-IOV-004

Invalid input parameter - identity/province/{*}/value

If value is empty or invalid in the specified position(*) inside province attribute

KER-IOV-004

Invalid input parameter - identity/city/{*}/language

If language code is empty or invalid in the specified position(*) inside city attribute

KER-IOV-004

Invalid input parameter - identity/city/{*}/value

If value is empty or invalid in the specified position(*) inside city attribute

KER-IOV-004

Invalid input parameter - identity/zone/{*}/language

If language code is empty or invalid in the specified position(*) inside zone attribute

KER-IOV-004

Invalid input parameter - identity/zone/{*}/value

If value is empty or invalid in the specified position(*) inside zone attribute

KER-IOV-004

Invalid input parameter - identity/postalCode

If postalCode is empty or invalid

KER-IOV-004

Invalid input parameter - identity/referenceIdentityNumber

If referenceIdentityNumber is empty or invalid

GET /applications/{preRegistrationId}

This request is used to retrieve Pre-Registration demographic data by pre-Registration id provided in request path parameter.

Resource URL

https://{base_url}/preregistration/v1/applications/{preRegistrationId}

Resource details

Resource DetailsDescription

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

NameRequiredDescriptionComment

preRegistrationId

Yes

Id of the application

32042841521591

Responses

Success Response:

Status code: 200

Description: Demographic data successfully retrieved

{
  "id": "mosip.pre-registration.demographic.retrieve.details",
  "version": "1.0",
  "responsetime": "2019-05-20T06:33:08.516Z",
  "response": {
    "preRegistrationId": "32042841521591",
    "createdBy": "8754462073",
    "createdDateTime": "2019-05-20T06:25:00.262Z",
    "updatedBy": "8754462073",
    "updatedDateTime": "2019-05-20T06:30:37.900Z",
    "statusCode": "Pending_Appointment",
    "langCode": "fra",
    "demographicDetails": {
      "identity": {
        "referenceIdentityNumber": "9182345678456",
        "gender": [
          {
            "language": "fra",
            "value": "MLE"
          },
          {
            "language": "ara",
            "value": "MLE"
          }
        ],
        "city": [
          {
            "language": "fra",
            "value": "BNMR"
          },
          {
            "language": "ara",
            "value": "BNMR"
          }
        ],
        "postalCode": "56059",
        "fullName": [
          {
            "language": "fra",
            "value": "Rakesh P"
          },
          {
            "language": "ara",
            "value": "سهَسهَنك "
          }
        ],
        "zone": [
          {
            "language": "fra",
            "value": "14022"
          },
          {
            "language": "ara",
            "value": "14022"
          }
        ],
        "dateOfBirth": "1993/12/12",
        "IDSchemaVersion": 1,
        "province": [
          {