1# @ohos.userIAM.faceAuth (Facial Authentication) (System API) 2 3The **userIAM.faceAuth** module provides APIs for face enrollment. 4 5> **NOTE** 6> 7> - The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version. 8> 9> - The APIs provided by this module are system APIs. 10 11## Modules to Import 12 13```ts 14import { faceAuth } from '@kit.UserAuthenticationKit'; 15``` 16 17## FaceAuthManager 18 19Provides APIs for facial authentication management. 20 21### constructor 22 23constructor() 24 25A constructor used to create a **FaceAuthManager** object. 26 27**System capability**: SystemCapability.UserIAM.UserAuth.FaceAuth 28 29**System API**: This is a system API. 30 31**Return value** 32 33| Type | Description | 34| ---------------------- | -------------------- | 35| [FaceAuthManager](#faceauthmanager) | **FaceAuthManager** object.| 36 37**Example** 38 39```ts 40import { faceAuth } from '@kit.UserAuthenticationKit'; 41 42let faceAuthManager = new faceAuth.FaceAuthManager(); 43``` 44 45### setSurfaceId 46 47setSurfaceId(surfaceId: string): void; 48 49Sets an [XComponent surface ID](../apis-arkui/arkui-ts/ts-basic-components-xcomponent.md#getxcomponentsurfaceid) for the face preview page in the face enrollment process. This API must be used with [addCredential](../apis-basic-services-kit/js-apis-osAccount-sys.md#addcredential8). 50 51**System capability**: SystemCapability.UserIAM.UserAuth.FaceAuth 52 53**System API**: This is a system API. 54 55**Required permissions**: ohos.permission.MANAGE_USER_IDM 56 57**Parameters** 58 59| Name | Type | Mandatory | Description | 60| -------------- | ---------------------------------- | ---- | -------------------------- | 61| surfaceId | string | Yes | ID of the surface held by [XComponent](../apis-arkui/arkui-ts/ts-basic-components-xcomponent.md#getxcomponentsurfaceid). | 62 63For details about the error codes, see [User Authentication Error Codes](errorcode-useriam.md). 64 65**Error codes** 66 67| ID | Error Message | 68| -------- | ------- | 69| 201 | Permission verification failed. | 70| 202 | The caller is not a system application. | 71| 12700001 | Operation failed. | 72 73**Example** 74 75```ts 76import { faceAuth } from '@kit.UserAuthenticationKit'; 77 78// The surfaceId is obtained from the XComponent control. The surfaceId here is only an example. 79let surfaceId = '123456'; 80let manager = new faceAuth.FaceAuthManager(); 81try { 82 manager.setSurfaceId(surfaceId); 83 console.info('set surface id success'); 84} catch (error) { 85 console.error('set surface id failed, error = ' + error); 86} 87``` 88