> For the complete documentation index, see [llms.txt](https://docs.3dolphins.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.3dolphins.ai/api/service-api/teaser-api.md).

# 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. |
