---
title: "Add VAST progress events — banner"
type: reference
method: PUT
path: /rest-api/banner/{id}/vast/progress-events.do
tag: "VAST"
---

# Add VAST progress events — banner

`PUT https://YOUR-NETWORK-DOMAIN/rest-api/banner/{id}/vast/progress-events.do`

Adds one or more VAST progress tracking events to the specified entity, each defining a time offset and an associated action. The request body is a JSON array of objects with 'time' (in HH:MM:SS.mmm format or percentage like '25%') and 'actionId' (the action to trigger at that time). Each actionId must reference a valid existing action and must not be duplicated within the same request. An event for an actionId the entity already has is not added again: that event gets the new time, and the answer lists such actionIds in 'replacedActionIds'. The caller must have update permissions on the entity. Returns a JSON object with a 'success' boolean.

## Path params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `id` | integer | yes | `5001` | The unique numeric identifier of the entity to add progress events to |

## Body

A JSON body. An example, built from the field definitions:

```json
[
  {
    "id": "789",
    "time": "00:00:15",
    "actionId": "42"
  }
]
```

## Responses

- `200` — VAST progress events added successfully
- `400` — Invalid time format, missing action ID, or empty event list
- `401` — Authentication error
- `403` — Not enough permissions
- `404` — The entity does not exist or is deleted

## Example request

```bash
curl --request PUT \
  --url 'https://YOUR-NETWORK-DOMAIN/rest-api/banner/5001/vast/progress-events.do' \
  --header 'X-Api-Key: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '[
  {
    "id": "789",
    "time": "00:00:15",
    "actionId": "42"
  }
]'
```

Source: https://epom.com/ad-server/docs/api/vast/put-banner-vast-progress-events