# IReportingTask Methods

- Package: [Aspire.Hosting](/reference/api/csharp/aspire.hosting.md)
- Type: [IReportingTask](/reference/api/csharp/aspire.hosting/ireportingtask.md)
- Kind: `Methods`
- Members: `4`

Represents a publishing task, which belongs to a step.

## CompleteAsync(string?, CompletionState, CancellationToken)

- Name: `CompleteAsync(string?, CompletionState, CancellationToken)`
- Modifiers: `abstract`
- Returns: `Task`

Completes the task with the specified completion message.

```csharp
public interface IReportingTask
{
    public abstract Task CompleteAsync(
        string? completionMessage = null,
        CompletionState completionState = CompletionState.Completed,
        CancellationToken cancellationToken = default(CancellationToken))
    {
        // ...
    }
}
```

## Parameters

- `completionMessage` (`string?`) `optional`
  Optional completion message that will appear as a dimmed child message.
- `completionState` ([CompletionState](/reference/api/csharp/aspire.hosting/completionstate.md)) `optional`
  The completion state of the task.
- `cancellationToken` (`CancellationToken`) `optional`
  The cancellation token.

## CompleteAsync(MarkdownString, CompletionState, CancellationToken)

- Name: `CompleteAsync(MarkdownString, CompletionState, CancellationToken)`
- Modifiers: `abstract`
- Returns: `Task`

Completes the task with a Markdown-formatted completion message.

```csharp
public interface IReportingTask
{
    public abstract Task CompleteAsync(
        MarkdownString completionMessage,
        CompletionState completionState = CompletionState.Completed,
        CancellationToken cancellationToken = default(CancellationToken))
    {
        // ...
    }
}
```

## Parameters

- `completionMessage` ([MarkdownString](/reference/api/csharp/aspire.hosting/markdownstring.md))
  The Markdown-formatted completion message that will appear as a dimmed child message.
- `completionState` ([CompletionState](/reference/api/csharp/aspire.hosting/completionstate.md)) `optional`
  The completion state of the task.
- `cancellationToken` (`CancellationToken`) `optional`
  The cancellation token.

## UpdateAsync(string, CancellationToken)

- Name: `UpdateAsync(string, CancellationToken)`
- Modifiers: `abstract`
- Returns: `Task`

Updates the status text of this task.

```csharp
public interface IReportingTask
{
    public abstract Task UpdateAsync(
        string statusText,
        CancellationToken cancellationToken = default(CancellationToken))
    {
        // ...
    }
}
```

## Parameters

- `statusText` (`string`)
  The new status text.
- `cancellationToken` (`CancellationToken`) `optional`
  The cancellation token.

## UpdateAsync(MarkdownString, CancellationToken)

- Name: `UpdateAsync(MarkdownString, CancellationToken)`
- Modifiers: `abstract`
- Returns: `Task`

Updates the status text of this task with Markdown-formatted text.

```csharp
public interface IReportingTask
{
    public abstract Task UpdateAsync(
        MarkdownString statusText,
        CancellationToken cancellationToken = default(CancellationToken))
    {
        // ...
    }
}
```

## Parameters

- `statusText` ([MarkdownString](/reference/api/csharp/aspire.hosting/markdownstring.md))
  The new Markdown-formatted status text.
- `cancellationToken` (`CancellationToken`) `optional`
  The cancellation token.
