# MentorActionConfirmation record

> The MentorActionConfirmation record of Novior.MentorAgent.Abstractions.Models: The confirmation of the action that is running: who confirmed it and when, for…

- URL: https://docs.mentoragent.net/api/novior-mentoragent-abstractions-models/mentoractionconfirmation
- Verified with: MentorAgent 1.2.0
- Last updated: 2026-10-27
- Packages: Novior.MentorAgent.Abstractions

The confirmation of the action that is running: who confirmed it and when, for the action's own code — a ledger of the writes, for one. Read [`MentorActionConfirmation.Current`](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-models/mentoractionconfirmation#current) inside the method of a `[MentorAction(RequiresConfirmation = true)]`. More properties may be added.

## Definition

Namespace: `Novior.MentorAgent.Abstractions.Models`. Package: `Novior.MentorAgent.Abstractions`.

`public sealed record MentorActionConfirmation : IEquatable<MentorActionConfirmation>`

```shell
dotnet add package Novior.MentorAgent.Abstractions
```

## Constructors

`public MentorActionConfirmation()`

## Properties

### `ConfirmationId`

`public required Guid ConfirmationId { get; init; }`

The confirmation's id: the [`ConfirmationRequest.ActionId`](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-models/confirmationrequest#actionid) the banner carried, and the [`MentorActionDecision.ConfirmationId`](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-models/mentoractiondecision#confirmationid) of the gate's decisions about this call.

### `ConfirmedAt`

`public required DateTimeOffset ConfirmedAt { get; init; }`

When the user confirmed, in UTC.

### `ConfirmedBy`

`public ClaimsPrincipal? ConfirmedBy { get; init; }`

Who confirmed: the caller of `POST /mentor/approve`; in a circuit and in the MAUI app, the session's signed-in user. `null` when nobody is signed in.

### `Current`

`public static MentorActionConfirmation? Current { get; }`

The confirmation of the action running on this call, or `null` when nobody confirmed it: the action asks for no confirmation, an auto-approval rule let it run (Native mode), or it was called over the MCP server. Set by MentorAgent's gate for the time the action runs, in Blocking and in Native mode alike.

### `ToolName`

`public required string ToolName { get; init; }`

The tool's technical name, as the model called it.

---

- Previous: [ConfirmationRequest record](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-models/confirmationrequest.md)
- Next: [MentorActionCount record](https://docs.mentoragent.net/api/novior-mentoragent-abstractions-models/mentoractioncount.md)
