Pre Registration APIs

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

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 Details
Description

Response format

JSON

Requires Authentication

No

Request Part Parameters

Name
Required
Description
Comment

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 Code
Error Message
Error 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 Details
Description

Response format

JSON

Requires Authentication

No

Request Part Parameters

Name
Required
Description
Comment

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 Code
Error Message
Error 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 Details
Description

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 Code
Error Message
Error 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.

Resource URL

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

Resource details

Resource Details
Description

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 Code
Error Message
Error 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.

Resource URL

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

Resource details

Resource Details
Description

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 Code
Error Message
Error 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 Details
Description

Response format

JSON

Requires Authentication

Yes

Request Body Parameters

Name
Required
Description
Comment

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 Code
Error Message
Error 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 Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

pre-registration id of the application

64269837502851

Request Body Parameters

Name
Required
Description
Comment

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 Code
Error Message
Error 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 Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

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": [
          {
            "language": "fra",
            "value": "KTA"
          },
          {
            "language": "ara",
            "value": "KTA"
          }
        ],
        "phone": "9680958812",
        "addressLine1": [
          {
            "language": "fra",
            "value": "005-DS Max Silicon"
          },
          {
            "language": "ara",
            "value": "٠٠٥-دس مَكس سِلِكُن"
          }
        ],
        "residenceStatus": [
          {
            "language": "fra",
            "value": "NFR"
          },
          {
            "language": "ara",
            "value": "NFR"
          }
        ],
        "addressLine2": [
          {
            "language": "fra",
            "value": "Global Village"
          },
          {
            "language": "ara",
            "value": "گلُبَل ڤِللَگِ"
          }
        ],
        "addressLine3": [
          {
            "language": "fra",
            "value": "Karnataka"
          },
          {
            "language": "ara",
            "value": "كَرنَتَكَ"
          }
        ],
        "region": [
          {
            "language": "fra",
            "value": "RSK"
          },
          {
            "language": "ara",
            "value": "RSK"
          }
        ],
        "email": "rak@gmail.com"
      }
    }
  },
  "errors": null
}

Failure Response

Status code: '200'

Description: No data found for the requested pre-registration id(non-empty).

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

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_CORE_010

hashing failed

demographic data hashing failed

PRG_PAM_CORE_012

decryption failes

decryption of demographic data failed

PRG_PAM_APP_007

json parsing is failed

demographic json parsing 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

GET /applications/status/{preRegistrationId}

This request is used to retrieve pre-registration application status by providing the pre-registration id in request path parameter.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameter

Name
Required
Description
Comment

preRegistrationId

Yes

Id of the application

62076019780925

Responses

Success Response

Status code: 200

Description: All applications status fetched successfully

{
  "id": "mosip.pre-registration.demographic.retrieve.status",
  "version": "1.0",
  "responsetime": "2019-05-14T16:17:19.601Z",
  "response": {
    "preRegistartionId": "29810389154051",
    "statusCode": "Pending_Appointment"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: No data found for the requested pre-registration id(non-empty).

{
  "id": "mosip.pre-registration.demographic.retrieve.status",
  "version": "1.0",
  "responsetime": "2019-05-14T16:17:34.330Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_CORE_010

hashing failed

demographic data hashing 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

GET /applications

This request is used to retrieve all Pre-Registration id, Full name in both language, Status Code, Document details(Only for Proof Of Address), Appointment details and Postal Code by user id from authorization token.

Without pagination

if pageIndex parameter is not passed as query param, then all the demographic data for the user will be retrieved without applying pagination mechanism.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Responses

Success Response

Status code: 200

Description: All applications fetched successfully

{
  "id": "mosip.pre-registration.demographic.retrieve.basic",
  "version": "1.0",
  "responsetime": "2019-06-27T10:44:18.988Z",
  "response": {
    "basicDetails": [
      {
        "preRegistrationId": "26501647251326",
        "statusCode": "Pending_Appointment",
        "bookingMetadata": null,
        "demographicMetadata": {
          "proofOfAddress": null,
          "postalCode": "14022",
          "fullName": [
            {
              "language": "fra",
              "value": "jagadishwari"
            },
            {
              "language": "ara",
              "value": "جَگَدِسهوَرِ سِلڤَرَج"
            }
          ]
        }
      },
      {
        "preRegistrationId": "31601973604129",
        "statusCode": "Booked",
        "bookingMetadata": {
          "registration_center_id": "10003",
          "appointment_date": "2019-07-01",
          "time_slot_from": "14:15",
          "time_slot_to": "14:30"
        },
        "demographicMetadata": {
          "proofOfAddress": {
            "docCatCode": "POA",
            "docTypCode": "RNC",
            "docName": "Rajath.pdf",
            "langCode": "eng",
            "documentId": "ef51cd37-98c7-11e9-8fd2-6fbffb0a0035"
          },
          "postalCode": "14023",
          "fullName": [
            {
              "language": "eng",
              "value": "Rajath"
            },
            {
              "language": "ara",
              "value": "رَجَته"
            }
          ]
        }
      }
    ],
    "totalRecords": "2",
    "noOfRecords": "0",
    "pageIndex": "0"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: No record found for the requested user id.

{
  "id": "mosip.pre-registration.demographic.retrieve.basic",
  "version": "1.0",
  "responsetime": "2019-05-20T07:12:37.316Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No record found for the requested user id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_CORE_010

hashing failed

demographic data hashing failed

PRG_PAM_CORE_012

decryption failed

decryption of demographic data failed

PRG_PAM_APP_007

json parsing is failed

demographic json parsing failed

PRG_PAM_APP_018

Failed to read the identity json from the server

If the configured identity json file is unreachable

With pagination

If pageIndex parameter is passed as query param, then all the demographic data for the user will be retrieved in terms of pages.

  • PageSize parameter is configurable.

  • PageIndex is by default 0 if no value is passed for query param.

Resource URL

https://{base_url}/preregistration/v1/applications?pageIndex=0

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Query Parameter

Name
Required
Description
Comment

pageIndex

Yes

page index of the application

0(By default)

Responses

Success Response

Status code: 200

Description: All applications fetched successfully

{
  "id": "mosip.pre-registration.demographic.retrieve.basic",
  "version": "1.0",
  "responsetime": "2019-06-27T10:44:18.988Z",
  "response": {
    "basicDetails": [
      {
        "preRegistrationId": "26501647251326",
        "statusCode": "Pending_Appointment",
        "bookingMetadata": null,
        "demographicMetadata": {
          "proofOfAddress": null,
          "postalCode": "14022",
          "fullName": [
            {
              "language": "fra",
              "value": "jagadishwari"
            },
            {
              "language": "ara",
              "value": "جَگَدِسهوَرِ سِلڤَرَج"
            }
          ]
        }
      },
      {
        "preRegistrationId": "31601973604129",
        "statusCode": "Booked",
        "bookingMetadata": {
          "registration_center_id": "10003",
          "appointment_date": "2019-07-01",
          "time_slot_from": "14:15",
          "time_slot_to": "14:30"
        },
        "demographicMetadata": {
          "proofOfAddress": {
            "docCatCode": "POA",
            "docTypCode": "RNC",
            "docName": "Rajath.pdf",
            "langCode": "eng",
            "documentId": "ef51cd37-98c7-11e9-8fd2-6fbffb0a0035"
          },
          "postalCode": "14023",
          "fullName": [
            {
              "language": "eng",
              "value": "Rajath"
            },
            {
              "language": "ara",
              "value": "رَجَته"
            }
          ]
        }
      }
    ],
    "totalRecords": "2",
    "noOfRecords": "2",
    "pageIndex": "0"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: No record found for the requested user id.

{
    "id": "mosip.pre-registration.demographic.retrieve.basic",
    "version": "1.0",
    "responsetime": "2019-05-20T07:12:37.316Z",
    "response": null,
    "errors": [
        {
            "errorCode": "PRG_PAM_APP_005",
            "message": "No record found for the requested user id"
        }
    ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_APP_016

no record found for the requested page index

if there is no more demographic data found for the requested page index

PRG_PAM_APP_019

Invalid page index value

If page index value is invalid

PRG_PAM_APP_015

Page size must be greater than zero

if page size is invalid or if it is defined 0 or less than 0 in config

PRG_PAM_CORE_010

hashing failed

demographic data hashing failed

PRG_PAM_CORE_012

decryption failed

decryption of demographic data failed

PRG_PAM_APP_007

json parsing is failed

demographic json parsing failed

PRG_PAM_APP_018

Failed to read the identity json from the server

If the configured identity json file is unreachable

DELETE /applications/{preRegistrationId}

This request is used to discard the entire pre-registration details based pre-registration id provided in request path parameter.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

pre-registration id of the application

29605371807216

Responses

Success Response

Status code: 200

Description: Deletion of individual is successfully

{
  "id": "mosip.pre-registration.demographic.delete",
  "version": "1.0",
  "errors": null,
  "responsetime": "2019-05-20T10:28:37.488Z",
  "response": [
    {
      "preRegistrationId": "29605371807216",
      "deletedBy": "9886442073",
      "deletedDateTime": "2019-05-20T10:28:37.485+0000"
    }
  ]
}

Failure Response

Status code: 200

Description: No data found for the requested pre-registration id(non-empty)

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

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_APP_003

delete operation is not allowed

Deletion of Preregistration fails if its status is neither pending appointment nor booked

PRG_PAM_DOC_016

failed to delete the booking

If Booking data is failed to delete

PRG_PAM_APP_004

failed to delete the pre-registration data

If Preregistration data is failed to delete

PRG_PAM_APP_017

Requested preregistration id does not belong to the user

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

Document Service (public)

This service enables Pre-Registration portal to request for uploading the document for a particular pre-registration. If any one upload file greater than specified size which is allowed by ngnix config; it will give 413 Request Entity Too Large error.

POST /documents/{preRegistrationId}

This request is used to upload document with the metadata which include document category code, document type code and document format for a pre-registration Id.

URL:

  1. For valid Document category code refer below GET method for respective language code : /documentcategories/{langcode}

  2. For valid Document type code refer below GET method for respective language and document category code: /documenttypes/{documentcategorycode}/{langcode}

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

Pre-registration id of the application

32042841521591

Request Part Parameters

Name
Required
Description
Comment

file

Yes

Document which we need to upload

Request Part (Document request) Parameters

Name
Required
Description
Comment

id

Yes

Id of the application

mosip.pre-registration.document.upload

version

Yes

version of the application

1.0

requesttime

Yes

Request tme of the application

2019-01-16T05:23:08.019Z

request

Yes

Request for the application

request.docCatCode

Yes

Document category code

POA

request.docTypCode

Yes

Document type code

RNC

request.langCode

Yes

Language code of the application

fra

Request

{
  "id": "mosip.pre-registration.document.upload",
  "version": "1.0",
  "requesttime": "2019-06-18T07:22:57.086Z",
  "request": {
    "docCatCode": "POA",
    "docTypCode": "RNC",
    "langCode": "fra"
  }
}

Responses

Success Response

Status code: 200

Description: Document uploaded successfully

{
  "id": "mosip.pre-registration.document.upload",
  "version": "1.0",
  "responsetime": "2019-06-18T10:03:15.828Z",
  "response": {
    "preRegistrationId": "63418297368795",
    "docId": "91a1e0ac-91af-11e9-a605-d9ae0e3774a9",
    "docName": "Doc.pdf",
    "docCatCode": "POA",
    "docTypCode": "RNC",
    "docFileFormat": "pdf"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: Invalid document format supported

{
  "id": "mosip.pre-registration.document.upload",
  "version": "1.0",
  "responsetime": "2019-05-20T09:55:27.008Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_DOC_004",
      "message": "Invalid document format supported"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error 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_DOC_007

Document exceeding permitted size

when uploaded document size is exceeding the configured size

PRG_CORE_REQ_018

Document Catagory code is invalid

empty or invalid document category code

PRG_CORE_REQ_017

Document type code is invalid

empty or invalid document type code

PRG_CORE_REQ_014

Language code is invalid

If language code is empty or invalid

PRG_PAM_CORE_011

encryption failed

encryption of document data failed

PRG_PAM_DOC_015

Json exception

document request json parsing failed

PRG_PAM_CORE_010

hashing failed

document data hashing failed

PRG_PAM_DOC_010

Document virus scan failed

virus scan of uploaded document is failed

PRG_PAM_APP_005

No data found for the requested pre-registration id

invalid preregistration id or data is not found for that preregistration id

PRG_PAM_DOC_012

Document table not accessible

access to document table fails

PRG_PAM_DOC_009

Document upload failed

if the document & document details are failed to store

PRG_PAM_APP_017

Requested preregistration id does not belong to the user

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

PUT /documents/{preRegistrationId}

This request is used to copy the document from source pre-registration id to destination pre-registration id with the specified document category code.

Resource URL

https://{base_url}/preregistration/v1/documents/{preRegistrationId}?catCode={doc_cat_code}&sourcePreId={preRegistrationId}

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

Destination Pre-registration id of the application

67531403498547

Request Query Parameters

Name
Required
Description
Comment

catCode

Yes

Document category code

POA

sourcePreId

Yes

Source Pre-registration id of the application

97285429827016

Responses

Success Response

Status code: 200

Description: Document successfully copied

{
  "id": "mosip.pre-registration.document.copy",
  "version": "1.0",
  "responsetime": "2019-01-16T17:31:04.021Z",
  "response": {
    "preRegsitrationId": "67531403498547",
    "docId": "8196222-5fb0-11e9-rg3b-7d108980f456",
    "docName": "address.pdf",
    "docCatCode": "POA",
    "docTypCode": "RNC",
    "docFileFormat": "pdf"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: If Document has not been uploaded for the source pre-registration Id(non-empty)

{
  "id": "mosip.pre-registration.document.copy",
  "version": "1.0",
  "responsetime": "2019-05-20T11:09:14.246Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_DOC_005",
      "message": "Documents is not found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_CORE_REQ_001

request parameter is missing

If source or destination preregistration id is empty

PRG_CORE_REQ_017

Catagory code is invalid

if document category code is not POA

PRG_PAM_APP_005

No data found for the requested pre-registration id

If source preregistration id or destination preregistration id is invalid(non-empty) or no preregistration data found for any of the preregistration id

PRG_PAM_DOC_012

Document table not accessible

access to document table fails

PRG_PAM_DOC_009

Document upload failed

if the document & document details are failed to store

PRG_PAM_DOC_011

Document copy failed from source to destination

when document is not copied from source to destination preregistration id

PRG_CORE_REQ_010

hashing failed

document data hashing 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

GET /documents/preregistration/{preRegistrationId}

This request used to retrieve all documents metadata associated with particular pre-registration.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

Pre-registration id of the application

97285429827016

Responses

Success Response

Status code: 200

Description: Documents retrieved successfully

{
  "id": "mosip.pre-registration.document.fetch.metadata",
  "version": "1.0",
  "responsetime": "2019-06-18T10:26:02.622Z",
  "response": {
    "documentsMetaData": [
      {
        "docName": "Doc.pdf",
        "documentId": "d4585c1e-91b1-11e9-a605-eb637a690b50",
        "docCatCode": "POA",
        "docTypCode": "RNC",
        "langCode": "fra"
      },
      {
        "docName": "Passport.pdf",
        "documentId": "6f036ecf-91b3-11e9-a605-cd68a2d40011",
        "docCatCode": "POI",
        "docTypCode": "CIN",
        "langCode": "fra"
      }
    ]
  },
  "errors": null
}

Failure Response

Status code: 200

Description: if pre-registration id is invalid(non-empty)

{
  "id": "mosip.pre-registration.document.fetch.metadata",
  "version": "1.0",
  "responsetime": "2019-05-20T11:17:54.743Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_DOC_012

Document table not accessible

access to document table fails

PRG_PAM_DOC_005

Failed to fetch from File System server

if the document is failed to be fetched from file system

PRG_PAM_CORE_012

decryption failes

decryption of document data failed

PRG_PAM_CORE_010

hashing failed

document data hashing 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

PRG_PAM_DOC_005

Documents is not found for the requested pre-registration id

when the document is not uploaded for the preregistration id

PRG_PAM_APP_005

No data found for the requested pre-registration id

When the application is deleted and trying to fetch the document of that pre-registration-id

GET /documents/{documentId}?preRegistrationId={preRegistrationId}

This request used to retrieve the document for a particular document id from the File System server.

Resource URL

https://{base_url}/preregistration/v1/documents/{documentId}?preRegistrationId={preRegistrationId}

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

documentId

Yes

document id of the application

0748c439-4f83-11e9-ae3b-7b0aa1318f48

Request Query Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

pre-registration id of the application

74843948119371

Responses

Success Response

Status code: 200

Description: Document successfully retrieved

{
  "id": "mosip.pre-registration.document.fetch.content",
  "version" : "1.0",
  "responsetime": "2019-01-16T17:31:04.021Z",
  "response":{
    "document": "ByteArray"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: if pre-registration id is invalid(non-empty)

{
  "id": "mosip.pre-registration.document.fetch.metadata",
  "version": "1.0",
  "responsetime": "2019-05-20T11:17:54.743Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_DOC_012

Document table not accessible

access to document table fails

PRG_PAM_DOC_005

Failed to fetch from File System server

if the document is failed to be fetched from file system

PRG_CORE_REQ_012

decryption failed

decryption of document data failed

PRG_CORE_REQ_010

hashing failed

document data hashing 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

PRG_PAM_DOC_022

DocumentId is not belongs to the pre-registration Id

If document id is not related to the pre-registration id or if document is not found for the pre-registration id

DELETE /documents/preregistration/{preRegsitrationId}

This request used to delete all the documents which are associated with requested pre-registration id.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegsitrationId

Yes

pre-registration id of the application

37802950913289

Responses

Success Response

Status code: 200

Description: Documents successfully deleted

{
  "id": "mosip.pre-registration.document.delete",
  "version" : "1.0",
  "responsetime": "2019-01-16T17:31:04.021Z",
  "response": {
    "message": "All documents assosiated with requested pre-registration id deleted sucessfully"
  },
  "errors":null
}

Failure Response

Status code: 200

Description: if the pre-registration id is invalid(non-empty)

{
  "id": "mosip.pre-registration.document.fetch.metadata",
  "version": "1.0",
  "responsetime": "2019-07-03T10:28:02.252Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_DOC_006

Documents failed to delete

if the document & document details are failed to delete

PRG_PAM_DOC_012

Document table not accessible

access to document table fails

PRG_PAM_APP_017

Requested preregistration id does not belong to the user

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

PRG_PAM_DOC_005

Documents is not found for the requested pre-registration id

If document is not uploaded for the pre-registration id

PRG_PAM_APP_005

No data found for the requested pre-registration id

When the application is deleted and trying to fetch the document of that pre-registration-id

DELETE /documents/{documentId}?preRegistrationId={preRegistrationId}

This request used to delete the document for a particular document id from database and File System server.

Resource URL

https://{base_url}/preregistration/v1/documents/{documentId}?preRegistrationId={preRegistrationId}

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

documentId

Yes

document id of the application

0748c439-4f83-11e9-ae3b-7b0aa1318f48

Request Query Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

pre-registration id of the application

74843948119371

Responses

Success Response

Status code: 200

Description: Document successfully deleted

{
  "id": "mosip.pre-registration.document.delete.specific",
  "version" : "1.0",
  "responsetime": "2019-01-16T17:31:04.021Z",
  "response": {
    "message": "Document successfully deleted"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: if the pre-registration id is invalid(non-empty)

{
  "id": "mosip.pre-registration.document.fetch.metadata",
  "version": "1.0",
  "responsetime": "2019-07-03T10:28:02.252Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_PAM_DOC_006

Documents failed to delete

if the document & document details are failed to delete

PRG_PAM_DOC_012

Document table not accessible

access to document table fails

PRG_PAM_APP_017

Requested preregistration id does not belong to the user

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

PRG_PAM_DOC_022

DocumentId is not belongs to the pre-registration Id

If document id is not related to the pre-registration id or if document is not found for the pre-registration id

DataSync Service (External)

This service enables Pre-Registration to a registration client, request to retrieve all pre-registration ids based on registration client id, appointment date and an user type.

POST /sync

This request is used by registration client to retrieve all the pre-registration Ids by the date range of appointment done.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Body Parameters

Name
Required
Description
Comment

id

Yes

Id of the application

mosip.pre-registration.datasync

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.registrationCenterId

Yes

Registration Center Id for which the data is required

10001

request.fromDate

Yes

From date of the appointment

2019-02-09

request.toDate

Yes

To date of the appointment

2019-02-12

Request

{
  "id": "mosip.pre-registration.datasync.fetch.ids",
  "version": "1.0",
  "requesttime": "2019-05-16T06:57:29.969Z",
  "request": {
    "registrationCenterId":"10001",
    "fromDate":"2019-05-09",
    "toDate":"2019-05-20"
  }
}

Responses

Success Response

Status code: 200

Description: All Pre-Registration Ids fetched successfully

{
  "id": "mosip.pre-registration.datasync.fetch.ids",
  "version": "1.0",
  "responsetime": "2019-05-16T08:34:01.315",
  "response": {
    "transactionId": "5afbfbae-77b5-11e9-8dea-e342188bfd4e",
    "countOfPreRegIds": "2",
    "preRegistrationIds": {
      "47184958619749": "2019-05-15T11:44:28.966",
      "76426186439718": "2019-05-16T05:54:01.999"
    }
  },
  "errors": null
}

Failure Response

Status code: 200

Description: If appointment is not booked under the registration center and requested date range.

{
  "id": "mosip.pre-registration.datasync.fetch.ids",
  "version": "1.0",
  "responsetime": "2019-05-16T08:32:19.732Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_BOOK_RCI_032",
      "message": "Record not found for date range and reg center id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error 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_DATA_SYNC_009

registration center id is invalid

Empty registration center Id

PRG_CORE_REQ_013

Request date should be current date

when the date is not current date

PRG_DATA_SYNC_007

Demographic record failed to fetch

when rest service to demographic service fails

PRG_DATA_SYNC_016

booking data not found

when rest service to booking service fails

PRG_CORE_REQ_019

Invalid date time format

If from date or to date is invalid

PRG_CORE_REQ_020

From date is greater than To date

If from date is greater than to date

POST /sync/consumedPreRegIds

This request is used by registration processor, to retrieve all processed pre-registration ids and store in pre-registration database so that after batch jon run , job will delete records from main table and move to history table(consumed).

Resource URL

https://{base_url}/preregistration/v1/sync/consumedPreRegIds

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Body Parameters

Name
Required
Description
Comment

id

Yes

Id of the application

mosip.pre-registration.datasync.store

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.preRegistrationIds

Yes

List of Preregistration Ids

42973267563920

Request

{
  "id": "mosip.pre-registration.datasync.store",
  "version": "1.0",
  "requesttime": "2019-02-11T07:05:08.850Z",
  "request": {
    "preRegistrationIds": [
      "94625367217037",
      "43526512857302"
    ]
  }
}

Responses

Success Response

Status code: 200

Description: Consumed Pre-Registrations saved

{
  "id": "mosip.pre-registration.datasync.store",
  "version" : "1.0",
  "responsetime": "2019-02-16T17:31:04.021Z",
  "response": {
    "transactionId": "26fde349-0e56-11e9-99e1-f7683fbbce99",
    "countOfPreRegIds": "2",
    "preRegistrationIds": "2"
  },
  "errors":null
}

Failure Response

Status code: 200

Description: No pre-registration ids passed in request body or all the preregistration ids are invalid

{
  "id": "mosip.pre-registration.datasync.store",
  "version": "1.0",
  "responsetime": "2019-05-16T08:41:48.546Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_DATA_SYNC_011",
      "message": "requested preregistration ids are not valid"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error 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_DATA_SYNC_007

Demographic record failed to fetch

when rest service to demographic service fails

GET /sync/{preRegistrationId}

This request is used by registration client to retrieve particular pre-registration data based on a pre-registration id.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Request Path Parameters

Name
Required
Description
Comment

preRegistrationId

Yes

Pre Registration id

41342175487213

Responses

Success Response

Status code: 200

Description: Data Sync records fetched

{
  "id": "mosip.pre-registration.datasync.fetch",
  "version": "1.0",
  "responsetime": "2019-05-16T08:34:56.440",
  "response": {
    "pre-registration-id": "47184958619749",
    "registration-client-id": "10001",
    "appointment-date": "2019-05-17",
    "from-time-slot": "09:00",
    "to-time-slot": "09:15",
    "zip-filename": "47184958619749",
    "zip-bytes": "ByteArray"
  },
  "errors": null
}

Failure Response

Status code: 200

Description: No demographic data exists for the requested pre-registration id or if the pre-registration id is invalid(non-empty)

{
  "id": "mosip.pre-registration.datasync.fetch",
  "version": "1.0",
  "responsetime": "2019-05-20T12:10:36.682Z",
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_005",
      "message": "No data found for the requested pre-registration id"
    }
  ]
}

Other Failure details

Error Code
Error Message
Error Description

PRG_BOOK_RCI_013

booking data not found

If appointment is not booked against the preregistration id

PRG_DATA_SYNC_007

Demographic record failed to fetch

when rest service to demographic service fails

PRG_DATA_SYNC_016

booking data not found

when rest service to booking service fails

PRG_DATA_SYNC_005

Unable to create zip file

If any error occurs while creating the zip file bytes

PRG_DATA_SYNC_014

file IO exception

File system exception

PRG_DATA_SYNC_006

unable to fetch the document

when rest service to document service fails

Booking Service (Public)

This service details used by Pre-Registration portal to book an appointment by providing his/her basic appointment details.

GET /appointment/availability/sync

This request is used to synchronize booking slots availability table with master data.

Resource URL

https://{base_url}/preregistration/v1/appointment/availability/sync

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes

Responses

Success Response

Status code: 200

Description: Master Data Sync is successful

{
  "id": "mosip.pre-registration.appointment.availability.sync",
  "version": "1.0",
  "responsetime": "2019-05-20T09:48:43.394Z",
  "response": "MASTER_DATA_SYNCED_SUCCESSFULLY",
  "errors": null
}

Other Failure details

Error Code
Error Message
Error Description

PRG_BOOK_RCI_015

No available slots found for specified registration center

If no slots are available in the specified registration center

PRG_BOOK_RCI_016

Availablity table not accessible

access to availability table fails

PRG_BOOK_RCI_034

Json processing exception

Json parse exception while sending notification

PRG_BOOK_RCI_033

Notification service call failed

Notification service call fail

PRG_BOOK_RCI_020

Master data not found

Master date service call fail

POST /appointment/{preRegistrationId}

This request is used to book an registration center. If the appointment data exists for the requested pre-registration id, it will cancel it and update the new appointment data. If no appointment data then it will book an appointment for specified registration center and time slot.

Resource URL

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

Resource details

Resource Details
Description

Response format

JSON

Requires Authentication

Yes