---
title: "Interface IRealtimeRequest"
slug: "sdk--stylelabs.m.sdk.contracts.notifications.irealtimerequest"
abstract: ""
---
# Interface IRealtimeRequest

Interface for real-time notification requests.

## Namespace: StylelabsStylelabs.MSdkStylelabs.M.Sdk.ContractsNotifications

## Assembly: Stylelabs.M.Sdk.dll

## Syntax

```csharp
public interface IRealtimeRequest
```

## Properties

### [Link](https://doc.sitecore.com/ch/en/developers/api-reference/web-sdk--stylelabs.m.base.web.api.models.link.html)

Gets or sets the target when the notification is clicked.

> [!note]
> For security reasons, external URLs cannot be included in real-time notification requests.

#### Declaration

```csharp
Uri Link { get; set; }
```

#### Property Value

| Type | Description |
| --- | --- |
| Uri |  |

### [NotificationLevel](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.models.notifications.notificationlevel.html)

Gets or sets the notification level.

#### Declaration

```csharp
NotificationLevel NotificationLevel { get; set; }
```

#### Property Value

| Type | Description |
| --- | --- |
| [NotificationLevel](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.models.notifications.notificationlevel.html) |  |

### Options

Gets or sets the notification options. This directly maps to the notification API standard used by browsers. See [https://developer.mozilla.org/en-US/docs/Web/API/notification](https://developer.mozilla.org/en-US/docs/Web/API/notification) for more information.

#### Declaration

```csharp
JObject Options { get; set; }
```

#### Property Value

| Type | Description |
| --- | --- |
| JObject |  |

### Title

Gets or sets the title of the notification.

#### Declaration

```csharp
string Title { get; set; }
```

#### Property Value

| Type | Description |
| --- | --- |
| string |  |

## Methods

### GetBody()

Gets the notification body from the [Options](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.notifications.irealtimerequest.html) object.

#### Declaration

```csharp
string GetBody()
```

#### Returns

| Type | Description |
| --- | --- |
| string | The notification body. |

### GetIcon()

Gets the notification icon from the [Options](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.notifications.irealtimerequest.html) object.

#### Declaration

```csharp
string GetIcon()
```

#### Returns

| Type | Description |
| --- | --- |
| string | The notification icon. |

### SetBody(string)

Sets the notification body on the [Options](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.notifications.irealtimerequest.html) object.

#### Declaration

```csharp
void SetBody(string body)
```

#### Parameters

| Type | Name | Description |
| --- | --- | --- |
| string | body | The notification body. |

### SetIcon(string)

Sets the notification icon on the [Options](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.contracts.notifications.irealtimerequest.html) object.

#### Declaration

```csharp
void SetIcon(string icon)
```

#### Parameters

| Type | Name | Description |
| --- | --- | --- |
| string | icon | The notification icon. |

### Validate()

Validates the real-time request.

#### Declaration

```csharp
void Validate()
```

#### Exceptions

| Type | Condition |
| --- | --- |
| [ValidationException](https://doc.sitecore.com/ch/en/developers/api-reference/sdk--stylelabs.m.sdk.exceptions.validationexception.html) | When the request has invalid properties. |
