- [HTTP request](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#body.HTTP_TEMPLATE)
- [Request body](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#body.request_body)
  - [JSON representation](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#body.request_body.SCHEMA_REPRESENTATION)
- [Response body](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#body.response_body)
  - [JSON representation](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#body.StudioCreativeAssetsResponse.SCHEMA_REPRESENTATION)
- [Authorization scopes](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#body.aspect)
- [StudioCreativeAsset](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#StudioCreativeAsset)
  - [JSON representation](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#StudioCreativeAsset.SCHEMA_REPRESENTATION)
- [Type](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#Type)
- [VideoProcessingData](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#VideoProcessingData)
  - [JSON representation](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#VideoProcessingData.SCHEMA_REPRESENTATION)
- [ProcessingState](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#ProcessingState)
- [Try it!](https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#try-it)

Inserts a new studio creative asset.

Requests to upload an asset file must be sent to the upload URI using multipart media upload (or resumable media upload).

For [multipart uploads](https://developers.google.com/doubleclick-advertisers/upload#multipart) (`uploadType=multipart`), the request uses `multipart/related` and includes two parts:

- **Metadata** : A JSON object representing `DfareportingStudioCreativeAssetsInsertRequest` with `studioAdvertiserId`, and optional `studioAccountId` and `studioCreativeId`.
- **Media** : The binary data of the asset file, specifying the `Content-Type` of the asset and a `Content-Disposition` header with `name="media"` and `filename="<filename>"` (for example, `Content-Disposition: form-data; name="media"; filename="asset.jpg"`).

### HTTP request

- Upload URI, for media upload requests:  
  `POST https://dfareporting.googleapis.com/upload/dfareporting/v5/studio/creativeAssets`
- Metadata URI, for metadata-only requests:  
  `POST https://dfareporting.googleapis.com/dfareporting/v5/studio/creativeAssets`

The URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.

### Request body

The request body contains data with the following structure:

| JSON representation |
|---|
| ``` { "studioAdvertiserId": string, "studioAccountId": string, "studioCreativeId": string } ``` |

| Fields ||
|---|---|
| `studioAdvertiserId` | `string (https://developers.google.com/discovery/v1/type-format format)` Required. Studio advertiser ID of the studio creative asset. It is a required field on insertion. |
| `studioAccountId` | `string (https://developers.google.com/discovery/v1/type-format format)` Optional. Studio account ID of the studio creative asset. It is a optional. |
| `studioCreativeId` | `string (https://developers.google.com/discovery/v1/type-format format)` Optional. Studio creative ID of the studio creative asset. It is a optional field. If it is set, the asset will be associated to the creative. |

### Response body

Response message for DfareportingStudioCreativeAssets.Insert.

If successful, the response body contains data with the following structure:

| JSON representation |
|---|
| ``` { "assets": [ { object (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#StudioCreativeAsset`) } ] } ``` |

| Fields ||
|---|---|
| `assets[]` | ``object (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#StudioCreativeAsset`)`` The list of studio creative assets. |

### Authorization scopes

Requires the following OAuth scope:

- `https://www.googleapis.com/auth/dfatrafficking`

## StudioCreativeAsset

<br />

> [!WARNING]
> **Beta:** This API resource is available only to a very limited number of customers. If you'd like to use this resource, please reach out to your Google sales representative.

Contains studio creative asset information.

<br />

| JSON representation |
|---|
| ``` { "id": string, "studioAccountId": string, "studioAdvertiserId": string, "studioCreativeId": string, "type": enum (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#Type`), "filename": string, "filesize": string, "videoProcessingData": { object (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#VideoProcessingData`) }, "createInfo": { object (`https://developers.google.com/doubleclick-advertisers/rest/v5/LastModifiedInfo`) }, "lastModifiedInfo": { object (`https://developers.google.com/doubleclick-advertisers/rest/v5/LastModifiedInfo`) } } ``` |

| Fields ||
|---|---|
| `id` | `string (https://developers.google.com/discovery/v1/type-format format)` Output only. Unique ID of this studio creative asset. This is a read-only, auto-generated field. |
| `studioAccountId` | `string (https://developers.google.com/discovery/v1/type-format format)` Studio account ID of this studio creative asset. This field, if left unset, will be auto-populated.. |
| `studioAdvertiserId` | `string (https://developers.google.com/discovery/v1/type-format format)` Studio advertiser ID of this studio creative asset. This is a required field on insertion. |
| `studioCreativeId` | `string (https://developers.google.com/discovery/v1/type-format format)` Studio creative ID of this studio creative asset. The asset will be associated to the creative if creative id is set. |
| `type` | ``enum (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#Type`)`` The type of the studio creative asset. It is a auto-generated, read-only field. |
| `filename` | `string` The filename of the studio creative asset. It is default to the original filename of the asset. |
| `filesize` | `string (https://developers.google.com/discovery/v1/type-format format)` The filesize of the studio creative asset. This is a read-only field. |
| `videoProcessingData` | ``object (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#VideoProcessingData`)`` The processing data of the studio creative asset. This is a read-only field. |
| `createInfo` | ``object (`https://developers.google.com/doubleclick-advertisers/rest/v5/LastModifiedInfo`)`` Output only. The creation timestamp of the studio creative asset. This is a read-only field. |
| `lastModifiedInfo` | ``object (`https://developers.google.com/doubleclick-advertisers/rest/v5/LastModifiedInfo`)`` Output only. The last modified timestamp of the studio creative asset. This is a read-only field. |

## Type

The types available for a Studio asset.

| Enums ||
|---|---|
| `UNKNOWN_TYPE` | Unknown type of asset. |
| `HTML` | The asset is an HTML file. |
| `VIDEO` | The asset is a video file. |
| `IMAGE` | The asset is an image file. |
| `FONT` | The asset is a font file. |

## VideoProcessingData

Contains processing data for a video asset.

| JSON representation |
|---|
| ``` { "processingState": enum (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#ProcessingState`), "errorReason": string } ``` |

| Fields ||
|---|---|
| `processingState` | ``enum (`https://developers.google.com/doubleclick-advertisers/rest/v5/studioCreativeAssets/insert#ProcessingState`)`` Output only. The processing state of the studio creative asset. |
| `errorReason` | `string` For a FAILED processing state, the error reason discovered. |

## ProcessingState

The processing states available for Studio assets.

| Enums ||
|---|---|
| `UNKNOWN` | The processing state is unknown. |
| `PROCESSING` | The asset is being processed. |
| `SUCCEEDED` | The asset was successfully processed. |
| `FAILED` | The asset failed to be processed. |