# Teaser API

## Get List Teaser Management

<mark style="color:$success;">`GET`</mark> \[server] /dolphin/apiv1/graph/teaser

This API is used to retrieve the list of all available teasers.

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
  "status": "success",
  "data": [
    {
      "id": "[teaser_id]",
      "spell": [
        "[title]",
        "Saat ini terjadi kendala pembelian atau pendaftaran voucher internet. Kendala ini sedang dalam penanganan. Mohon ditunggu ya."
      ],
      "owner": "[system_id]",
      "createdDate": 1757412141056,
      "createdBy": "[user/system_id]",
      "modifiedDate": 1757412141056,
      "modifiedBy": "[user/system_id]",
      "partial": null,
      "category": "Alert",
      "title": "[title]",
      "description": "Saat ini terjadi kendala pembelian atau pendaftaran voucher internet. Kendala ini sedang dalam penanganan. Mohon ditunggu ya.",
      "channels": [
        "9f4b9d9764adc4541978abdca27fb38d"
      ],
      "status": "active",
      "pictureLink": "null",
      "picturePublicLink": null,
      "iconLink": null,
      "iconPublicLink": null,
      "publishedDateInfo": 1757412141056,
      "publishedDate": null,
      "publishedEndDate": null,
      "color": "#FDB934",
      "showDialog": false,
      "dialogMessage": null,
      "dialogTimeout": 0,
      "dialogTheme": null,
      "deleted": null,
      "name": "1",
      "popupBannerTimeout": 5
    }
  ]
}
```

{% endtab %}

{% tab title="401" %}

```json
{
  "status": 401, 
  "title": "Invalid token", 
  "message": "Last unit does not have enough valid bits", 
  "path": "/dolphin/apiv1/graph/teaser" 
}
```

{% endtab %}
{% endtabs %}

This is explanation about component body response field:

<table><thead><tr><th width="341.5">Name</th><th>Description </th></tr></thead><tbody><tr><td>status</td><td>Indicates the result of the request contained in the request body.</td></tr><tr><td>data</td><td>Indicates the array list of teaser data.</td></tr><tr><td>id</td><td>Indicates the unique identifier for each teaser. </td></tr><tr><td>spell</td><td>Teaser title and body.</td></tr><tr><td>owner</td><td>ID of the owner who created the teaser.</td></tr><tr><td>createdDate</td><td>Creation timestamp in millisecond.</td></tr><tr><td>createdBy</td><td>User ID of the creator. </td></tr><tr><td>modifiedDate</td><td>Last modified timestamp in milliseconds.</td></tr><tr><td>modifiedBy</td><td>User ID of the last person who modified the template.</td></tr><tr><td>partial</td><td>If set to true, it means that only specific fields are being updated, not the entire data. </td></tr><tr><td>hash</td><td>A unique value that serves as an identifier to ensure that the data remains<br>unchanged.</td></tr><tr><td>category</td><td>Teaser category. </td></tr><tr><td>title</td><td>Represents the teaser header that will be<br>displayed. </td></tr><tr><td>description</td><td>Description of teaser.<br><br><strong>Note:</strong><br>Max. 350 character </td></tr><tr><td>channels</td><td>List of channel IDs the teaser attached.</td></tr><tr><td>status</td><td>Status of the teaser.</td></tr><tr><td>pictureLink</td><td><p>Internal link to picture asset.</p><p></p><p><strong>Note:</strong><br>The image ratio for the pop-up banner is 5:2</p></td></tr><tr><td>picturePublicLink</td><td>Public URL to the picture.</td></tr><tr><td>iconLink</td><td>Internal link to icon asset.</td></tr><tr><td>iconPublicLink</td><td>Public url to the icon.</td></tr><tr><td>publishDateInfo</td><td>Indicates date when the teaser published. </td></tr><tr><td>publishedDate</td><td>Indicates the start date when teaser will be activated.</td></tr><tr><td>publishedEndDate</td><td>Indicates the start date when teaser will be deactivated.</td></tr><tr><td>color</td><td>Theme color used for teaser display.</td></tr><tr><td>showDialog</td><td>To show a pop up notification upon the<br>consumer closing the teaser.</td></tr><tr><td>dialogMessage</td><td>Message to show in the dialog (if enabled).</td></tr><tr><td>dialogTimeout</td><td>Timeout duration for dialog.</td></tr><tr><td>dialogTheme</td><td>Theme color used for dialog teaser display.</td></tr><tr><td>deleted</td><td>Indicates this teaser already deleted or not (soft delete from UI).</td></tr><tr><td>name</td><td>It represents the teaser name that serves as a unique name or identifier for the teaser within the system.</td></tr><tr><td>popupBannerTimeout</td><td>Indicates the duration (in seconds) that<br>determines how long a popup banner will be displayed on the screen before the user clicks the ‘Lanjut Chat’ or ‘End Chat’<br>button.</td></tr></tbody></table>

## Get Teaser Active

<mark style="color:$success;">`GET`</mark> \[server] /dolphin/apiv1/graph/teaser/active

This API is used to retrieve a list of active teasers based on category and channel ID.

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Query Parameter**

| Name                            | Type      | Description             |
| ------------------------------- | --------- | ----------------------- |
| category                        | string    | <p>This field to filter |
| active teaser                   |           |                         |
| based on their                  |           |                         |
| <br>categories. </p>            |           |                         |
| channelId                       | string ID | <p>This field filters   |
| active teasers according to the |           |                         |
| <br>specified channel.</p>      |           |                         |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
  "status": "success",
  "data": [
    {
      "id": "[teaser_id]",
      "spell": null,
      "owner": "[system_id]",
      "createdDate": 1694412868982,
      "createdBy": "[user/system_id]",
      "modifiedDate": null,
      "modifiedBy": "[user/system_id]",
      "partial": null,
      "category": "Alert",
      "title": "Gangguan Layanan Voice",
      "description": "<p>Saat ini sedang terjadi kendala pada layanan telepon. Mohon kesabarannya selama kendala ini dalam penanganan ya.</p>",
      "channels": null,
      "status": null,
      "pictureLink": null,
      "picturePublicLink": null,
      "iconLink": null,
      "iconPublicLink": null,
      "publishedDateInfo": null,
      "publishedDate": null,
      "publishedEndDate": null,
      "color": "#FF0000",
      "showDialog": false,
      "dialogMessage": null,
      "dialogTimeout": 0,
      "dialogTheme": null,
      "deleted": null,
      "name": "Teaser Alert 2",
      "popupBannerTimeout": 1
    }
  ]
}
```

{% endtab %}

{% tab title="401" %}

```json
{
  "status": 401, 
  "title": "Invalid token", 
  "message": "Last unit does not have enough valid bits", 
  "path": "/dolphin/apiv1/graph/teaser" 
}
```

{% endtab %}
{% endtabs %}

This is explanation about component body response field:

<table><thead><tr><th width="344.83331298828125">Name</th><th>Description </th></tr></thead><tbody><tr><td>status</td><td>Indicates the result of the request contained in the request body.</td></tr><tr><td>data</td><td>Indicates the array list of teaser data.</td></tr><tr><td>id</td><td>Indicates the unique identifier for each teaser. </td></tr><tr><td>spell</td><td>Teaser title and body.</td></tr><tr><td>owner</td><td>ID of the owner who created the teaser.</td></tr><tr><td>createdDate</td><td>Creation timestamp in millisecond.</td></tr><tr><td>createdBy</td><td>User ID of the creator. </td></tr><tr><td>modifiedDate</td><td>Last modified timestamp in milliseconds.</td></tr><tr><td>modifiedBy</td><td>User ID of the last person who modified the template.</td></tr><tr><td>partial</td><td>If set to true, it means that only specific fields are being updated, not the entire data. </td></tr><tr><td>hash</td><td>A unique value that serves as an identifier to ensure that the data remains<br>unchanged.</td></tr><tr><td>category</td><td>Teaser category. </td></tr><tr><td>title</td><td>Represents the teaser header that will be<br>displayed. </td></tr><tr><td>description</td><td>Description of teaser.<br><br><strong>Note:</strong><br>Max. 350 character</td></tr><tr><td>channels</td><td>List of channel IDs the teaser attached.</td></tr><tr><td>status</td><td>Status of the teaser.</td></tr><tr><td>pictureLink</td><td><p>Internal link to picture asset.</p><p></p><p><strong>Note:</strong><br>The image ratio for the pop-up banner is 5:2</p></td></tr><tr><td>picturePublicLink</td><td>Public URL to the picture.</td></tr><tr><td>iconLink</td><td>Internal link to icon asset.</td></tr><tr><td>iconPublicLink</td><td>Public url to the icon.</td></tr><tr><td>publishDateInfo</td><td>Indicates date when the teaser published. </td></tr><tr><td>publishedDate</td><td>Indicates the start date when teaser will be activated.</td></tr><tr><td>publishedEndDate</td><td>Indicates the start date when teaser will be deactivated.</td></tr><tr><td>color</td><td>Theme color used for teaser display.</td></tr><tr><td>showDialog</td><td>To show a pop up notification upon the<br>consumer closing the teaser.</td></tr><tr><td>dialogMessage</td><td>Message to show in the dialog (if enabled).</td></tr><tr><td>dialogTimeout</td><td>Timeout duration for dialog.</td></tr><tr><td>dialogTheme</td><td>Theme color used for dialog teaser display.</td></tr><tr><td>deleted</td><td>Indicates this teaser already deleted or not (soft delete from UI).</td></tr><tr><td>name</td><td>It represents the teaser name that serves as a unique name or identifier for the teaser within the system.</td></tr><tr><td>popupBannerTimeout</td><td>Indicates the duration (in seconds) that<br>determines how long a popup banner will be displayed on the screen before the user clicks the ‘Lanjut Chat’ or ‘End Chat’ button.</td></tr></tbody></table>

## Get Teaser By ID

<mark style="color:$success;">`GET`</mark> \[server]/ dolphin/apiv1/graph/teaser/\[teaser\_id]

This API is used to retrieve a teaser based on its teaser ID.

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Query Parameter**

| Name               | Type      | Description |
| ------------------ | --------- | ----------- |
| teaserId           | string ID | <p>A unique |
| identifier used    |           |             |
| <br>to represent a |           |             |
| specific           |           |             |
| <br>teaser.</p>    |           |             |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
  "status": "success",
  "data": {
    "id": "[teaser_id]",
    "spell": null,
    "owner": "[system_id]",
    "createdDate": 1757412141056,
    "createdBy": "[user/system_id]",
    "modifiedDate": 1757412141056,
    "modifiedBy": "[user/system_id]",
    "partial": null,
    "category": "Alert",
    "title": "[title]",
    "description": "Saat ini terjadi kendala pembelian atau pendaftaran voucher internet. Kendala ini sedang dalam penanganan. Mohon ditunggu ya.",
    "channels": [
      "9f4b9d9764adc4541978abdca27fb38d"
    ],
    "status": "active",
    "pictureLink": "null",
    "picturePublicLink": null,
    "iconLink": null,
    "iconPublicLink": null,
    "publishedDateInfo": 1757412141056,
    "publishedDate": null,
    "publishedEndDate": null,
    "color": "#FDB934",
    "showDialog": false,
    "dialogMessage": null,
    "dialogTimeout": 0,
    "dialogTheme": null,
    "deleted": null,
    "name": "1",
    "popupBannerTimeout": 5
    }
  }
}
```

{% endtab %}

{% tab title="401" %}

```json
{ 
  "status": 401, 
  "title": "Invalid token", 
  "message": "Last unit does not have enough valid bits", 
  "path": "/dolphin/apiv1/graph/teaser/9617f02fcac3060d3be3ee79b4157827" 
} 
```

{% endtab %}

{% tab title="404" %}

```json
{ 
  "status": "error", 
  "data": null, 
  "message": "Teaser not found" 
}
```

{% endtab %}
{% endtabs %}

This is explanation about component body response field:

<table><thead><tr><th width="301.592529296875">Name</th><th>Description </th></tr></thead><tbody><tr><td>status</td><td>Indicates the result of the request contained in the request body.</td></tr><tr><td>data</td><td>Indicates the array list of teaser data.</td></tr><tr><td>id</td><td>Indicates the unique identifier for each teaser. </td></tr><tr><td>spell</td><td>Teaser title and body.</td></tr><tr><td>owner</td><td>ID of the owner who created the teaser.</td></tr><tr><td>createdDate</td><td>Creation timestamp in millisecond.</td></tr><tr><td>createdBy</td><td>User ID of the creator. </td></tr><tr><td>modifiedDate</td><td>Last modified timestamp in milliseconds.</td></tr><tr><td>modifiedBy</td><td>User ID of the last person who modified the template.</td></tr><tr><td>partial</td><td>If set to true, it means that only specific fields are being updated, not the entire data. </td></tr><tr><td>hash</td><td>A unique value that serves as an identifier to ensure that the data remains<br>unchanged.</td></tr><tr><td>category</td><td>Teaser category. </td></tr><tr><td>title</td><td>Represents the teaser header that will be<br>displayed. </td></tr><tr><td>description</td><td>Description of teaser.<br><br><strong>Note:</strong><br>Max. 350 character </td></tr><tr><td>channels</td><td>List of channel IDs the teaser attached.</td></tr><tr><td>status</td><td>Status of the teaser.</td></tr><tr><td>pictureLink</td><td><p>Internal link to picture asset.</p><p></p><p><strong>Note:</strong><br>The image ratio for the pop-up banner is 5:2</p></td></tr><tr><td>picturePublicLink</td><td>Public URL to the picture.</td></tr><tr><td>iconLink</td><td>Internal link to icon asset.</td></tr><tr><td>iconPublicLink</td><td>Public url to the icon.</td></tr><tr><td>publishDateInfo</td><td>Indicates date when the teaser published. </td></tr><tr><td>publishedDate</td><td>Indicates the start date when teaser will be activated.</td></tr><tr><td>publishedEndDate</td><td>Indicates the start date when teaser will be deactivated.</td></tr><tr><td>color</td><td>Theme color used for teaser display.</td></tr><tr><td>showDialog</td><td>To show a pop up notification upon the<br>consumer closing the teaser.</td></tr><tr><td>dialogMessage</td><td>Message to show in the dialog (if enabled).</td></tr><tr><td>dialogTimeout</td><td>Timeout duration for dialog.</td></tr><tr><td>dialogTheme</td><td>Theme color used for dialog teaser display.</td></tr><tr><td>deleted</td><td>Indicates this teaser already deleted or not (soft delete from UI).</td></tr><tr><td>name</td><td>It represents the teaser name that serves as a unique name or identifier for the teaser within the system.</td></tr><tr><td>popupBannerTimeout</td><td>Indicates the duration (in seconds) that<br>determines how long a popup banner will be displayed on the screen before the user clicks the ‘Lanjut Chat’ or ‘End Chat’<br>button.</td></tr></tbody></table>

## Add Teaser Management

<mark style="color:$success;">`POST`</mark> \[server]/ dolphin/apiv1/graph/teaser/add

This API is used to add or create a new teaser.

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Body Request**

```
{
  "category": "string",
  "channels": "string",
  "color": "string",
  "deleted": true,
  "description": "string",
  "dialogMessage": "string",
  "dialogTheme": "string",
  "dialogTimeout": 0,
  "iconLink": "string",
  "name": "string",
  "pictureLink": "string",
  "popupBannerTimeout": 0,
  "publishedDate": "string",
  "publishedDateInfo": "string",
  "publishedEndDate": "string",
  "showDialog": true,
  "status": "string",
  "title": "string"
}
```

This is explanation about component body request field:

<table><thead><tr><th width="228">Name</th><th width="201.5">Type</th><th>Description</th></tr></thead><tbody><tr><td>category</td><td>string</td><td>Insert the<br>teaser category</td></tr><tr><td>channels</td><td>array of string</td><td>Add channel IDs the teaser will attached.</td></tr><tr><td>color</td><td>string</td><td>Theme color used for teaser display.</td></tr><tr><td>description</td><td>string</td><td><p>Description of teaser.</p><p></p><p><strong>Note:</strong><br>Max. 350 characters.</p></td></tr><tr><td>dialogMessage</td><td>string</td><td>Message to show in the<br>dialog (if field showDialog is true).</td></tr><tr><td>dialogTheme</td><td>string</td><td>Theme color used for<br>message dialog display (if field showDialog is true).</td></tr><tr><td>dialogTimeout</td><td>integer</td><td>Timeout duration for message dialog.</td></tr><tr><td>name</td><td>string</td><td>It represents the teaser<br>name that serves as a<br>unique name or identifier for the teaser within the<br>system.</td></tr><tr><td>pictureLink</td><td>string/null</td><td><p>Internal link to picture asset.</p><p></p><p><strong>Note:</strong><br>The image ratio for the pop-up banner is 5:2</p></td></tr><tr><td>popupBannerTimeout</td><td>integer</td><td>Indicates the duration (in<br>seconds) that determines<br>how long a popup banner<br>will be displayed on the screen before the user<br>clicks the ‘Lanjut Chat’ or<br>‘End Chat’ button.</td></tr><tr><td>publishedDate</td><td>integer</td><td>Indicates the start date when teaser will be activated.</td></tr><tr><td>publishDateInfo</td><td>integer</td><td>Indicates date when the teaser published. </td></tr><tr><td>publishedEndDate</td><td>integer</td><td>Indicates the start date when teaser will be deactivated.</td></tr><tr><td>showDialog</td><td>boolean</td><td>To show a pop-up notification upon the consumer closing the teaser.</td></tr><tr><td>status</td><td>string</td><td>Status of the teaser.</td></tr><tr><td>title</td><td>string</td><td>Represents the teaser header that will be displayed.</td></tr></tbody></table>

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
  "status": "success",
  "data": {
    "id": "[teaser_id]",
    "spell": null,
    "owner": "[system_id]",
    "createdDate": 1757412141056,
    "createdBy": "[user/system_id]",
    "modifiedDate": 1757412141056,
    "modifiedBy": "[user/system_id]",
    "partial": null,
    "category": "Alert",
    "title": "info gangguan terkini",
    "description": "Maaf sedang terjadi gangguan",
    "channels": [
      "9f4b9d9764adc4541978abdca27fb38d"
    ],
    "status": "active",
    "pictureLink": "null",
    "picturePublicLink": null,
    "iconLink": null,
    "iconPublicLink": null,
    "publishedDateInfo": 1757412141056,
    "publishedDate": null,
    "publishedEndDate": null,
    "color": "#FFFF00",
    "showDialog": true,
    "dialogMessage": "Terima kasih sudah menghubungi kami",
    "dialogTimeout": 3,
    "dialogTheme": "#00DAA5",
    "deleted": null,
    "name": "gangguan 24 jam",
    "popupBannerTimeout": 0
  }
}
```

{% endtab %}

{% tab title="401" %}

```json
{ 
  "status": 401, 
  "title" : "invalid token",
  "message" : "Expected a ',' or '}' at 27 [character 28 line 1]",
  "path": "/dolphin/apiv1/graph/teaser/add"
} 
```

{% endtab %}

{% tab title="404" %}

```json
{ 
  "status": "error", 
  "data": null, 
  "message": "Only one field attachment can be filled at a time." 
}
```

{% endtab %}
{% endtabs %}

This is explanation about component body response field:

<table><thead><tr><th width="301.592529296875">Name</th><th>Description </th></tr></thead><tbody><tr><td>status</td><td>Indicates the result of the request contained in the request body.</td></tr><tr><td>data</td><td>Indicates the array list of teaser data.</td></tr><tr><td>id</td><td>Indicates the unique identifier for each teaser. </td></tr><tr><td>spell</td><td>Teaser title and body.</td></tr><tr><td>owner</td><td>ID of the owner who created the teaser.</td></tr><tr><td>createdDate</td><td>Creation timestamp in millisecond.</td></tr><tr><td>createdBy</td><td>User ID of the creator. </td></tr><tr><td>modifiedDate</td><td>Last modified timestamp in milliseconds.</td></tr><tr><td>modifiedBy</td><td>User ID of the last person who modified the template.</td></tr><tr><td>partial</td><td>If set to true, it means that only specific fields are being updated, not the entire data. </td></tr><tr><td>hash</td><td>A unique value that serves as an identifier to ensure that the data remains<br>unchanged.</td></tr><tr><td>category</td><td>Teaser category. </td></tr><tr><td>title</td><td>Represents the teaser header that will be<br>displayed. </td></tr><tr><td>description</td><td>Description of teaser.<br><br><strong>Note:</strong><br>Max. 350 character </td></tr><tr><td>channels</td><td>List of channel IDs the teaser attached.</td></tr><tr><td>status</td><td>Status of the teaser.</td></tr><tr><td>pictureLink</td><td><p>Internal link to picture asset.</p><p></p><p><strong>Note:</strong><br>The image ratio for the pop-up banner is 5:2</p></td></tr><tr><td>picturePublicLink</td><td>Public URL to the picture.</td></tr><tr><td>iconLink</td><td>Internal link to icon asset.</td></tr><tr><td>iconPublicLink</td><td>Public url to the icon.</td></tr><tr><td>publishDateInfo</td><td>Indicates date when the teaser published. </td></tr><tr><td>publishedDate</td><td>Indicates the start date when teaser will be activated.</td></tr><tr><td>publishedEndDate</td><td>Indicates the start date when teaser will be deactivated.</td></tr><tr><td>color</td><td>Theme color used for teaser display.</td></tr><tr><td>showDialog</td><td>To show a pop up notification upon the<br>consumer closing the teaser.</td></tr><tr><td>dialogMessage</td><td>Message to show in the dialog (if enabled).</td></tr><tr><td>dialogTimeout</td><td>Timeout duration for dialog.</td></tr><tr><td>dialogTheme</td><td>Theme color used for dialog teaser display.</td></tr><tr><td>deleted</td><td>Indicates this teaser already deleted or not (soft delete from UI).</td></tr><tr><td>name</td><td>It represents the teaser name that serves as a unique name or identifier for the teaser within the system.</td></tr><tr><td>popupBannerTimeout</td><td>Indicates the duration (in seconds) that<br>determines how long a popup banner will be displayed on the screen before the user clicks the ‘Lanjut Chat’ or ‘End Chat’<br>button.</td></tr></tbody></table>

## Edit Teaser Management

<mark style="color:$success;">`PUT`</mark> \[server]/ dolphin/apiv1/graph/teaser/edit/\[teaser\_id]

This API used to edit teaser management that already exists. This API also supports\
activating and deactivating existing teasers. In the request body, you can edit specific fields as needed.

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Body**

```json
{
  "category": "string",
  "channels": "string",
  "color": "string",
  "deleted": true,
  "description": "string",
  "dialogMessage": "string",
  "dialogTheme": "string",
  "dialogTimeout": 0,
  "iconLink": "string",
  "name": "string",
  "pictureLink": "string",
  "popupBannerTimeout": 0,
  "publishedDate": "string",
  "publishedDateInfo": "string",
  "publishedEndDate": "string",
  "showDialog": true,
  "status": "string",
  "title": "string"
}
```

This is explanation about component body request field:

| Name                                                       | Type                 | Description                                             |
| ---------------------------------------------------------- | -------------------- | ------------------------------------------------------- |
| category                                                   | string               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>teaser                                                 |                      |                                                         |
| category based                                             |                      |                                                         |
| <br>on teaserId.</p>                                       |                      |                                                         |
| channel                                                    | array of&#xD; string | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>teaser                                                 |                      |                                                         |
| channels                                                   |                      |                                                         |
| based on                                                   |                      |                                                         |
| <br>teaserId.</p>                                          |                      |                                                         |
| color                                                      | string               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>main color of                                          |                      |                                                         |
| the teaser                                                 |                      |                                                         |
| <br>based on                                               |                      |                                                         |
| teaserId.</p>                                              |                      |                                                         |
| deleted                                                    | Boolean&#xD;/null    | Indicates this&#xD; teaser already&#xD; deleted or not. |
| description                                                | string               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>teaser                                                 |                      |                                                         |
| description                                                |                      |                                                         |
| based on                                                   |                      |                                                         |
| teaserId.<br><br><strong>Note:</strong><br>Max. 350        |                      |                                                         |
| <br>characters.</p>                                        |                      |                                                         |
| dialogMessage                                              | string               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>dialog                                                 |                      |                                                         |
| message                                                    |                      |                                                         |
| displayed in                                               |                      |                                                         |
| the teaser                                                 |                      |                                                         |
| based on                                                   |                      |                                                         |
| teaserId.</p>                                              |                      |                                                         |
| dialogTheme                                                | String               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>dialog theme                                           |                      |                                                         |
| of the teaser</p>                                          |                      |                                                         |
| dialogTimeout                                              | integers             | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>dialog duration                                        |                      |                                                         |
| (in seconds)                                               |                      |                                                         |
| based on                                                   |                      |                                                         |
| teaserId.</p>                                              |                      |                                                         |
| iconLink                                                   | String/n&#xD;ull     | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>teaser icon                                            |                      |                                                         |
| (URL) based on                                             |                      |                                                         |
| teaserId.</p>                                              |                      |                                                         |
| name                                                       | string               | <p>Request to                                           |
| update the name of the                                     |                      |                                                         |
| teaser based                                               |                      |                                                         |
| <br>on teaserId                                            |                      |                                                         |
| that serves as                                             |                      |                                                         |
| <br>a unique name                                          |                      |                                                         |
| or identifier                                              |                      |                                                         |
| for the teaser                                             |                      |                                                         |
| <br>within the                                             |                      |                                                         |
| system.</p>                                                |                      |                                                         |
| pictureLink                                                | <p>String/n          |                                                         |
| <br>ull</p>                                                | <p>Request to        |                                                         |
| update the                                                 |                      |                                                         |
| <br>teaser image                                           |                      |                                                         |
| (URL) based on                                             |                      |                                                         |
| teaserId.</p><p></p><p><strong>Note:</strong><br>The image |                      |                                                         |
| ratio for the                                              |                      |                                                         |
| <br>pop-up banner                                          |                      |                                                         |
| is 5:2</p>                                                 |                      |                                                         |
| popupBannerTimeout                                         | integer              | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>popup banner                                           |                      |                                                         |
| duration (in                                               |                      |                                                         |
| <br>seconds)                                               |                      |                                                         |
| based on                                                   |                      |                                                         |
| teaserId. </p>                                             |                      |                                                         |
| publishedDate                                              | integer              | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>start date of                                          |                      |                                                         |
| teaser publication                                         |                      |                                                         |
| based on                                                   |                      |                                                         |
| teaserId.</p>                                              |                      |                                                         |
| publishedDateInfo                                          | integer              | <p>Indicates date                                       |
| when the                                                   |                      |                                                         |
| <br>teaser                                                 |                      |                                                         |
| published.</p>                                             |                      |                                                         |
| publishedEndDate                                           | Integer              | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>end date of                                            |                      |                                                         |
| teaser                                                     |                      |                                                         |
| publication                                                |                      |                                                         |
| based on                                                   |                      |                                                         |
| <br>teaserId.</p>                                          |                      |                                                         |
| showDialog                                                 | Boolean              | <p>Request to                                           |
| update                                                     |                      |                                                         |
| <br>whether the                                            |                      |                                                         |
| teaser is                                                  |                      |                                                         |
| <br>displayed as a                                         |                      |                                                         |
| dialog pop-up                                              |                      |                                                         |
| based on                                                   |                      |                                                         |
| teaserId.</p>                                              |                      |                                                         |
| status                                                     | string               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>teaser status                                          |                      |                                                         |
| based on                                                   |                      |                                                         |
| <br>teaserId.</p>                                          |                      |                                                         |
| title                                                      | string               | <p>Request to                                           |
| update the                                                 |                      |                                                         |
| <br>teaser header                                          |                      |                                                         |
| based on teaserId that                                     |                      |                                                         |
| will be                                                    |                      |                                                         |
| <br>displayed.</p>                                         |                      |                                                         |

**Response**

{% tabs %}
{% tab title="200" %}

```json
{
  "status": "success",
  "data": {
      "id": "[teaser_id]",
      "spell": [
        "Pemberitahuan Gangguan Jaringan",
        "<p>Gangguan jaringan sementara di wilayah Anda. Tim kami sedang bekerja memperbaiki.</p>"
      ],
      "owner": "[system_id]",
      "createdDate": 1755599593771,
      "createdBy": "[user/system_id]",
      "modifiedDate": 1755668189488,
      "modifiedBy": "[user/system_id]",
      "partial": null,
      "category": "Alert",
      "title": "Pemberitahuan Gangguan Jaringan",
      "description": "<p>Gangguan jaringan sementara di wilayah Anda. Tim kami sedang bekerja memperbaiki.</p>",
      "channels": [
        "f592b319b4b8dd2aa221cfba3c8f84c2"
      ],
      "status": "active",
      "pictureLink": "{\"fileName\":\"teaser_1755599545667_Alert.png\",\"fileSize\":\"1005Kb\",\"fileType\":\"image/png\",\"fileLink\":\"https://minioxldev.3dolphins.ai:9000/teaser/teaser_1755599545667_Alert.png?X-Amz-Algorithm\\u003dAWS4-HMAC-SHA256\\u0026X-Amz-Credential\\u003dFAKCZ3B3ZP1WJ4G0I6BP%2F20250819%2Fus-east-1%2Fs3%2Faws4_request\\u0026X-Amz-Date\\u003d20250819T103225Z\\u0026X-Amz-Expires\\u003d604800\\u0026X-Amz-SignedHeaders\\u003dhost\\u0026X-Amz-Signature\\u003d7f815035f278e62ab8bb8ae4ba358f98cf0d60fae62d1ce717bc2834726e4224\",\"bucketName\":\"teaser\"}",
      "picturePublicLink": null,
      "iconLink": null,
      "iconPublicLink": null,
      "publishedDateInfo": 1755599593771,
      "publishedDate": null,
      "publishedEndDate": null,
      "color": "#03A6FF",
      "showDialog": false,
      "dialogMessage": "",
      "dialogTimeout": 0,
      "dialogTheme": "",
      "deleted": null,
      "name": "Teaser Alert 1",
      "popupBannerTimeout": 3
    }
}
```

{% endtab %}

{% tab title="401" %}

```json
{
  "status": 401, 
  "title": "Invalid token", 
  "message": "Expected a ':' after a key at 14 [character 15 line 1]", 
  "path": "/dolphin/apiv1/graph/teaser/edit/9617f02fcac3060d3be3ee79b4157827" 
}
```

{% endtab %}

{% tab title="404" %}

```json
{
  "status": 401, 
  "title": "Invalid token", 
  "message": "Expected a ':' after a key at 14 [character 15 line 1]", 
  "path": "/dolphin/apiv1/graph/teaser/edit/9617f02fcac3060d3be3ee79b4157827" 
}
```

{% endtab %}
{% endtabs %}

This is explanation about component body response field:

<table><thead><tr><th width="301.592529296875">Name</th><th>Description </th></tr></thead><tbody><tr><td>status</td><td>Indicates the result of the request contained in the request body.</td></tr><tr><td>data</td><td>Indicates the array list of teaser data.</td></tr><tr><td>id</td><td>Indicates the unique identifier for each teaser. </td></tr><tr><td>spell</td><td>Teaser title and body.</td></tr><tr><td>owner</td><td>ID of the owner who created the teaser.</td></tr><tr><td>createdDate</td><td>Creation timestamp in millisecond.</td></tr><tr><td>createdBy</td><td>User ID of the creator. </td></tr><tr><td>modifiedDate</td><td>Last modified timestamp in milliseconds.</td></tr><tr><td>modifiedBy</td><td>User ID of the last person who modified the template.</td></tr><tr><td>partial</td><td>If set to true, it means that only specific fields are being updated, not the entire data. </td></tr><tr><td>hash</td><td>A unique value that serves as an identifier to ensure that the data remains<br>unchanged.</td></tr><tr><td>category</td><td>Teaser category. </td></tr><tr><td>title</td><td>Represents the teaser header that will be<br>displayed. </td></tr><tr><td>description</td><td>Description of teaser.<br><br><strong>Note:</strong><br>Max. 350 character </td></tr><tr><td>channels</td><td>List of channel IDs the teaser attached.</td></tr><tr><td>status</td><td>Status of the teaser.</td></tr><tr><td>pictureLink</td><td><p>Internal link to picture asset.</p><p></p><p><strong>Note:</strong><br>The image ratio for the pop-up banner is 5:2</p></td></tr><tr><td>picturePublicLink</td><td>Public URL to the picture.</td></tr><tr><td>iconLink</td><td>Internal link to icon asset.</td></tr><tr><td>iconPublicLink</td><td>Public url to the icon.</td></tr><tr><td>publishDateInfo</td><td>Indicates date when the teaser published. </td></tr><tr><td>publishedDate</td><td>Indicates the start date when teaser will be activated.</td></tr><tr><td>publishedEndDate</td><td>Indicates the start date when teaser will be deactivated.</td></tr><tr><td>color</td><td>Theme color used for teaser display.</td></tr><tr><td>showDialog</td><td>To show a pop up notification upon the<br>consumer closing the teaser.</td></tr><tr><td>dialogMessage</td><td>Message to show in the dialog (if enabled).</td></tr><tr><td>dialogTimeout</td><td>Timeout duration for dialog.</td></tr><tr><td>dialogTheme</td><td>Theme color used for dialog teaser display.</td></tr><tr><td>deleted</td><td>Indicates this teaser already deleted or not (soft delete from UI).</td></tr><tr><td>name</td><td>It represents the teaser name that serves as a unique name or identifier for the teaser within the system.</td></tr><tr><td>popupBannerTimeout</td><td>Indicates the duration (in seconds) that<br>determines how long a popup banner will be displayed on the screen before the user clicks the ‘Lanjut Chat’ or ‘End Chat’<br>button.</td></tr></tbody></table>

## Delete Teaser

<mark style="color:$success;">`DELETE`</mark> \[server]/ dolphin/apiv1/graph/teaser/delete/\[teaser\_id]

This API is used to delete a previously created teaser.

**Headers**

| Name          | Value              |
| ------------- | ------------------ |
| Content-Type  | `application/json` |
| Authorization | `Bearer <token>`   |

**Query Parameter**

| Name     | Type   | Description                                                             |
| -------- | ------ | ----------------------------------------------------------------------- |
| teaserId | string | A unique&#xD; identifier used&#xD; to represent a&#xD; specific teaser. |

**Response**

{% tabs %}
{% tab title="200" %}

```json
 {
  "status": "success",
  "data": "Delete Success"
}
```

{% endtab %}

{% tab title="401" %}

```json
{ 
  "status": 401, 
  "title": "Invalid token", 
  "message": "Illegal escape. at 17 [character 18 line 1]", 
  "path": "/dolphin/apiv1/graph/teaser/delete/e848dd78319f2542751d6316552b532a" 
}
```

{% endtab %}

{% tab title="404" %}

```json
{ 
  "status": "error", 
  "data": null, 
  "message": "not found" 
} 
```

{% endtab %}
{% endtabs %}

This is explanation about component body response field:

| Name   | Description                                      |
| ------ | ------------------------------------------------ |
| status | Indicates the&#xD; result of the&#xD; request.   |
| data   | Indicates that the delete status was successful. |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.3dolphins.ai/api/service-api/teaser-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
