# Creative Approval API Samples

## Introduction

Use this topic to explore practical application programming interface (API) requests for reviewing and managing your creatives. You’ll find examples for common actions like approving, denying, tagging, and retrieving creatives—plus batch operations and asset access.

## What You’ll Learn

In this topic, you’ll learn how to:

- [Retrieve a list of creatives for approval](#get-a-list-of-creatives-for-approval-review).
- [Approve or deny a creative](#approve-or-deny-a-creative).
- [Add tags or categories to a creative](#add-tags-or-categories-to-a-creative).
- [Batch approve or update creatives](#batch-approve-or-update-creatives).
- [Create a new tag](#create-a-new-tag).
- [Search for creative categories by name](#search-for-creative-categories-by-name).
- [Retrieve the names of advertisers](#retrieve-the-name-of-several-advertisers).
- [Retrieve full-size creative assets](#retrieve-full-size-creative-assets).




## Get a List of Creatives for Approval Review

Use this request to retrieve a paginated list of creatives that still require approval. Results are sorted from oldest to newest, helping you prioritize reviews. You’ll receive up to 20 creatives per page.


```http
GET https://platform-api.vistarmedia.com/api/ssp/v1/creatives?page_size=20&page=0&order=audit.create_time&asc=true&filter=audit.status%3Apending
```



## Approve or Deny a Creative

Use this endpoint to update the approval status of a specific creative.

### Approve a Creative

**Sample request**


```http
PATCH https://platform-api.vistarmedia.com/api/ssp/v1/creatives/429kp1cDR869Sz6Eoe4JLw:00y5XQZ0QWie0kjCKFCivA
```


```json
{
  "audit": {
    "status": "APPROVED"
  }
}
```

### Deny a Creative

**Sample request**


```http
PATCH https://platform-api.vistarmedia.com/api/ssp/v1/creatives/429kp1cDR869Sz6Eoe4JLw:00y5XQZ0QWie0kjCKFCivA
```


```json
{
  "audit": {
    "status": "DENIED"
  }
}
```



## Add Tags or Categories to a Creative

You can assign tags or categories to a creative as part of the creative approval process—or update them separately.

**Sample request**


```http
PATCH https://platform-api.vistarmedia.com/api/ssp/v1/creatives/429kp1cDR869Sz6Eoe4JLw:00y5XQZ0QWie0kjCKFCivA
```


```json
{
  "audit": {
    "tag_ids": [
      "A5ZWu4p0RkKiJqAYNgKo3w"
    ],
    "category_ids": [
      "IAB15-1",
      "IAB22"
    ]
  }
}
```



## Batch Approve or Update Creatives

Use this endpoint to update multiple creatives at once. You can approve, deny, or assign tags and categories in a single call—up to **100 creatives** per request.

**Sample request**


```http
PATCH https://platform-api.vistarmedia.com/api/ssp/v1/creatives/
```


```json
{
  "creatives": [
    {
      "id": "xKgdLkHaSVexQYurJmRIkw:0MdIpRogSWi5tIMtqox0Sw",
      "audit": {
        "status": "APPROVED"
      }
    },
    {
      "id": "429kp1cDR869Sz6Eoe4JLw:apGvurD3RFqSBBWDJFCK9w",
      "audit": {
        "status": "APPROVED",
        "category_ids": [
          "IAB15-1",
          "IAB22"
        ],
        "tag_ids": [
          "A5ZWu4p0RkKijqAYNgKo3w"
        ]
      }
    },
    {
      "id": "xKgdLkHaSVexQYurJmRIkw:apGvurD3RFqSBBWDJFCK9w",
      "audit": {
        "status": "DENIED",
        "message": "This is the denial message."
      }
    }
  ]
}
```



## Create a New Tag

Use this endpoint to create a new tag to help organize your creatives. After you create the tag, the response includes its ID, which you can use to label creatives for targeting, reporting, or categorization.

**Sample request**


```http
POST https://platform-api.vistarmedia.com/api/ssp/v1/tags
```


```json
{
  "name": "my new tag"
}
```

**Sample response**


```json
{
  "id": "BPC9ZA_jTiSNqnia3ijIfw",
  "name": "my new tag"
}
```



## Search for Creative Categories by Name

Use this search endpoint to find creative categories by name. This is especially helpful when assigning categories during the approval process. The following sample returns all categories with the word “automotive”.

**Sample request**


```http
GET https://platform-api.vistarmedia.com/api/ssp/v1/creative_categories?search=name%3Aautomotive
```



## Retrieve the Name of Several Advertisers

If you’re populating a user interface and need to look up user-friendly field names, use this endpoint. It supports up to **100** `filter` parameters in a single request so you can batch-resolve IDs to readable names.

**Sample request**


```http
GET https://platform-api.vistarmedia.com/api/ssp/v1/advertisers?filter=id%3A-cd0vcnTsza_GRBL2khoKg&filter=id%3A-q6xvzuWSAqnU2Ebt-4AWQ&filter=id%3A-wj7ZtLdsSSvaMGvturAsg&filter=id%3A8UM7Dw0iR16m9gYhevFd&filter=id%3Ab26jsC_9QCC8tr2Z-xfSWv&filter=id%3Acr62fHhS5869jS3Each-vQ&filter=id%3AzhTnI0XQPC36Gp3fHqbZAk
```



## Retrieve Full-Size Creative Assets

When you need a URL for the full-size version of a creative (image or video) for review, use this endpoint. It returns all assets and formats associated with the Creative ID you provide.

**Sample request**


```http
GET https://platform-api.vistarmedia.com/api/ssp/v1/creatives/429kp1cDR869Sz6Eoe4JLw:0J2pv8uaQV67JynYERiL40/assets
```