# Ads

Both Ads endpoints start from a finished ad: one flat PNG or JPEG with everything baked in. They answer the two questions a shipped ad raises after the design file is gone: how do I edit it, and how do I get it at another size.

| Endpoint | What it does | Reference |
|  --- | --- | --- |
| `POST /v2/ads/delayer` | Takes the ad apart into editable layers: a background plate, image cutouts, live text with typography, and vector shapes, returned as one JSON layer document. | [Ads API reference](/ads) |
| `POST /v2/ads/resize` | Produces the ad at up to ten other sizes with the layout redone for each shape: the Ad Delayer takes the ad apart, and Bria's layout engine composes the layers for each new shape. | [Ads API reference](/ads) |


Use the delayer when the ad itself has to change: a new headline, a translated line, a different price. Use resize when the ad is approved as it is and the campaign needs it in other placements. The two chain naturally: delayer first to edit, then resize the edited ad.

## How a job runs

Both endpoints are asynchronous and share the platform's job model:

1. `POST` the ad and get back a `request_id` and a `status_url`.
2. Poll the [status endpoint](/status), or register a [webhook](/getting-started/async-requests#webhooks) and skip polling.
3. On `COMPLETED`, the status body carries the result: a pointer to the hosted layer document for the delayer, one hosted image per target size for resize.


A delayer run takes about two minutes. A resize lays every size out from the ad's layers and takes several minutes; the job finishes when its slowest size does.

## Limits

Sources over 1350 px per side need an Enterprise plan. The delayer rejects a larger ad before any work is done; resize downscales it to fit first and says so in the response. Results stay hosted for the platform's standard [asset retention](/getting-started/asset-retention) period.

The [API reference](/ads) has both request schemas, the completion payloads and the error catalogs.