API Specifications
Please see API Specification v3.2 for indepth specification
This API triggers SingPass login and obtain consent for the user to retrieve user's data from MyInfo. Once the user has authenticated and consented, an authorisation code (authcode) will be returned together with the state for verification via the callback URL defined. The authcode can then be used to retrieve an access token via the Token API.
Note: This API is public and should be implemented as a link or button on your online webpage. Note: For partners integrating via android mobile application, please ensure that the "setDomStorageEnable" attribute is enabled.
Mode of authentication used to obtain user consent. Default is "SINGPASS".
SINGPASSPossible values: State the purpose for requesting the data. This will be shown to the user for his consent.
Response type for authorisation code flow - must be "code".
codeComma separated list of attributes requested. Possible attributes are listed in the scopes of the OAuth2 Security Schema above.
name,hanyupinyinnameIdentifier that represents the user's session/transaction with the client for reconciling query and response. The same value will be sent back via the callback URL. Use a unique system generated number for each user/transaction.
Your callback URL for MyInfo to return with the authorisation code.
Unique ID for your application.
STG-180099999K-TEST01Pilot for SingPass-QR-only-login using SingPass Mobile. SingPass-QR-only-login is enabled by specifying this parameter with value set to QR.
Note that this only applies to digital service on-boarded to perform SingPass-QR-only-login.
SINGPASSPossible values: Url scheme to launch back your mobile app after successful authentication using SingPass mobile.
Service will redirect all responses to 'redirect_uri' with additional parameters added as response results. Expected parameters include:
- code: this is the authorisation code you will use when calling the token endpoint
- state: this should be the same state passed in your initial URL.
- error: if there are any errors encountered, the error code will be given in this parameter.
- '500' - Unknown or other server side errors.
- '503' - MyInfo under maintenance. Error description will also be given in error_description parameter.
- 'access_denied' - When user did not give consent, refer to error_description parameter for the reason.
- error_description: if error is 'access_denied' i.e. user did not give consent, the description will be 'Resource Owner did not authorize the request'.
Note: If user closes the browser window prematurely, there will be no callback to the 'redirect_uri'. Therefore it is important for you to check the 'state' to verify that the transaction is the same.
function callAuthoriseApi() {
var authoriseUrl = authApiUrl + "?client_id=" + clientId +
"&attributes=" + attributes +
"&purpose=" + purpose +
"&state=" + state +
"&redirect_uri=" + redirectUrl;
window.location = authoriseUrl;
}
Service will redirect all responses to 'redirect_uri' with additional parameters added as response results. Expected parameters include:
- code: this is the authorisation code you will use when calling the token endpoint
- state: this should be the same state passed in your initial URL.
- error: if there are any errors encountered, the error code will be given in this parameter.
- '500' - Unknown or other server side errors.
- '503' - MyInfo under maintenance. Error description will also be given in error_description parameter.
- 'access_denied' - When user did not give consent, refer to error_description parameter for the reason.
- error_description: if error is 'access_denied' i.e. user did not give consent, the description will be 'Resource Owner did not authorize the request'.
Note: If user closes the browser window prematurely, there will be no callback to the 'redirect_uri'. Therefore it is important for you to check the 'state' to verify that the transaction is the same.
No content
This API generates an access token when presented with a valid authcode obtained from the Authorise API. This token can then be used to request for the user's data that were consented.
PKI digital signature for server to server calls. See Request Signing for more details.
Add authorization token constructed containing the RSA digital signature of the base string. Refer to https://api.singpass.gov.sg/library/myinfo/developers/tutorial3 on how this token should be generated.
Note: This header is not required when calling Sandbox API.
The authcode given by the authorise API.
Grant type for getting token (default "authorization_code")
authorization_codeSecret key given to your application during onboarding.
Unique ID for your application.
Application's callback URL.
Identifier that represents the user's session with the client, provided earlier during the authorise API call.
OK.
Returning a JSON object which contains the authorization access token (JWT) that will be used to retrieve the data from MyInfo.
Possible scenarios:
- Same authcode in the body is being re-used. We do not allow same authcode being used in multiple calls. Ensure that authcode is not repeated.
- AuthCode error - missing, invalid, expired, revoked
Unauthorized.
Possible scenarios:
- No security header given (HTTP 'Authorization' header)
- Invalid App ID used. Digital service is not registered with MyInfo
- Invalid client secret used.
- The timestamp of server is not synchronised. Check timestamp of server.
- The value of the nonce in the authorisation header was deemed to be repeated. Check that the nonce is not re-used
- Ensure HTTP 'Authorization' header to be 'PKI_SIGN'
- Signature incorrect - Verify your signature by using our signature verifier tool and ensure correct key is used to sign the base string.
- Ensure that base string contains all parameters required
- Ensure attributes in base string are separate by comma(,), and not %2C
- Ensure that correct key is used to sign the base string
- Ensure that HTTP call is made with the same query/body parameters used to formulate the base string.
- Ensure the base string contains the following:
- HTTP GET method(in uppercase)
- API (e.g. https://..)
- These parameters: * app_id * nonce * signature * signature_method * timestamp
Forbidden
Possible scenarios:
- Incorrect API URL used. Refer to tutorial for the correct API URL(test/production)
Unexpected error. Check response body for actual error.
// function to prepare request for TOKEN API
function createTokenRequest(code) {
var cacheCtl = "no-cache";
var contentType = "application/x-www-form-urlencoded";
var method = "POST";
var request = null;
// preparing the request with header and parameters
// assemble params for Token API
var strParams = "grant_type=authorization_code" +
"&code=" + code +
"&redirect_uri=" + _redirectUrl +
"&client_id=" + _clientId +
"&client_secret=" + _clientSecret;
var params = querystring.parse(strParams);
// assemble headers for Token API
var strHeaders = "Content-Type=" + contentType + "&Cache-Control=" + cacheCtl;
var headers = querystring.parse(strHeaders);
// Sign request and add Authorization Headers
var authHeaders = generateAuthorizationHeader(
_tokenApiUrl,
params,
method,
contentType,
_authLevel,
_clientId,
_privateKeyContent,
_clientSecret
);
if (!_.isEmpty(authHeaders)) {
_.set(headers, "Authorization", authHeaders);
}
var request = restClient.post(_tokenApiUrl);
// Set headers
if (!_.isUndefined(headers) && !_.isEmpty(headers))
request.set(headers);
// Set Params
if (!_.isUndefined(params) && !_.isEmpty(params))
request.send(params);
return request;
}
{
"access_token": {
"sub": "text",
"scope": "text",
"nbf": "text",
"iss": "text",
"txnid": "text",
"client": {
"client_id": "STG2-MYINFO-SELF-TEST",
"client_name": "Myinfo Self Test App",
"entity_uen": "T16GB0002G",
"entity_name": "GovTech"
},
"subentity": {
"subclient_id": "text",
"subclient_name": "text",
"entity_name": "text",
"entity_uen": "text",
"whitelist": true
},
"expires_in": "text",
"iat": "text",
"exp": "text",
"realm": "text",
"aud": "text",
"jti": "text",
"cnf": {
"jkt": "text"
},
"jku": "text",
"epk": {
"use": "enc",
"alg": "ECDH-ES+A256KW",
"kty": "EC",
"kid": "M-JXqh0gh1GGUUdzNue3IUDyUiagqjHathnscUk2nS8",
"crv": "P-256",
"x": "qrR8PAUO6fDouV-6mVdix5IyrVMtu0PVS0nOqWBZosA",
"y": "6xSbySYW6ke2V727TCgSOPiH4XSDgxFCUrAAMSbl9tI"
}
},
"token_type": "Bearer",
"expires_in": 1,
"scope": "text"
}This API returns user's data from MyInfo when presented with a valid access token obtained from the Token API.
Note: Null value indicates that an attribute is unavailable.
The following are the available OAuth2 scopes for MyInfo APIs
- : NRIC/FIN
- : Partial NRIC/FIN
- : Principal Name
- : Alias Name
- : Hanyu Pinyin Name
- : Hanyu Pinyin Alias Name
- : Married Name
- : Sex
- : Race
- : Secondary Race
- : Dialect
- : Date of Birth
- : Residential Status
- : Nationality/Citizenship
- : Country/Place of Birth
- : Passport Number
- : Passport Expiry Date
- : Pass Type
- : Pass Status
- : Pass Expiry Date
- : Employment Sector
- : Mobile Number
- : Home Contact Number
- : Email Address
- : Registered Address
- : Type of HDB
- : Type of Housing
- : Mailing Address
- : Billing Address
- : Academic Qualifications
- : CPF Account Balance
- : CPF Contribution History (up to 15 months)
- : Employers as stated in CPF Contribution History (up to 15 months)
- : CPF Housing Withdrawal
- : CPF Investment Scheme - Number of Discounted Shares
- : CPF Investment Scheme - Account
- : CPF Investment Scheme - Self-Awareness Questionnaire (SAQ) Participation Status
- : CPF Home Protection Scheme
- : CPF Dependant Protection Scheme
- : Notice of Assessment (Basic, Latest Year)
- : Notice of Assessment (Basic, Last 2 Years)
- : Notice of Assessment (Detailed, Latest Year)
- : Notice of Assessment (Detailed, Last 2 Years)
- : Ownership of Private Residential Property
- : Monthly Household Income
- : Name of Employer
- : Occupation
- : Highest Education Level
- : Name of School Attended
- : Year of Graduation
- : Marital Status
- : Marriage Date
- : Marriage Certificate Number
- : Country of Marriage
- : Divorce Date
- : Children Birth Records - Birth Cert Number
- : Children Birth Records - Name
- : Children Birth Records - Alias Name
- : Children Birth Records - Hanyu Pinyin Name
- : Children Birth Records - Hanyu Pinyin Alias Name
- : Children Birth Records - Married Name
- : Children Birth Records - Sex
- : Children Birth Records - Race
- : Children Birth Records - Secondary Race
- : Children Birth Records - Date of Birth
- : Children Birth Records - Time of Birth
- : Children Birth Records - Dialect
- : Children Birth Records - Life Status
- : Children Birth Records - Vaccination Requirements
- : Sponsored Children Records - NRIC / FIN
- : Sponsored Children Records - Name
- : Sponsored Children Records - Alias Name
- : Sponsored Children Records - Hanyu Pinyin Name
- : Sponsored Children Records - Hanyu Pinyin Alias Name
- : Sponsored Children Records - Married Name
- : Sponsored Children Records - Sex
- : Sponsored Children Records - Race
- : Sponsored Children Records - Secondary Race
- : Sponsored Children Records - Dialect
- : Sponsored Children Records - Date of Birth
- : Sponsored Children Records - Country/Place of Birth
- : Sponsored Children Records - Life Status
- : Sponsored Children Records - Residential Status
- : Sponsored Children Records - Nationality/Citizenship
- : Sponsored Children Records - SC / PR / LTVP Grant Date
- : Sponsored Children Records - Vaccination Requirements
- : Vehicles - Vehicle Number
- : Vehicles - Vehicle Type
- : Vehicles - IU Label Number
- : Vehicles - Vehicle Make
- : Vehicles - Vehicle Model
- : Vehicles - Chassis Number
- : Vehicles - Engine Number
- : Vehicles - Motor Number
- : Vehicles - Year of Manufacture
- : Vehicles - First Registration Date
- : Vehicles - Original Registration Date
- : Vehicles - COE Category
- : Vehicles - COE Expiry Date
- : Vehicles - Road Tax Expiry Date
- : Vehicles - Quota Premium
- : Vehicles - Open Market Value
- : Vehicles - CO2 Emission Rate
- : Vehicles - Vehicle Status
- : Vehicles - Primary Colour
- : Vehicles - Secondary Colour
- : Vehicles - Attachment 1
- : Vehicles - Attachment 2
- : Vehicles - Attachment 3
- : Vehicles - Vehicle Scheme
- : Vehicles - THC Emission Rate
- : Vehicles - CO Emission Rate
- : Vehicles - NOx Emission Rate
- : Vehicles - PM Emission Rate
- : Vehicles - Engine Capacity
- : Vehicles - Power Rate
- : Vehicles - Effective Date/Time of Ownership
- : Vehicles - Propellant
- : Vehicles - Max Unladen Weight
- : Vehicles - Max Laden Weight
- : Vehicles - Minimum PARF Benefit
- : Vehicles - No. of Transfers
- : Vehicles - Vehicle Parking Certificate
- : Driving Licence - Certificate of Merit Status
- : Driving Licence - Total Demerit Points
- : Driving Licence - Suspension Start Date
- : Driving Licence - Suspension End Date
- : Driving Licence - Disqualification Start Date
- : Driving Licence - Disqualification End Date
- : Driving Licence - Revocation Start Date
- : Driving Licence - Revocation End Date
- : Driving Licence - Provisional Driving Licence Validity
- : Driving Licence - Provisional Driving Licence Expiry Date
- : Driving Licence - Provisional Driving Licence Class
- : Driving Licence - Qualified Driving Licence Validity
- : Driving Licence - Qualified Driving Licence Expiry Date
- : Driving Licence - Qualified Driving Licence Class
- : Driving Licence - Photo Card Serial Number
- : HDB Ownership - Number of Owners
- : HDB Ownership - Address
- : HDB Ownership - Type of HDB Dwelling
- : HDB Ownership - Lease Commencement Date
- : HDB Ownership - Term of Lease
- : HDB Ownership - Date of Purchase
- : HDB Ownership - Date of Transfer of Ownership
- : HDB Ownership - Loan Granted
- : HDB Ownership - Original Loan Repayment Period
- : HDB Ownership - Balance Loan Repayment Period
- : HDB Ownership - Outstanding HDB Loan Balance
- : HDB Ownership - Monthly Loan Instalment
- : HDB Ownership - Outstanding Instalment
- : HDB Ownership - Purchase Price
PKI digital signature for server to server calls. See Request Signing for more details.
Identifier of user obtained from 'sub' attribute in access token. May be UINFIN or UUID.
9E9B2260-47B8-455B-89B5-C48F4DB98322Transaction ID from requesting digital services for cross referencing.
Comma separated list of attributes requested. Possible attributes are listed in the scopes of the OAuth2 Security Schema above.
name,hanyupinyinnameUnique ID for your application.
STG-180099999K-TEST01UEN of SaaS partner's client that will be receiving the person data.
180099736HAdd authorization token constructed containing the RSA digital signature of the base string. Refer to https://api.singpass.gov.sg/library/myinfo/developers/tutorial3 on how this token should be generated. Also include the access token (JWT) from /token API in your header prefixed with 'Bearer'.
Note: Only the Bearer token is required when calling Sandbox API.
OK.
Note:
- Response Content-Type will be 'application/jose', which is a JSON object conforming to the JWE standard (https://tools.ietf.org/html/rfc7516).
- Response contents are first signed, then encrypted. In order to access the data, your application should do the following steps in order:
- Decrypt the payload with your application's private key.
- Validate the decrypted payload signature with our public key.
- After doing the above steps, your application will be able to extract the payload in JSON format.
Person instance's details
Unauthorized.
Possible scenarios:
- No security header given (HTTP 'Authorization' header)
- Invalid App ID used. Digital service is not registered with MyInfo
- The timestamp of server is not synchronised. Check timestamp of server.
- The value of the nonce in the authorisation header was deemed to be repeated. Check that the nonce is not re-used
- Ensure HTTP 'Authorization' header to be 'PKI_SIGN'
- Signature incorrect - Verify your signature by using our signature verifier tool and ensure correct key is used to sign the base string.
- Ensure that base string contains all parameters required
- Ensure attributes in base string are separate by comma(,), and not %2C
- Ensure that correct key is used to sign the base string
- Ensure that HTTP call is made with the same query/body parameters used to formulate the base string.
- Ensure the base string contains the following:
- HTTP GET method(in uppercase)
- API (e.g. https://..)
- These parameters: * app_id * nonce * signature * signature_method * timestamp
- The requested 'sub' does not match the identifier of the person who logged in
- Requested attributes do not match the attributes consented by person. This happens if the list of attributes in your request are different from the attributes specified when calling the token API.
Details will be given in the error object returned.
Forbidden
Possible scenarios:
- Incorrect API URL used. Refer to tutorial for the correct API URL(test/production)
- Request contains attributes not allowable for the digital service.
Not Found.
Possible scenarios.
- Missing MyInfo profile due to UIN/FIN accessing his MyInfo account less than a day after SingPass account activation.
Unexpected error. Check response body for actual error.
// function to prepare request for PERSON API
function createPersonRequest(sub, validToken) {
var url = _personApiUrl + "/" + sub + "/";
var cacheCtl = "no-cache";
var method = "GET";
var request = null;
// assemble params for Person API
var strParams = "client_id=" + _clientId +
"&attributes=" + _attributes;
var params = querystring.parse(strParams);
// assemble headers for Person API
var strHeaders = "Cache-Control=" + cacheCtl;
var headers = querystring.parse(strHeaders);
var authHeaders;
// Sign request and add Authorization Headers
authHeaders = generateAuthorizationHeader(
url,
params,
method,
"", // no content type needed for GET
_authLevel,
_clientId,
_privateKeyContent,
_clientSecret
);
if (!_.isEmpty(authHeaders)) {
_.set(headers, "Authorization", authHeaders + ",Bearer " + validToken);
}
else {
// NOTE: include access token in Authorization header as "Bearer " (with space behind)
_.set(headers, "Authorization", "Bearer " + validToken);
}
// invoke person API
var request = restClient.get(url);
// Set headers
if (!_.isUndefined(headers) && !_.isEmpty(headers))
request.set(headers);
// Set Params
if (!_.isUndefined(params) && !_.isEmpty(params))
request.query(params);
return request;
}
{
"partialuinfin": {
"value": "*****111D",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"uinfin": {
"value": "S1111111D",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"name": {
"value": "TAN XIAO HUI",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"hanyupinyinname": {
"value": "CHEN XIAO HUI",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"aliasname": {
"value": "TRICIA TAN XIAO HUI",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"hanyupinyinaliasname": {
"value": "TRICIA CHEN XIAO HUI",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"marriedname": {
"value": "",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"sex": {
"code": "F",
"desc": "FEMALE",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"race": {
"code": "CN",
"desc": "CHINESE",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"secondaryrace": {
"code": "EU",
"desc": "EURASIAN",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"dialect": {
"code": "SG",
"desc": "SWISS GERMAN",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"nationality": {
"code": "SG",
"desc": "SINGAPORE CITIZEN",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"dob": {
"value": "1958-05-17",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"birthcountry": {
"code": "SG",
"desc": "SINGAPORE",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"residentialstatus": {
"code": "C",
"desc": "CITIZEN",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"passportnumber": {
"value": "E35463874W",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"passportexpirydate": {
"value": "2020-01-01",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"regadd": {
"type": "SG",
"block": {
"value": "548"
},
"building": {
"value": ""
},
"floor": {
"value": "09"
},
"unit": {
"value": "128"
},
"street": {
"value": "BEDOK NORTH AVENUE 1"
},
"postal": {
"value": "460548"
},
"country": {
"code": "SG",
"desc": "SINGAPORE"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"housingtype": {
"code": "123",
"desc": "TERRACE HOUSE",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"hdbtype": {
"code": "112",
"desc": "2-ROOM FLAT (HDB)",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"hdbownership": [
{
"noofowners": {
"value": 2
},
"address": {
"type": "SG",
"block": {
"value": "548"
},
"building": {
"value": ""
},
"floor": {
"value": "09"
},
"unit": {
"value": "128"
},
"street": {
"value": "BEDOK NORTH AVENUE 1"
},
"postal": {
"value": "460548"
},
"country": {
"code": "SG",
"desc": "SINGAPORE"
}
},
"hdbtype": {
"code": "112",
"desc": "2-ROOM FLAT (HDB)"
},
"leasecommencementdate": {
"value": "2008-06-13"
},
"termoflease": {
"value": 99
},
"dateofpurchase": {
"value": "2008-06-13"
},
"dateofownershiptransfer": {
"value": "2018-06-13"
},
"loangranted": {
"value": 310000.01
},
"originalloanrepayment": {
"value": 25
},
"balanceloanrepayment": {
"years": {
"value": 2
},
"months": {
"value": 6
}
},
"outstandingloanbalance": {
"value": 50000.01
},
"monthlyloaninstalment": {
"value": 1000.01
},
"outstandinginstalment": {
"value": 1000.01
},
"purchaseprice": {
"value": 1000.01
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
}
],
"ownerprivate": {
"value": false,
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"email": {
"value": "[email protected]",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"mobileno": {
"prefix": {
"value": "+"
},
"areacode": {
"value": "65"
},
"nbr": {
"value": "66132665"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"marital": {
"code": "2",
"desc": "MARRIED",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"marriagecertno": {
"value": "123456789012345",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"countryofmarriage": {
"code": "SG",
"desc": "SINGAPORE",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"marriagedate": {
"value": "2007-01-01",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"divorcedate": {
"value": "",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"childrenbirthrecords": [
{
"birthcertno": {
"value": "S5562882C"
},
"name": {
"value": "Jo Tan Pei Ni"
},
"hanyupinyinname": {
"value": "Cheng Pei Ni"
},
"aliasname": {
"value": ""
},
"hanyupinyinaliasname": {
"value": ""
},
"marriedname": {
"value": ""
},
"sex": {
"code": "F",
"desc": "FEMALE"
},
"race": {
"code": "CN",
"desc": "CHINESE"
},
"secondaryrace": {
"code": "",
"desc": ""
},
"dialect": {
"code": "HK",
"desc": "HOKKIEN"
},
"lifestatus": {
"code": "D",
"desc": "DECEASED"
},
"dob": {
"value": "2011-09-10"
},
"tob": {
"value": "0901"
},
"vaccinationrequirements": [
{
"requirement": {
"code": "1M3D",
"desc": "MINIMUM VACCINATION REQUIREMENT FOR PRESCHOOL"
},
"fulfilled": {
"value": true
}
}
],
"sgcitizenatbirthind": {
"value": "Y"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
}
],
"sponsoredchildrenrecords": [
{
"nric": {
"value": "S5562882C"
},
"name": {
"value": "Jo Tan Pei Ni"
},
"hanyupinyinname": {
"value": "Cheng Pei Ni"
},
"aliasname": {
"value": ""
},
"hanyupinyinaliasname": {
"value": ""
},
"marriedname": {
"value": ""
},
"sex": {
"code": "F",
"desc": "FEMALE"
},
"race": {
"code": "CN",
"desc": "CHINESE"
},
"secondaryrace": {
"code": "",
"desc": ""
},
"dialect": {
"code": "HK",
"desc": "HOKKIEN"
},
"dob": {
"value": "2011-09-10"
},
"birthcountry": {
"code": "SG",
"desc": "SINGAPORE"
},
"lifestatus": {
"code": "A",
"desc": "ALIVE"
},
"residentialstatus": {
"code": "C",
"desc": "Citizen"
},
"nationality": {
"code": "SG",
"desc": "SINGAPORE CITIZEN"
},
"scprgrantdate": {
"value": "2015-06-13"
},
"vaccinationrequirements": [
{
"requirement": {
"code": "1M3D",
"desc": "MINIMUM VACCINATION REQUIREMENT FOR PRESCHOOL"
},
"fulfilled": {
"value": true
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
}
],
"occupation": {
"value": "",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"employment": {
"value": "ALPHA",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"passtype": {
"code": "RPass",
"desc": "Work Permit",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"passstatus": {
"value": "Live",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"passexpirydate": {
"value": "2022-12-31",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"employmentsector": {
"value": "MANUFACTURING",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"vehicles": {
"0": {
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
}
},
"drivinglicence": {
"comstatus": {
"code": "Y",
"desc": "ELIGIBLE"
},
"totaldemeritpoints": {
"value": 0
},
"suspension": {
"startdate": {
"value": ""
},
"enddate": {
"value": ""
}
},
"disqualification": {
"startdate": {
"value": ""
},
"enddate": {
"value": ""
}
},
"revocation": {
"startdate": {
"value": ""
},
"enddate": {
"value": ""
}
},
"pdl": {
"validity": {
"code": "V",
"desc": "VALID"
},
"expirydate": {
"value": "2020-06-15"
},
"classes": [
{
"class": {
"value": "2A"
}
},
{
"class": {
"value": "3A"
}
}
]
},
"qdl": {
"validity": {
"code": "V",
"desc": "VALID"
},
"expirydate": {
"value": "2020-06-15"
},
"classes": [
{
"class": {
"value": "2A"
},
"issuedate": {
"value": "2018-06-06"
}
},
{
"class": {
"value": "3A"
},
"issuedate": {
"value": "2018-06-06"
}
}
]
},
"photocardserialno": {
"value": "115616"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"academicqualifications": {
"transcripts": [
{
"name": {
"value": "SINGAPORE-CAMBRIDGE GENERAL CERTIFICATE OF EDUCATION ORDINARY LEVEL"
},
"yearattained": {
"value": "2018"
},
"results": [
{
"subject": {
"value": "English Language"
},
"level": {
"value": "Ordinary"
},
"grade": {
"value": "A"
},
"subsubject": {
"value": "SPECIAL PAPER"
},
"subgrade": {
"value": "One"
}
}
],
"explanatorynotes": {
"value": "text"
}
}
],
"certificates": [
{
"name": {
"value": "nus.opencert"
},
"content": {
"value": "text"
},
"opencertificate": {
"id": {
"value": 100000000343840
},
"primary": {
"value": true
}
},
"opencertificateindicator": {
"value": true
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"merdekagen": {
"eligibility": {
"value": true
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"pioneergen": {
"eligibility": {
"value": true
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"noa-basic": {
"amount": {
"value": 100000.01
},
"yearofassessment": {
"value": "2018"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"noa": {
"amount": {
"value": 100000.01
},
"yearofassessment": {
"value": "2018"
},
"employment": {
"value": 100000.01
},
"trade": {
"value": 0
},
"rent": {
"value": 0
},
"interest": {
"value": 0
},
"taxclearance": {
"value": "N"
},
"category": {
"value": "ORIGINAL"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"noahistory-basic": {
"noas": [
{
"amount": {
"value": 100000.01
},
"yearofassessment": {
"value": "2018"
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"noahistory": {
"noas": [
{
"amount": {
"value": 100000.01
},
"yearofassessment": {
"value": "2018"
},
"employment": {
"value": 100000.01
},
"trade": {
"value": 0
},
"rent": {
"value": 0
},
"interest": {
"value": 0
},
"taxclearance": {
"value": "N"
},
"category": {
"value": "ORIGINAL"
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfcontributions": {
"history": [
{
"date": {
"value": "2016-12-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2016-11"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2016-12-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2016-12"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2016-12-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2016-12"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-01-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2016-12"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-01-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-01"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-01-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-01"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-02-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-01"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-02-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-02"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-02-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-02"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-03-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-02"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-03-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-03"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-03-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-03"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-04-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-03"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-04-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-04"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-04-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-04"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-05-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-04"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-05-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-05"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-05-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-05"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-06-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-05"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-06-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-06"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-06-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-06"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-07-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-06"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-07-12"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-07"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-07-21"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-07"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-08-01"
},
"amount": {
"value": 500
},
"month": {
"value": "2017-07"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"date": {
"value": "2017-08-12"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-08"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-08-21"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-08"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-09-01"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-08"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-09-12"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-09"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-09-21"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-09"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-10-01"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-09"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-10-12"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-10"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-10-21"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-10"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-11-01"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-10"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-11-12"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-11"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-11-21"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-11"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-12-01"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-11"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-12-12"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-12"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2017-12-21"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-12"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2018-01-01"
},
"amount": {
"value": 750
},
"month": {
"value": "2017-12"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2018-01-12"
},
"amount": {
"value": 750
},
"month": {
"value": "2018-01"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"date": {
"value": "2018-01-21"
},
"amount": {
"value": 750
},
"month": {
"value": "2018-01"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfemployers": {
"history": [
{
"month": {
"value": "2016-11"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2016-12"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2016-12"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2016-12"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-01"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-01"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-01"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-02"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-02"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-02"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-03"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-03"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-03"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-04"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-04"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-04"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-05"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-05"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-05"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-06"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-06"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-06"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-07"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-07"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-07"
},
"employer": {
"value": "Crystal Horse Invest Pte Ltd"
}
},
{
"month": {
"value": "2017-08"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-08"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-08"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-09"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-09"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-09"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-10"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-10"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-10"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-11"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-11"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-11"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-12"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-12"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2017-12"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2018-01"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
},
{
"month": {
"value": "2018-01"
},
"employer": {
"value": "Delta Marine Consultants PL"
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfbalances": {
"ma": {
"value": 11470.71,
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"oa": {
"value": 1581.48,
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"sa": {
"value": 21967.09,
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"ra": {
"value": 0.01,
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfhousingwithdrawal": {
"withdrawaldetails": [
{
"address": {
"type": "SG",
"block": {
"value": "548"
},
"building": {
"value": ""
},
"floor": {
"value": "09"
},
"unit": {
"value": "128"
},
"street": {
"value": "BEDOK NORTH AVENUE 1"
},
"postal": {
"value": "460548"
},
"country": {
"code": "SG",
"desc": "SINGAPORE"
}
},
"accruedinterestamt": {
"value": 1581.48
},
"monthlyinstalmentamt": {
"value": 1196.09
},
"principalwithdrawalamt": {
"value": 2897.01
},
"totalamountofcpfallowedforproperty": {
"value": 10000.01
}
}
],
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfhomeprotectionscheme": {
"coverage": {
"value": true
},
"premium": {
"value": 100.01
},
"shareofcover": {
"value": 20
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfdependantprotectionscheme": {
"coverage": {
"value": true
},
"insurercode": {
"value": "9GEL"
},
"sumassuredamount": {
"value": 70000
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"cpfinvestmentscheme": {
"sdsnetshareholdingqty": {
"value": 1360,
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"account": {
"agentbankcode": {
"value": "OCBC"
},
"invbankacctno": {
"value": "098-26644-4"
},
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
},
"saqparticipationstatus": {
"code": "X",
"desc": "Participated",
"classification": "C",
"source": "1",
"lastupdated": "2019-03-26"
}
}
}Last updated
Was this helpful?