# IReminderRegistry Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.reminders/orleans.timers.ireminderregistry/)

## GetReminder(GrainId, string) {#getreminder-orleans-runtime-grainid-string-17c70b38}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.reminders/orleans.timers.ireminderregistry/methods/getreminder-orleans-runtime-grainid-string-17c70b38/)

```csharp
public abstract Task<IGrainReminder> GetReminder(GrainId callingGrainId, string reminderName)
```

Gets the reminder with the specified name which is registered to the currently active grain.

### Parameters

- `callingGrainId` (`GrainId`): The ID of the the currently executing grain
- `reminderName` (`string`): The reminder name.

### Returns

The reminder.

## GetReminders(GrainId) {#getreminders-orleans-runtime-grainid-16ad28fd}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.reminders/orleans.timers.ireminderregistry/methods/getreminders-orleans-runtime-grainid-16ad28fd/)

```csharp
public abstract Task<List<IGrainReminder>> GetReminders(GrainId callingGrainId)
```

Gets all reminders which are currently registered to the active grain.

### Parameters

- `callingGrainId` (`GrainId`): The ID of the the currently executing grain

### Returns

All reminders which are currently registered to the active grain.

## RegisterOrUpdateReminder(GrainId, string, TimeSpan, TimeSpan) {#registerorupdatereminder-orleans-runtime-grainid-string-system-timespan-system-t-9cc429fd}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.reminders/orleans.timers.ireminderregistry/methods/registerorupdatereminder-orleans-runtime-grainid-string-system-timespan-system-t-9cc429fd/)

```csharp
public abstract Task<IGrainReminder> RegisterOrUpdateReminder(GrainId callingGrainId, string reminderName, TimeSpan dueTime, TimeSpan period)
```

Register or update the reminder with the specified name for the currently active grain.

### Parameters

- `callingGrainId` (`GrainId`): The ID of the the currently executing grain
- `reminderName` (`string`): The reminder name.
- `dueTime` (`TimeSpan`): The amount of time to delay before initially invoking the reminder.
- `period` (`TimeSpan`): The time interval between invocations of the reminder.

### Returns

The reminder.

## UnregisterReminder(GrainId, IGrainReminder) {#unregisterreminder-orleans-runtime-grainid-orleans-runtime-igrainreminder-b45f5cf2}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.reminders/orleans.timers.ireminderregistry/methods/unregisterreminder-orleans-runtime-grainid-orleans-runtime-igrainreminder-b45f5cf2/)

```csharp
public abstract Task UnregisterReminder(GrainId callingGrainId, IGrainReminder reminder)
```

Unregisters a reminder from the currently active grain.

### Parameters

- `callingGrainId` (`GrainId`): The ID of the the currently executing grain
- `reminder` (`IGrainReminder`): The reminder to unregister.

### Returns

A `System.Threading.Tasks.Task` representing the operation.
