Docs/Using Plugins/Plugin Setup

Plugin Setup

The first step is creating a Reminder plugin configuration for your agent. The configuration holds the credentials, messaging account, and behavior settings used for all reminder items under this instance.

Navigate to Actions → Plugins in the agent sidebar, click Create New Plugin, and select Reminder.


Configuration Fields

FieldDescription
NameA label for this plugin instance. Used to identify it in the admin panel.
Notification KeyThe API key from CMS that authorizes the plugin to send notification templates on behalf of your agent.
Account CodeThe messaging account (e.g., WhatsApp) through which reminders are delivered.
Default ToneThe tone the AI uses when composing reminder content. Default is polite.
Webhook URLOptional. An external URL that receives an HTTP POST after each reminder delivery. See Webhook Notifications.

Generated Credentials

When the configuration is saved, three credentials are generated automatically:

CredentialPurpose
SecretUsed by the Dialog service to authenticate AI-triggered reminder creation.
Primary KeyUsed by external systems to authenticate Integration API calls.
Secondary KeyA backup key for the Integration API. Useful for key rotation without downtime.

Store these credentials securely. They are shown once on creation and can be regenerated later, but regenerating a key invalidates all existing callers using it.


Refreshing Integration Keys

If a key is compromised or you need to rotate credentials, you can refresh each key independently.

Refresh both keys at once:

POST /api/reminder/configuration/{agentId}/{configurationId}/refresh-keys

Refresh a single key:

POST /api/reminder/configuration/{agentId}/{configurationId}/refresh-keys?keyType=primary
POST /api/reminder/configuration/{agentId}/{configurationId}/refresh-keys?keyType=secondary

The response includes the new key value. All existing Integration API callers using the old key must be updated immediately after a refresh.


Updating the Notification Key

If your CMS notification key changes, update it without recreating the entire configuration:

PUT /api/reminder/configuration/notification-key

Request body:

FieldDescription
notificationKeyThe new notification key from CMS.
accountCodeOptional. Update the messaging account code at the same time.

Generating a Function Name with AI

The Generate Function Name feature uses AI to suggest a function identifier based on a description of your plugin's purpose. This name is used when exposing the plugin to the AI as a callable tool.

POST /api/reminder/configuration/generate-function-name

Request body:

{
  "description": "Schedule appointment reminders for clinic patients"
}

Response:

{
  "functionName": "schedule_appointment_reminder"
}

Use this name in your AI function tool settings. See AI Function Tool.


Server State

Each configuration has a Server State that controls whether reminder delivery is active. The state is either running or paused.

  • While paused, the background processor skips all reminders belonging to this configuration.
  • While running, pending reminders are delivered on schedule.

To update the state:

PUT /api/reminder/configuration/{agentId}/{configurationId}/server-state

Request body:

{
  "serverState": "paused"
}

Every state change is recorded in an audit log with a timestamp and the identity of the user who made the change. The last 10 state changes are retained.