# Create a new Factor for the Entity **POST /v2/Services/{ServiceSid}/Entities/{Identity}/Factors** Create a new Factor for the Entity TODO: Resource-level docs ## Servers ## Parameters ### Path parameters - **ServiceSid** (string) The unique SID identifier of the Service. - **Identity** (string) Customer unique identity for the Entity owner of the Factor. This identifier should be immutable, not PII, length between 8 and 64 characters, and generated by your external system, such as your user's UUID, GUID, or SID. It can only contain dash (-) separated alphanumeric characters. ### Body: (object) - **Binding.Alg** (string) The algorithm used when `factor_type` is `push`. Algorithm supported: `ES256` - **Binding.PublicKey** (string) The Ecdsa public key in PKIX, ASN.1 DER format encoded in Base64. Required when `factor_type` is `push` - **Binding.Secret** (string) The shared secret for TOTP factors encoded in Base32. This can be provided when creating the Factor, otherwise it will be generated. Used when `factor_type` is `totp` - **Config.Alg** (string) The algorithm used to derive the TOTP codes. Can be `sha1`, `sha256` or `sha512`. Defaults to `sha1`. Used when `factor_type` is `totp` - **Config.AppId** (string) The ID that uniquely identifies your app in the Google or Apple store, such as `com.example.myapp`. It can be up to 100 characters long. Required when `factor_type` is `push`. - **Config.CodeLength** (integer) Number of digits for generated TOTP codes. Must be between 3 and 8, inclusive. The default value is defined at the service level in the property `totp.code_length`. If not configured defaults to 6. Used when `factor_type` is `totp` - **Config.NotificationPlatform** (string) The transport technology used to generate the Notification Token. Can be `apn`, `fcm` or `none`. Required when `factor_type` is `push`. - **Config.NotificationToken** (string) For APN, the device token. For FCM, the registration token. It is used to send the push notifications. Must be between 32 and 255 characters long. Required when `factor_type` is `push`. - **Config.SdkVersion** (string) The Verify Push SDK version used to configure the factor Required when `factor_type` is `push` - **Config.Skew** (integer) The number of time-steps, past and future, that are valid for validation of TOTP codes. Must be between 0 and 2, inclusive. The default value is defined at the service level in the property `totp.skew`. If not configured defaults to 1. Used when `factor_type` is `totp` - **Config.TimeStep** (integer) Defines how often, in seconds, are TOTP codes generated. i.e, a new TOTP code is generated every time_step seconds. Must be between 20 and 60 seconds, inclusive. The default value is defined at the service level in the property `totp.time_step`. Defaults to 30 seconds if not configured. Used when `factor_type` is `totp` - **FactorType** (string) The Type of this Factor. Currently `push` and `totp` are supported. - **FriendlyName** (string) The friendly name of this Factor. This can be any string up to 64 characters, meant for humans to distinguish between Factors. For `factor_type` `push`, this could be a device name. For `factor_type` `totp`, this value is used as the “account name” in constructing the `binding.uri` property. At the same time, we recommend avoiding providing PII. - **Metadata** () Custom metadata associated with the factor. This is added by the Device/SDK directly to allow for the inclusion of device information. It must be a stringified JSON with only strings values eg. `{"os": "Android"}`. Can be up to 1024 characters in length. ## Responses ### 201 Created #### Body: (object) - **account_sid** (string | null) Account Sid. - **binding** () Binding of the factor - **config** () Configurations for a `factor_type`. - **date_created** (string(date-time) | null) The date this Factor was created - **date_updated** (string(date-time) | null) The date this Factor was updated - **entity_sid** (string | null) Entity Sid. - **factor_type** (string | null) The Type of this Factor - **friendly_name** (string | null) A human readable description of this resource. - **identity** (null | string) Unique external identifier of the Entity - **metadata** () Metadata of the factor. - **service_sid** (string | null) Service Sid. - **sid** (string | null) A string that uniquely identifies this Factor. - **status** (string | null) The Status of this Factor - **url** (string(uri) | null) The URL of this resource. [Powered by Bump.sh](https://bump.sh)