---
title: "Create banner blocked placement targeting"
type: reference
method: POST
path: /rest-api/banner/{bannerId}/targeting/placement/create.do
tag: "Targeting Rules"
---

# Create banner blocked placement targeting

`POST https://YOUR-NETWORK-DOMAIN/rest-api/banner/{bannerId}/targeting/placement/create.do`

Creates blocked placement targeting rules for the specified banner. Accepts a comma-separated list of placement IDs. Requires BLOCKED_PLACEMENTS targeting permission. A created target also switches the entity's targeting on, since targets take effect only while it is on. The answer lists the ids targeted now in 'created' and the ones that already were in 'alreadyTargeted'; an unknown or deleted id is refused and nothing is created.

## Path params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `bannerId` | integer | yes | `7890` | Unique numeric ID of the banner |

## Form params

| Name | Type | Required | Example | Description |
|---|---|---|---|---|
| `placementId` | string | yes | `123,456,789` | Comma-separated list of placement IDs to target (e.g., '123,456,789') |
| `rule` | string | yes | `INCLUDE` | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist |

## Responses

- `200` — {success, created, alreadyTargeted}
- `400` — An unknown or deleted id
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Banner or placement not found
- `500` — Internal server error

## Example request

```bash
curl --request POST \
  --url 'https://YOUR-NETWORK-DOMAIN/rest-api/banner/7890/targeting/placement/create.do' \
  --header 'X-Api-Key: YOUR_API_KEY' \
  --header 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'placementId=123,456,789' \
  --data-urlencode 'rule=INCLUDE'
```

Source: https://epom.com/ad-server/docs/api/targeting-rules/post-banner-targeting-placement-create