IAM Smart
Hong Kong's eID
General Usage Flow
Anonymous vs Authenticated Flow:
Multi-device user journey
Client ID in x-client-id header.
Client Secret in x-client-secret header.
iAM Smart App display language (case sensitive). Will default to 'en-US' if not specified
en-USPossible values: The device platform and browser combination
PC_BrowserPossible values: Redirect URI after user authorization.
Browser: https URL to your website.
Mobile: Universal link (your-app://) or app scheme.
https://www.yourwebsite.com/callbackSetting the scope is required only in cases where operations are chained, e.g auth + formfilling, auth + signing. By default, the scope is set to the value required for the operation. Requested scope of authorization based on available services. Multiple scopes should be space-separated. Valid scopes are: eidapi_auth, eidapi_profiles, eidapi_formFilling, eidapi_sign, eidapi_fr, eidapi_bulksign
eidapi_auth eidapi_formFilling eidapi_signPattern: ^(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign)(\s+(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign))*$Authentication request successfully initialized. Store the token for subsequent API calls.
Store this token for subsequent API calls
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$Browser: URL to iAM Smart QR page for scanning. Mobile: Universal link to launch iAM Smart app.
https://hk.gov.iamsmart.testapp://auth?clientID=...Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
The authenticated user token from the Authentication workflow
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$The device platform and browser combination
PC_BrowserPossible values: Form filling request successfully initialized. Poll with the returned token to retrieve form data when ready.
Use this token in Poll Data to retrieve form filling results
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
The authenticated user token from the Authentication workflow
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$The device platform and browser combination
PC_BrowserPossible values: Document title displayed to user
Sample Credit Card Application FormSHA-256 hash of the document file's content (64 hex characters)
af8b6f626242f214be360fa7d412e42dacb2f48bc11bb089019a912930019300Pattern: ^[a-f0-9]{64}$Service description to be displayed to user
Digital Signing of Application FormOrganisation name
Fill Easy LimitedSigning request successfully initialized. Poll with the returned token to get signature results.
Use this token in Poll Data to retrieve signing results
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$HKIC check digits for verification
1524Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
The authenticated user token from the Authentication workflow
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$The device platform and browser combination
PC_BrowserPossible values: Document title displayed to user
Landsurvey Purchase FormBase64-encoded hash of the PDF file
R3fJTKFPwkRw019fLk+L19y91DVgI9hy/G7u6+YiECk=Service description to be displayed to user
Digital PDF Signing Powered by Fill EasyHash of HKIC for verification (optional)
^[a-f0-9]{64}$Department name (optional)
PDF signing request successfully initialized. Poll with the returned token to retrieve signed PDF when ready.
Use this token in Poll Data to retrieve PDF signing results
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$HKIC check digits for verification
4303Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
The authenticated user token to re-validate
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$The device platform and browser combination
PC_BrowserPossible values: Re-authentication request successfully initialized. Poll with the returned token to get re-authentication results.
Use this token in Poll Data to check re-authentication status
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
JWT token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$Success
Success
Client ID in x-client-id header.
Client Secret in x-client-secret header.
iAM Smart App display language (case sensitive). Will default to 'en-US' if not specified
en-USPossible values: The device platform and browser combination
PC_BrowserPossible values: Redirect URI after user authorization.
Browser: https URL to your website.
Mobile: Universal link (your-app://) or app scheme.
https://www.yourwebsite.com/callbackSetting the scope is required only in cases where operations are chained, e.g auth + formfilling, auth + signing. By default, the scope is set to the value required for the operation. Requested scope of authorization based on available services. Multiple scopes should be space-separated. Valid scopes are: eidapi_auth, eidapi_profiles, eidapi_formFilling, eidapi_sign, eidapi_fr, eidapi_bulksign
eidapi_auth eidapi_formFilling eidapi_signPattern: ^(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign)(\s+(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign))*$Android activity class (required if source is android)
com.filleasy.app.MainActivityAdditional activity parameters (optional if source is android)
Anonymous form filling request successfully initialized. Redirect user to the URL, then poll with the token to retrieve form data.
JWT token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$URL to redirect user for anonymous form filling
Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
iAM Smart App display language (case sensitive). Will default to 'en-US' if not specified
en-USPossible values: The device platform and browser combination
PC_BrowserPossible values: Redirect URI after user authorization.
Browser: https URL to your website.
Mobile: Universal link (your-app://) or app scheme.
https://www.yourwebsite.com/callbackSetting the scope is required only in cases where operations are chained, e.g auth + formfilling, auth + signing. By default, the scope is set to the value required for the operation. Requested scope of authorization based on available services. Multiple scopes should be space-separated. Valid scopes are: eidapi_auth, eidapi_profiles, eidapi_formFilling, eidapi_sign, eidapi_fr, eidapi_bulksign
eidapi_auth eidapi_formFilling eidapi_signPattern: ^(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign)(\s+(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign))*$Document title
SHA-256 hash of document (64 hex characters)
^[a-f0-9]{64}$Hash of HKIC for verification
^[a-f0-9]{64}$Service description
Organisation name
Anonymous signing request successfully initialized. Redirect user to the URL, then poll with the token to retrieve signature.
JWT token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$URL to redirect user for anonymous signing
HKIC check digits
Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
Client ID in x-client-id header.
Client Secret in x-client-secret header.
iAM Smart App display language (case sensitive). Will default to 'en-US' if not specified
en-USPossible values: The device platform and browser combination
PC_BrowserPossible values: Redirect URI after user authorization.
Browser: https URL to your website.
Mobile: Universal link (your-app://) or app scheme.
https://www.yourwebsite.com/callbackSetting the scope is required only in cases where operations are chained, e.g auth + formfilling, auth + signing. By default, the scope is set to the value required for the operation. Requested scope of authorization based on available services. Multiple scopes should be space-separated. Valid scopes are: eidapi_auth, eidapi_profiles, eidapi_formFilling, eidapi_sign, eidapi_fr, eidapi_bulksign
eidapi_auth eidapi_formFilling eidapi_signPattern: ^(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign)(\s+(eidapi_auth|eidapi_profiles|eidapi_formFilling|eidapi_sign|eidapi_fr|eidapi_bulksign))*$PDF document title
Base64-encoded hash of PDF
Hash of HKIC for verification
^[a-f0-9]{64}$Service description
Successfully initiated anonymous PDF signing request
JWT token
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIn0.dozjgNryP4J3jVmNHl0w5N_XgL0n3I9PlFUP0THsR8UPattern: ^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$Bad Request - Invalid input parameters
Unauthorized - Token is missing, invalid, or expired
Internal Server Error
The iAM Smart service type
authPossible values: Authorization code from iAM Smart (present on success)
a51c81dce74743359c0a1d639369311fError code from iAM Smart (present on failure/rejection)
State parameter used to match the request.
9boB90uhibYcO3FdPp8fWFLmOOCmTVGUH4LdBusiness ID to identify the transaction. Not received if service is auth
HjlSqLBzQARhhHV8O44wQuR0upfiHTjj6ckhSource platform (optional)
Redirect to client application
Bad Request - Missing required parameters or invalid service
No content
Client ID in x-client-id header.
Client Secret in x-client-secret header.
Returns the final result with personal information, encoded in a JWE token.
Result Pending, user has not completed the action
User rejected the request
User rejected the request
Personal data is deleted after 18 minutes / after first successful poll
Last updated

