IDNGovernment ยท GovTech Singapore

Myinfo (Singpass Verified Data)

Government-verified personal data (name, NRIC, address, income, CPF history and more) retrieved with user consent through Singpass. Kills manual form-filling and KYC document uploads.

How to authenticate

4 stops to a working call

  1. 1Review the Myinfo developer library at api.singpass.gov.sg/library/myinfo/developers/overview.
  2. 2Apply via the Singpass Developer Portal with your use case; approval gates which data attributes you may request.
  3. 3Implement the consent flow (authorise, token, person endpoints) against the sandbox/test environment.
  4. 4Pass security and integration review before production credentials are issued.

Example request

Request
curl -H 'Authorization: Bearer ACCESS_TOKEN' 'https://api.singpass.gov.sg/.../myinfo/v4/person/{uinfin}/?scope=name+regadd'

Example response

Response (truncated)
{"name":{"value":"TAN AH KOW"},"regadd":{"block":{"value":"102"},"street":{"value":"BEDOK NORTH AVENUE 4"},"postal":{"value":"460102"}}}

Myinfo (Singpass Verified Data): common questions

Is the Myinfo (Singpass Verified Data) free?

The Myinfo (Singpass Verified Data) is listed as contact. Check the official GovTech Singapore docs for current pricing.

Does the Myinfo (Singpass Verified Data) need an API key?

Yes. It uses Restricted. Review the Myinfo developer library at api.singpass.gov.sg/library/myinfo/developers/overview. Apply via the Singpass Developer Portal with your use case; approval gates which data attributes you may request. Implement the consent flow (authorise, token, person endpoints) against the sandbox/test environment. Pass security and integration review before production credentials are issued.

What is the Myinfo (Singpass Verified Data) endpoint?

The base URL is https://api.singpass.gov.sg. A working example: curl -H 'Authorization: Bearer ACCESS_TOKEN' 'https://api.singpass.gov.sg/.../myinfo/v4/person/{uinfin}/?scope=name+regadd'

Notes for AI agents

Restricted like Singpass Login; v4 uses ephemeral key DPoP and encrypted payloads (JWE), meaningfully harder than a plain OAuth2 API. A public sandbox exists for trying the flow before onboarding.

Machine-readable version: /api/apis/myinfo

On the same line