---
title: HotpModule
description: Resource path:
component: pingam
version: 8.1
page_id: pingam:entity-reference:sec-amster-entity-hotpmodule
canonical_url: https://docs.pingidentity.com/pingam/8.1/entity-reference/sec-amster-entity-hotpmodule.html
section_ids:
  sec-amster-entity-hotpmodule-realm-ops: Realm Operations
  sec-amster-entity-hotpmodule-realm-ops-create: create
  sec-amster-entity-hotpmodule-realm-ops-delete: delete
  sec-amster-entity-hotpmodule-realm-ops-getalltypes: getAllTypes
  sec-amster-entity-hotpmodule-realm-ops-getcreatabletypes: getCreatableTypes
  sec-amster-entity-hotpmodule-realm-ops-nextdescendents: nextdescendents
  sec-amster-entity-hotpmodule-realm-ops-query: query
  sec-amster-entity-hotpmodule-realm-ops-read: read
  sec-amster-entity-hotpmodule-realm-ops-update: update
  sec-amster-entity-hotpmodule-global-ops: Global Operations
  sec-amster-entity-hotpmodule-global-ops-getalltypes: getAllTypes
  sec-amster-entity-hotpmodule-global-ops-getcreatabletypes: getCreatableTypes
  sec-amster-entity-hotpmodule-global-ops-nextdescendents: nextdescendents
  sec-amster-entity-hotpmodule-global-ops-read: read
  sec-amster-entity-hotpmodule-global-ops-update: update
---

# HotpModule

## Realm Operations

Resource path:

```
/realm-config/authentication/modules/hotp
```

Resource version: `0.0`

### create

**Usage**

```
am> create HotpModule --realm Realm --id id --body body
```

**Parameters**

* *\--id*

  The unique identifier for the resource.

* *\--body*

  The resource in JSON format, described by the following JSON schema:

  ```json
  {
    "type" : "object",
    "properties" : {
      "authenticationLevel" : {
        "title" : "Authentication Level",
        "description" : "The authentication level associated with this module.<br><br>Each authentication module has an authentication level that can be used to indicate the level of security associated with the module; 0 is the lowest (and the default).",
        "propertyOrder" : 100,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "userProfileEmailAttribute" : {
        "title" : "Email Attribute Name",
        "description" : "This is the attribute name used by the OTP to email the user",
        "propertyOrder" : 1400,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "otpValidityDuration" : {
        "title" : "One Time Password Validity Length",
        "description" : "This One Time Password will remain valid for this period (in minutes)",
        "propertyOrder" : 900,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "smsGatewayClass" : {
        "title" : "SMS Gateway Implementation Class",
        "description" : "The HOTP authentication module uses this class to send SMS messages.<br><br>The SMS gateway class must implement the following interface<br/><br/><code>com.sun.identity.authentication.modules.hotp.SMSGateway</code>",
        "propertyOrder" : 200,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpSslEnabled" : {
        "title" : "Mail Server Secure Connection ",
        "description" : "This setting controls whether the authentication module communicates with the mail server using SSL/TLS",
        "propertyOrder" : 700,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpUserPassword" : {
        "title" : "Mail Server Authentication Password",
        "description" : "The password to use if the mail server is using SMTP authentication",
        "propertyOrder" : 600,
        "required" : true,
        "type" : "string",
        "format" : "password",
        "exampleValue" : ""
      },
      "smtpHostname" : {
        "title" : "Mail Server Host Name",
        "description" : "The name of the mail server; OpenAM will use SMTP to send the messages.",
        "propertyOrder" : 300,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "otpLength" : {
        "title" : "One Time Password Length ",
        "description" : "The length of the generated One Time Password (in digits)",
        "propertyOrder" : 1000,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "autoSendOTP" : {
        "title" : "Auto Send OTP Code",
        "description" : "Select this checkbox if the OTP should be sent automatically",
        "propertyOrder" : 1500,
        "required" : true,
        "type" : "boolean",
        "exampleValue" : ""
      },
      "smtpUsername" : {
        "title" : "Mail Server Authentication Username",
        "description" : "The username to use if the mail server is using SMTP authentication",
        "propertyOrder" : 500,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "otpMaxRetry" : {
        "title" : "One Time Password Max Retry",
        "description" : "The number of times entry of the OTP may be attempted. Minimum is 1 maximum is 10 and default is 3.",
        "propertyOrder" : null,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "userProfileTelephoneAttribute" : {
        "title" : "Mobile Phone Number Attribute Name",
        "description" : "This is the attribute name used for a requested text message",
        "propertyOrder" : 1200,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpFromAddress" : {
        "title" : "Email From Address",
        "description" : "Emails from the HOTP Authentication module will come from this address.",
        "propertyOrder" : 800,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "mobileCarrierAttribute" : {
        "title" : "Mobile Carrier Attribute Name",
        "description" : "This is the attribute name used for a mobile carrier domain for sending SMS messages",
        "propertyOrder" : 1300,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpHostPort" : {
        "title" : "Mail Server Host Port",
        "description" : "The port of the mail server.<br><br>The default port for SMTP is 25, if using SSL the default port is 465.",
        "propertyOrder" : 400,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "otpDeliveryMethod" : {
        "title" : "One Time Password Delivery",
        "description" : "The mechanism used to deliver the One Time Password",
        "propertyOrder" : 1100,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      }
    }
  }
  ```

### delete

**Usage**

```
am> delete HotpModule --realm Realm --id id
```

**Parameters**

* *\--id*

  The unique identifier for the resource.

### getAllTypes

Obtain the collection of all secondary configuration types related to the resource.

**Usage**

```
am> action HotpModule --realm Realm --actionName getAllTypes
```

### getCreatableTypes

Obtain the collection of secondary configuration types that have yet to be added to the resource.

**Usage**

```
am> action HotpModule --realm Realm --actionName getCreatableTypes
```

### nextdescendents

Obtain the collection of secondary configuration instances that have been added to the resource.

**Usage**

```
am> action HotpModule --realm Realm --actionName nextdescendents
```

### query

Get the full list of instances of this collection. This query only supports `_queryFilter=true` filter.

**Usage**

```
am> query HotpModule --realm Realm --filter filter
```

**Parameters**

* *\--filter*

  A CREST formatted query filter, where "true" will query all.

### read

**Usage**

```
am> read HotpModule --realm Realm --id id
```

**Parameters**

* *\--id*

  The unique identifier for the resource.

### update

**Usage**

```
am> update HotpModule --realm Realm --id id --body body
```

**Parameters**

* *\--id*

  The unique identifier for the resource.

* *\--body*

  The resource in JSON format, described by the following JSON schema:

  ```json
  {
    "type" : "object",
    "properties" : {
      "authenticationLevel" : {
        "title" : "Authentication Level",
        "description" : "The authentication level associated with this module.<br><br>Each authentication module has an authentication level that can be used to indicate the level of security associated with the module; 0 is the lowest (and the default).",
        "propertyOrder" : 100,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "userProfileEmailAttribute" : {
        "title" : "Email Attribute Name",
        "description" : "This is the attribute name used by the OTP to email the user",
        "propertyOrder" : 1400,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "otpValidityDuration" : {
        "title" : "One Time Password Validity Length",
        "description" : "This One Time Password will remain valid for this period (in minutes)",
        "propertyOrder" : 900,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "smsGatewayClass" : {
        "title" : "SMS Gateway Implementation Class",
        "description" : "The HOTP authentication module uses this class to send SMS messages.<br><br>The SMS gateway class must implement the following interface<br/><br/><code>com.sun.identity.authentication.modules.hotp.SMSGateway</code>",
        "propertyOrder" : 200,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpSslEnabled" : {
        "title" : "Mail Server Secure Connection ",
        "description" : "This setting controls whether the authentication module communicates with the mail server using SSL/TLS",
        "propertyOrder" : 700,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpUserPassword" : {
        "title" : "Mail Server Authentication Password",
        "description" : "The password to use if the mail server is using SMTP authentication",
        "propertyOrder" : 600,
        "required" : true,
        "type" : "string",
        "format" : "password",
        "exampleValue" : ""
      },
      "smtpHostname" : {
        "title" : "Mail Server Host Name",
        "description" : "The name of the mail server; OpenAM will use SMTP to send the messages.",
        "propertyOrder" : 300,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "otpLength" : {
        "title" : "One Time Password Length ",
        "description" : "The length of the generated One Time Password (in digits)",
        "propertyOrder" : 1000,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "autoSendOTP" : {
        "title" : "Auto Send OTP Code",
        "description" : "Select this checkbox if the OTP should be sent automatically",
        "propertyOrder" : 1500,
        "required" : true,
        "type" : "boolean",
        "exampleValue" : ""
      },
      "smtpUsername" : {
        "title" : "Mail Server Authentication Username",
        "description" : "The username to use if the mail server is using SMTP authentication",
        "propertyOrder" : 500,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "otpMaxRetry" : {
        "title" : "One Time Password Max Retry",
        "description" : "The number of times entry of the OTP may be attempted. Minimum is 1 maximum is 10 and default is 3.",
        "propertyOrder" : null,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "userProfileTelephoneAttribute" : {
        "title" : "Mobile Phone Number Attribute Name",
        "description" : "This is the attribute name used for a requested text message",
        "propertyOrder" : 1200,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpFromAddress" : {
        "title" : "Email From Address",
        "description" : "Emails from the HOTP Authentication module will come from this address.",
        "propertyOrder" : 800,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "mobileCarrierAttribute" : {
        "title" : "Mobile Carrier Attribute Name",
        "description" : "This is the attribute name used for a mobile carrier domain for sending SMS messages",
        "propertyOrder" : 1300,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      },
      "smtpHostPort" : {
        "title" : "Mail Server Host Port",
        "description" : "The port of the mail server.<br><br>The default port for SMTP is 25, if using SSL the default port is 465.",
        "propertyOrder" : 400,
        "required" : true,
        "type" : "integer",
        "exampleValue" : ""
      },
      "otpDeliveryMethod" : {
        "title" : "One Time Password Delivery",
        "description" : "The mechanism used to deliver the One Time Password",
        "propertyOrder" : 1100,
        "required" : true,
        "type" : "string",
        "exampleValue" : ""
      }
    }
  }
  ```

## Global Operations

Resource path:

```
/global-config/authentication/modules/hotp
```

Resource version: `1.0`

### getAllTypes

Obtain the collection of all secondary configuration types related to the resource.

**Usage**

```
am> action HotpModule --global --actionName getAllTypes
```

### getCreatableTypes

Obtain the collection of secondary configuration types that have yet to be added to the resource.

**Usage**

```
am> action HotpModule --global --actionName getCreatableTypes
```

### nextdescendents

Obtain the collection of secondary configuration instances that have been added to the resource.

**Usage**

```
am> action HotpModule --global --actionName nextdescendents
```

### read

**Usage**

```
am> read HotpModule --global
```

### update

**Usage**

```
am> update HotpModule --global --body body
```

**Parameters**

* *\--body*

  The resource in JSON format, described by the following JSON schema:

  ```json
  {
    "type" : "object",
    "properties" : {
      "defaults" : {
        "properties" : {
          "otpMaxRetry" : {
            "title" : "One Time Password Max Retry",
            "description" : "The number of times entry of the OTP may be attempted. Minimum is 1 maximum is 10 and default is 3.",
            "propertyOrder" : null,
            "required" : true,
            "type" : "integer",
            "exampleValue" : ""
          },
          "smtpUsername" : {
            "title" : "Mail Server Authentication Username",
            "description" : "The username to use if the mail server is using SMTP authentication",
            "propertyOrder" : 500,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "userProfileTelephoneAttribute" : {
            "title" : "Mobile Phone Number Attribute Name",
            "description" : "This is the attribute name used for a requested text message",
            "propertyOrder" : 1200,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "smtpSslEnabled" : {
            "title" : "Mail Server Secure Connection ",
            "description" : "This setting controls whether the authentication module communicates with the mail server using SSL/TLS",
            "propertyOrder" : 700,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "otpLength" : {
            "title" : "One Time Password Length ",
            "description" : "The length of the generated One Time Password (in digits)",
            "propertyOrder" : 1000,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "authenticationLevel" : {
            "title" : "Authentication Level",
            "description" : "The authentication level associated with this module.<br><br>Each authentication module has an authentication level that can be used to indicate the level of security associated with the module; 0 is the lowest (and the default).",
            "propertyOrder" : 100,
            "required" : true,
            "type" : "integer",
            "exampleValue" : ""
          },
          "smtpHostname" : {
            "title" : "Mail Server Host Name",
            "description" : "The name of the mail server; OpenAM will use SMTP to send the messages.",
            "propertyOrder" : 300,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "autoSendOTP" : {
            "title" : "Auto Send OTP Code",
            "description" : "Select this checkbox if the OTP should be sent automatically",
            "propertyOrder" : 1500,
            "required" : true,
            "type" : "boolean",
            "exampleValue" : ""
          },
          "mobileCarrierAttribute" : {
            "title" : "Mobile Carrier Attribute Name",
            "description" : "This is the attribute name used for a mobile carrier domain for sending SMS messages",
            "propertyOrder" : 1300,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "smsGatewayClass" : {
            "title" : "SMS Gateway Implementation Class",
            "description" : "The HOTP authentication module uses this class to send SMS messages.<br><br>The SMS gateway class must implement the following interface<br/><br/><code>com.sun.identity.authentication.modules.hotp.SMSGateway</code>",
            "propertyOrder" : 200,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "otpValidityDuration" : {
            "title" : "One Time Password Validity Length",
            "description" : "This One Time Password will remain valid for this period (in minutes)",
            "propertyOrder" : 900,
            "required" : true,
            "type" : "integer",
            "exampleValue" : ""
          },
          "smtpHostPort" : {
            "title" : "Mail Server Host Port",
            "description" : "The port of the mail server.<br><br>The default port for SMTP is 25, if using SSL the default port is 465.",
            "propertyOrder" : 400,
            "required" : true,
            "type" : "integer",
            "exampleValue" : ""
          },
          "userProfileEmailAttribute" : {
            "title" : "Email Attribute Name",
            "description" : "This is the attribute name used by the OTP to email the user",
            "propertyOrder" : 1400,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "smtpUserPassword" : {
            "title" : "Mail Server Authentication Password",
            "description" : "The password to use if the mail server is using SMTP authentication",
            "propertyOrder" : 600,
            "required" : true,
            "type" : "string",
            "format" : "password",
            "exampleValue" : ""
          },
          "otpDeliveryMethod" : {
            "title" : "One Time Password Delivery",
            "description" : "The mechanism used to deliver the One Time Password",
            "propertyOrder" : 1100,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          },
          "smtpFromAddress" : {
            "title" : "Email From Address",
            "description" : "Emails from the HOTP Authentication module will come from this address.",
            "propertyOrder" : 800,
            "required" : true,
            "type" : "string",
            "exampleValue" : ""
          }
        },
        "type" : "object",
        "title" : "Realm Defaults"
      }
    }
  }
  ```
