Kernel APIs

Key Manager Service (Private)

This service in MOSIP are used for operations related to key management and interaction with SoftHSM or RealHSM for key generation.

POST /generateCSR

This service will generate CSRs for a MOSIP application.

Resource URL

https://{base_url}/v1/keymanager/generateCSR

Resource details

Request Part Parameters

Request

{
  "id": "io.mosip.keymanager.generateCSR",
  "metadata": {},
  "request": {
    "applicationId": "KERNEL",
    "commonName": "MOSIP",
    "country": "IN",
    "location": "BANGALORE",
    "organization": "IIITB",
    "organizationUnit": "MOSIP-TECH-CENTER",
    "referenceId": "string",
    "state": "KA"
  },
  "requesttime": "2020-10-05T13:14:56.696Z",
  "version": "1.0"
}

Responses

Success Response

{
  "errors": null,
  "id": "io.mosip.keymanager.generateCSR",
  "metadata": {},
  "response": {
    "certSignRequest": "string",
    "certificate": "string",
    "expiryAt": "string",
    "issuedAt": "string",
    "timestamp": "2020-10-05T13:14:56.696Z"
  },
  "responsetime": "2020-10-05T13:14:56.696Z",
  "version": "1.0"
}

Response Code : 200 (OK)

Failure Response

{
  "id": "io.mosip.keymanager.generateCSR",
  "version": "1.0",
  "responsetime": "2020-10-05T13:14:56.696Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "KER-KMS-012",
      "message": "Key Generation Process is not completed."
    }
  ]
}

Response Code : 200 (OK)

POST /generateMasterKey/{objectType}

This service will generate master keys for a MOSIP application.

Resource URL

https://{base_url}/v1/keymanager/generateMasterKey/{objectType}

Resource details

Path Parameters

Request Part Parameters

Request

{
  "id": "io.mosip.keymanager.generateMasterKey",
  "metadata": {},
  "request": {
    "applicationId": "KERNEL",
    "commonName": "MOSIP",
    "country": "IN",
    "force": false,
    "location": "BANGALORE",
    "organization": "IIITB",
    "organizationUnit": "MOSIP-TECH-CENTER",
    "referenceId": "string",
    "state": "KA"
  },
  "requesttime": "2020-10-05T13:44:48.123Z",
  "version": "1.0"
}

Responses

Success Response

{
  "errors": null,
  "id": "io.mosip.keymanager.generateMasterKey",
  "metadata": {},
  "response": {
    "certSignRequest": "string",
    "certificate": "string",
    "expiryAt": "string",
    "issuedAt": "string",
    "timestamp": "2020-10-05T13:44:48.123Z"
  },
  "responsetime": "2020-10-05T13:44:48.123Z",
  "version": "1.0"
}

Response Code : 200 (OK)

Error Response

{
  "id": "io.mosip.keymanager.generateMasterKey",
  "version": "1.0",
  "responsetime": "2020-10-05T13:44:48.123Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "KER-KMS-010",
      "message": "Reference Id Not Supported for the Application ID."
    }
  ]
}

Response Code : 200 (OK)

GET /getCertificate

This service will retrieve a certificate using the application id and reference id.

Resource URL

https://{base_url}/v1/keymanager/getCertificate?applicationId={application_id}&referenceId={reference_id}

Resource details

Query Parameters

Request Part Parameters

-NA-

Request

-NA-

Responses

Success Response

{
  "errors": null,
  "id": "string",
  "metadata": {},
  "response": {
    "certSignRequest": "string",
    "certificate": "string",
    "expiryAt": "string",
    "issuedAt": "string",
    "timestamp": "string"
  },
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "version": "string"
}

Response Code : 200 (OK)

Error Response

{
  "id": null,
  "version": null,
  "responsetime": "2020-10-05T13:53:53.799Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "KER-KMS-005",
      "message": "Required String parameter 'applicationId' is not present"
    }
  ]
}

Response Code : 200 (OK)

Failure Details

POST /uploadCertificate

This service will be used to upload a certificate.

Resource URL

https://{base_url}/v1/keymanager/uploadCertificate

Resource details

Request Part Parameters

Request

{
  "id": "io.mosip.keymanager.uploadCertificate",
  "metadata": {},
  "request": {
    "applicationId": "KERNEL",
    "certificateData": "<certificate data>",
    "referenceId": "10001"
  },
  "requesttime": "2020-10-05T14:05:34.658Z",
  "version": "1.0"
}

Responses

Success Response

{
  "errors": null,
  "id": "io.mosip.keymanager.uploadCertificate",
  "metadata": {},
  "response": {
    "status": "success",
    "timestamp": "2020-10-05T14:01:51.588Z"
  },
  "responsetime": "2020-10-05T14:05:34.658Z",
  "version": "1.0"
}

Response Code : 200 (OK)

Error Response

{
  "id": "io.mosip.keymanager.uploadCertificate",
  "version": "1.0",
  "responsetime": "2020-10-05T14:05:34.658Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "KER-KMS-003",
      "message": "No unique alias is found"
    }
  ]
}

Response Code : 200 (OK)

Failure Details

POST /uploadOtherDomainCertificate

This service will be used to upload a certificate which is of other domains with in MOSIP system.

Resource URL

https://{base_url}/v1/keymanager/uploadOtherDomainCertificate

Resource details

Request Part Parameters

Request

{
  "id": "io.mosip.keymanager.uploadOtherDomainCertificate",
  "metadata": {},
  "request": {
    "applicationId": "KERNEL",
    "certificateData": "<certificate data>",
    "referenceId": "10001"
  },
  "requesttime": "2020-10-05T14:05:34.658Z",
  "version": "1.0"
}

Responses

Success Response

{
  "errors": null,
  "id": "io.mosip.keymanager.uploadOtherDomainCertificate",
  "metadata": {},
  "response": {
    "status": "success",
    "timestamp": "2020-10-05T14:01:51.588Z"
  },
  "responsetime": "2020-10-05T14:05:34.658Z",
  "version": "1.0"
}

Response Code : 200 (OK)

Error Response

{
  "id": "io.mosip.keymanager.uploadOtherDomainCertificate",
  "version": "1.0",
  "responsetime": "2020-10-05T14:11:11.810Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "KER-KMS-013",
      "message": "Certificate Parsing Error."
    }
  ]
}

Response Code : 200 (OK)

Failure Details

Crypto Manager (Private)

POST v1/cryptomanager/encrypt

This service will encrypt provided plain string data with session symmetric key and encrypt symmetric key with application specific public key based on given timestamp(current timestamp of encryption). This will respond combined encrypted data and symmetric key having a key splitter.

Resource URL

https://{base_url}/v1/cryptomanager/encrypt

Resource details

Request

{
  "id": "io.mosip.cryptomanager.encrypt",
  "metadata": {},
  "request": {
    "aad": "VGhpcyBpcyBzYW1wbGUgYWFk",
    "applicationId": "REGISTRATION",
    "data": "string",
    "referenceId": "REF01",
    "salt": "LA7YcvP9DdLIVI5CwFt1SQ",
    "timeStamp": "2018-12-10T06:12:52.994Z"
  },
  "requesttime": "2018-12-10T06:12:52.994Z",
  "version": "1.0"
}

Responses

Success Response

{
  "id": "io.mosip.cryptomanager.encrypt",
  "version": "1.0",
  "metadata": {},
  "responsetime": "2018-12-10T06:12:52.994Z",
  "errors": null,
  "response": {
    "data": "wk4RM2su2lBXuhx3_EtBijXTDp0Y20fJA6tmoONPjr6YBLqwu_YRWiSa10o-bQWesb-IobxPg-KsZq-Gc0L6Rq6besw-rMavg5a5nPU7b3pAug0N6Ek4B7S8v_tc5cu7LBRdBv1mRSS2onxXbT2R4qeEwl_11KtxPs_ek6g4vV6oEQRem2fPhop_21DaoWVEZFovHAAJDqSFj3R38A-fxvHHpVSa9BRTe-DeTKj_xZsNYXQixZR3jMdijtm8Q7lIT3E1x8LYp-hG3RhR_xC7trAOTqilzLjLfirE3Wjfor5bhLiG9eZyTb52ihKsDV1l2oBAhn9Aao_fYl3UD5QekSNLRVlfU1BMSVRURVIjeKen-3j5KhnE-93Qfe_pBfMBIKEkTJJ7pR-4cO7l-X0"
  } 
}   

Response Code : 200 (OK)

POST v1/cryptomanager/decrypt

This service will decrypt encryted data along with symmetric key having splitter for given timestamp(encryption timestamp).

Resource URL

https://mosip.io/v1/cryptomanager/decrypt

Resource details

Request

{
  "id": "io.mosip.cryptomanager.decrypt",
  "metadata": {},
  "request": {
    "aad": "VGhpcyBpcyBzYW1wbGUgYWFk",
    "applicationId": "REGISTRATION",
    "data": "string",
    "referenceId": "REF01",
    "salt": "LA7YcvP9DdLIVI5CwFt1SQ",
    "timeStamp": "2018-12-10T06:12:52.994Z"
  },
  "requesttime": "2018-12-10T06:12:52.994Z",
  "version": "1.0"
}

Responses

Success Response

{
  "id": "io.mosip.cryptomanager.decrypt",
  "version": "1.0",
  "metadata": {},
  "responsetime": "2018-12-10T06:12:52.994Z",
  "errors": null,
  "response": {
    "data": "string"
  }
}	

Response Code : 200 (OK)

Error Response

{
  "id": "io.mosip.cryptomanager.decrypt",
  "version": "1.0",
  "metadata": {},
  "responsetime": "2018-12-10T06:12:52.994Z",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
 "response": null
}	

Response Code : 200 (OK)

Failure details

License Key Manager (Private)

MISPs call the IDA to authenticate the Individuals. There can be various service calls such as Demographic, biometric based authentications. Each service calls have the permission associated. When a service call comes to the IDA, a request is sent to the Kernel module to retrieve the permissions for the License Key.

This service facilitates generation of license key, mapping the license key to several permissions, and fetch permissions mapped to a license key.

License Key Generation

This component generates a license key for a specified MISP ID.

POST /license/generate

Resource URL

https://mosip.io/v1/licensekeymanager/license/generate

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {
    "licenseExpiryTime": "2019-03-07T10:00:00.000Z",
	"MISPId": "9837"
  }
}

Responses

Success Response

Description: license key generated successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
    "licenseKey": "gR7Mw7tA7S7qifkf"
  }
}

Response Code : 200 (OK)

POST /license/permission

This component maps various permissions provided to a specified license key.

Resource URL

https://mosip.io/v1/licensekeymanager/license/permission

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {
	"licenseKey": "gR7Mw7tA7S7qifkf",
	"permissions": [
	  "OTP Trigger","OTP Authentication"
	],
    "MISPId": "9837"
  }
}

Responses

Success Response

Description: license key permission updated successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
    "status": "Mapped License with the permissions"
  }
}

Response Code : 200 (OK)

GET /license/permission

This component fetches various permission mapped to a license key.

Resource URL

https://mosip.io/v1/licensekeymanager/license/permission

Resource details

Request Part Parameters

Request

https://mosip.io/v1/licensekeymanager/license/permission?licenseKey=gR7Mw7tA7S7qifkf&MISPId=9837

Responses

Success Response

Description: license key permissions fetched successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
    "permissions": [
	  "OTP Trigger",
	  "OTP Authentication"
	]
  }
}

Response Code : 200 (OK)

PUT /license/status

This service moves the status of the license key to SUSPENDED status.

Resource URL

https://mosip.io/v1/licensekeymanager/license/status

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {
	"licensekey":"gR7Mw7tA7S7qifkf",
	"status":"ACTIVE"
  }
}

Responses

Success Response

Description: license key suspended successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response" : {
	"message":"The status had been changed successfully. "
  }
}	

Response Code : 200 (OK)

Failure Response

Description: Invalid license key

{
  "id": "string",
  "version": "string",
  "responsetime": "2019-04-04T05:03:18.287Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "PRG_PAM_APP_001",
      "message": "License key not found"
    }
  ]
}

Response Code : 200 (OK)

Failure details

Crypto Signature Service (Private)

POST v1/signature/sign

This service will sign provided plain string data.

Resource URL

https://mosip.io/v1/signature/sign

Resource details

Request

{
  "id": "string",
  "metadata": {},
  "request": {
  "data": "test"
  },
  "requesttime": "2018-12-10T06:12:52.994Z",
  "version": "string"
}

Responses

Success Response

{
  "id": null,
  "version": null,
  "responsetime": "2019-05-20T10:12:43.624Z",
  "metadata": null,
  "response": {
    "signature": "DrgkF2vm4WvBe04UNe-RePRcrg77uQpsH3GENRcglBsid-K0UDReeeZVKwimOdwV7Ht1j-_D1BFf2sCrM8ni7ztE5Xc_3TEaniOAnOgZDRSI0GG-uSqjH51AwTSl1PYdStfXtOn6HEfEU68JG7TdAliDI5C7thJ1YNmPnHusIsZzX6sW_VfvSpLeA_RzCqnUDH_VaEzZt_5zRYiQv9van4wt0P7HTfIBlQ5zaeO3wXOc3Pogct3ssKwqdaMmZdc7QTDOFqDZZVceMTIXKyiH-ZVs_u3QXRysiLVdXoz7d7yXHdWxQtzsfMjY7alMJNgbmu4X26LYNRemn65Mmn6ixA",
    "timestamp": "2019-05-20T10:12:43.082Z"
  },
  "errors": null
}	

Response Code : 200 (OK)

POST v1/signature/validate

This service will decrypt encryted data along with symmetric key having splitter for given timestamp(encryption timestamp).

Resource URL

https://mosip.io/v1/signature/validate

Resource details

Request

{
  "id": "string",
  "metadata": {},
  "request": {
    "signature": "DrgkF2vm4WvBe04UNe-RePRcrg77uQpsH3GENRcglBsid-K0UDReeeZVKwimOdwV7Ht1j-_D1BFf2sCrM8ni7ztE5Xc_3TEaniOAnOgZDRSI0GG-uSqjH51AwTSl1PYdStfXtOn6HEfEU68JG7TdAliDI5C7thJ1YNmPnHusIsZzX6sW_VfvSpLeA_RzCqnUDH_VaEzZt_5zRYiQv9van4wt0P7HTfIBlQ5zaeO3wXOc3Pogct3ssKwqdaMmZdc7QTDOFqDZZVceMTIXKyiH-ZVs_u3QXRysiLVdXoz7d7yXHdWxQtzsfMjY7alMJNgbmu4X26LYNRemn65Mmn6ixA",
    "data": "test",
    "timestamp": "2019-05-20T10:12:43.082Z"
  },
  "requesttime": "2018-12-10T06:12:52.994Z",
  "version": "string"
}

Responses

Success Response

Description: decrypt encryted data along with symmetric key having splitter

{
    "id": null,
    "version": null,
    "responsetime": "2019-05-20T10:21:02.027Z",
    "metadata": null,
    "response": {
        "status": "success",
        "message": "Validation Successful"
    },
    "errors": null
}	

Response Code : 200 (OK)

Error Response

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
 "response": null
}	

Response Code : 200 (OK)

Failure details

SMS Notification (Private)

POST /sms/send

This service will send request to SMS gateway.

Resource URL

https://mosip.io/v1/smsnotifier/sms/send

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {
	"message": "Your Booking Request accepted. B-Ref BI56793",
	"number": "89900074454"
  }
}

Responses

Success Response

Description: sms send successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
	"message": "Sms Request Sent",
	"status": "success"
  }
}	

Response Code : 200 (OK)

Error Response

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
  "response": null
}	

Response Code : 200 (OK)

Failure details

Email Notification (Private)

POST /email/send

This service will send request to Email/SMTP Service.

Resource URL

https://dev.mosip.io/v1/emailnotifier/email/send

Resource details

Request Part Parameters

Request

-H "Content-Type: multipart/form-data" 
-F "attachments={}" 
-F "mailCc=user1@gmail.com" 
-F "mailContent=OTP for Auth" 
-F "mailSubject=OTP" 
-F "mailTo=admin1@gmail.com"

Responses

Success Response

Description: sms send successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
	"message": "Email Request sent",
	"status": "success"
  }
}	

Response Code : 200 (OK)

Error Response

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
  "response": null
}	

Response Code : 200 (OK)

Failure details

UIN (External)

GET /uin

This service will return unused UIN from UIN pool

Resource URL

https://mosip.io/v1/uingenerator/uin

Resource details

Request Part Parameters

Request

N/A

Responses

Success Response

Description: uin generated successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
	"uin": "734168915279"
  }
}

Response Code : 200 (OK)

PUT /uin

This service will update the issued UN status to Assigned or Unassigned(Unused).

Resource URL

https://mosip.io/v1/uingenerator/uin

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request" : {
    "uin":"5193698130",
    "status":"ASSIGNED"
  }
}

Responses

Success Response

Description: uin status updated successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
    "uin":"5193698130",
    "status":"ASSIGNED"
  }
}

Response Code : 200 (OK)

Error Response

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
  "response": null
}

Response Code : 200 (OK)

Failure details

RID generator (Private)

GET /v1/ridgenerator/generate/rid/{centerid}/{machineid}

This service returns a RID for the requested CenterID and MachineID.

Resource URL

https://mosip.io/v1//generate/rid/{centerid}/{machineid}/

Resource details

Request Part Parameters

Request

-NA-

Responses

Success Response

{
  "id": null,
  "version": null,
  "responsetime": "2019-05-07T04:30:40.061Z",
  "metadata": null,
  "response": {
    "rid": "10002100320001920190507043040"
  },
  "errors": null
}

Error Response

{
  "id": null,
  "version": null,
  "responsetime": "2019-05-07T04:30:40.061Z",
  "metadata": null,
  "response": null,
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ]
}

Response Code : 200 (OK)

Failure details

Static Token generator (Private)

GET tokenidgenerator/{uin}/{partnercode}

This service returns a static token for the requested UIN and Partner ID. It will return the same Static Token for every call made with the same UIN and Partner ID.

Resource URL

https://mosip.io/v1/tokenidgenerator/{uin}/{partnercode}/

Resource details

Request Part Parameters

Request

-NA-

Responses

Success Response

Description: token id generated successfully

{
  "id": "mosip.kernel.tokenid.generate",
  "version": "1.0",
  "metadata": {},
  "responsetime": "2019-04-04T05:03:18.287Z",
  "response": {
  "tokenID": "268177021248100621690339355202974361"
   },
  "errors": null
}

Response Code : 200 (OK)

Failure Response

Description: Invalid parameters

{
  "id": "mosip.kernel.tokenid.generate",
  "version": "1.0",
  "metadata": {},
  "responsetime": "2019-04-04T05:03:18.287Z",
  "response": null,
  "errors": [
    {
      "errorCode": "KER-TIG-010",
      "message": "UIN and partner code cannot be empty"
    }
  ]
}

Response Code : 200 (OK)

Failure details

Audit Manager (Private)

Audits are events/transactions which need to be captured and stored to facilitate auditing. This data could further be used for reporting by the business.

This includes auditing various event types like System events (Periodic scans), Business events/transactions (Change in demo data), Security Events etc.

The Audit Manager component will receive a request to audit and store data, validate the request is from an authorized source, securely store the requested data and respond back with an acknowledgement of storage (Success/Failure). This component will also ensure non-auditable data is not stored.

It will also ensure audit data stored is archived based on the defined archival policy.

POST /audits

Resource URL

https://mosip.io/v1/auditmanager/audits

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {
	"eventId": "string",
	"eventName": "string",
	"eventType": "string",
	"actionTimeStamp": "2018-10-04T05:57:20.929Z",
	"hostName": "string",
	"hostIp": "string",
	"applicationId": "string",
	"applicationName": "string",
	"sessionUserId": "string",
	"sessionUserName": "string",
	"id": "string",
	"idType": "string",
	"createdBy": "string",
	"moduleName": "string",
	"moduleId": "string",
	"description": "string"
  }
}

Responses

Success Response

Description: audit request completed successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response": {
    "status": true
  }
}

Response Code : 200 (OK)

Error Response

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
  "response": null
}

Response Code : 200 (OK)

Failure details

Applicant type (Public)

These set of services does various operations regarding the applicant type.

GET /applicanttype/getApplicantType

This service finds the Applicant type for the combination of Individual type code,Gender code ,DOB ,Biometric available and Language code. If there is a combination entry exists for these combinations, the corresponding Applicant Type code is returned.

Resource URL

https://mosip.io/v1/applicanttype/getApplicantType

Resource details

Request Part Parameters

Request

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {
    "attributes": [
      {
        "attribute": "individualTypeCode",
        "value": "FR"
      },
      {
        "attribute": "dateofbirth",
        "value": "2012-03-08T11:46:12.640Z"
      },
      {
        "attribute": "genderCode",
        "value": "MLE"
      },
      {
        "attribute": "biometricAvailable",
        "value": false
      }
    ]
  }
}

Responses

Success Response

Description: applicant type code fetched successfully

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": null,
  "response" : {
	"applicationtypecode": "002"
  }
}

Response Code : 200 (OK)

Failure Response

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "responsetime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "errors": [
    {
      "errorCode": "string",
      "message": "string"
    }
  ],
  "response" : null
}

Response Code : 200 (OK)

Failure details

OTP Manager (Private)

OTP Generator

This component facilitates generation of OTP for various purposes. EG: Login in Pre-registration

The OTP Generator component will receive a request to generate OTP, validate if the OTP generation request is from an authorized source, call OTP generator API with the input parameters (Key), receive the OTP from the OTP generator API which is generated based on the OTP generation policy and respond to the source with the OTP.

The OTP Generator can also reject a request from a blocked/frozen account and assign a validity to each OTP that is generated, based on the defined policy

Resource URL

POST /generate

Resource details

Parameters

Request

v1/otpmanager/otp/generate

{
  "id": "string",
  "version": "string",
  "metadata": {},
  "requesttime": "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",
  "request": {