---
title: "Targeting Rules API endpoints — Placement"
description: "Endpoint reference for the Targeting Rules tag on the placement level (63 placement endpoints): Targeting rules for advertisers, campaigns, banners, placements, sites, and zones"
type: "reference"
audience: [network-manager, admin]
keywords: [api, rest, endpoints, targeting, rules, placement]
---

Fetch the complete documentation index at: https://epom.com/ad-server/docs/llms.txt. Use this file to discover all available pages before exploring further. Append .md to any documentation page URL to get its markdown version.

# Targeting Rules API endpoints — Placement

Targeting rules for advertisers, campaigns, banners, placements, sites, and zones. 63 placement endpoints, generated from the OpenAPI spec. Authentication, the response envelope, pagination and error codes are shared by all endpoints — see [REST API overview](https://epom.com/ad-server/docs/api.md). Parameters marked `form` go in an `application/x-www-form-urlencoded` request body.

The endpoints shared by every level are on [Targeting Rules API endpoints](https://epom.com/ad-server/docs/api/targeting-rules.md).

### GET /rest-api/placement/{placementId}/targeting/{targetId}.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting.md)

Get placement targeting rule by ID.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `targetId` | path | integer | yes | Unique numeric ID of the targeting rule to retrieve |

**Responses:** `200` — Success · `404` — Placement or targeting rule not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### DELETE /rest-api/placement/{placementId}/targeting/{targetId}/delete.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/delete-placement-targeting.md)

Delete placement targeting rule.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `targetId` | path | integer | yes | Unique numeric ID of the targeting rule to delete |

**Responses:** `200` — Success · `404` — Placement or targeting rule not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/advertiser/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-advertiser-create.md)

Create placement blocked advertiser targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `advertiserIds` | form | string | yes | Comma-separated list of advertiser IDs to block (e.g., '123,456,789') |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |

**Responses:** `200` — {success, created, alreadyTargeted} · `404` — Placement or advertiser not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/api-json-field/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-api-json-field-create.md)

Create placement API JSON field targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `apiUrl` | form | string | yes | External API URL that returns a JSON response |
| `jsonField` | form | string | yes | JSON field name to extract from the API response |
| `jsonFieldValue` | form | string | yes | Expected value of the JSON field to match against |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/app-package/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-app-package-create.md)

Create placement app package targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `appPackage` | form | string | yes | Application package/bundle identifier (e.g., 'com.example.app') |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/browser-country/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-browser-country-create.md)

Create placement browser country targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `countryCode` | form | array&lt;string&gt; | yes | ISO 3166-1 alpha-2 country code(s) to target — repeat the parameter or separate codes with commas (e.g. DE,FR) |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/browser-rank/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-browser-rank-create.md)

Create placement browser rank targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `browserRank` | form | integer | yes | Browser popularity rank value to target |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/browser/chrome/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-browser-chrome-values.md)

Get Chrome browser version values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/browser/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-browser-create.md)

Create placement browser targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `browser` | form | string | yes | Browser type to target (e.g., FIREFOX, CHROME, SAFARI, EDGE) Values: `CHROME_MOBILE`, `CHROME`, `MOBILE_SAFARI`, `SAFARI`, `EDGE`, `FIREFOX`, `OPERA`, `SAMSUNG_BROWSER`, `UC_BROWSER`, `YANDEX`, `OPERA_MINI`, `EDGE_MOBILE`, `QQ_BROWSER`, `FIREFOX_MOBILE`, `MIUI_BROWSER`, `WHALE`, `HUAWEI_BROWSER`, `OPERA_MOBILE`, `BRAVE`, `BAIDU_BROWSER`, `YANDEX_BROWSER_IOS`, `AMAZON_SILK`, `DUCKDUCKGO`, `VIVO_BROWSER`, `ARC` … (+44 more, 69 total). |
| `relation` | form | string | no | Version comparison relation (e.g., LOWER, GREATER, EQUAL, LOWER_EQUAL, GREATER_EQUAL) Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |
| `browserVersion` | form | string | no | Browser major version number; supports integer or old-style format like '30.0' (only major version is applied) |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/browser/firefox/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-browser-firefox-values.md)

Get Firefox browser version values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/browser/ie/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-browser-ie-values.md)

Get IE browser version values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/browser/safari/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-browser-safari-values.md)

Get Safari browser version values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/browser/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-browser-values.md)

Get browser targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/channel/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-channel-create.md)

Create placement channel targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `channel` | form | string | yes | Channel identifier string to target |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/connection-type/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-connection-type-create.md)

Create placement connection type targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `connectionType` | form | string | yes | Connection type to target Values: `UNKNOWN`, `DIALUP`, `CABLE_DSL`, `CORPORATE`, `CELLULAR`, `WI_FI`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/connection-type/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-connection-type-values.md)

Get connection type values.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Not found — resource does not exist. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/cookie-value/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-cookie-value-create.md)

Create placement cookie value targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `cookieName` | form | string | yes | Name of the browser cookie to match against |
| `cookieValue` | form | string | yes | Expected value of the browser cookie |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/country/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-country-create.md)

Create placement country targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `countryCode` | form | array&lt;string&gt; | yes | ISO 3166-1 alpha-2 country code(s) to target — repeat the parameter or separate codes with commas (e.g. DE,FR) |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/country/region/city/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-country-region-city-values.md)

Get region city values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `countryCode` | query | string | yes | ISO alpha-2 country code (e.g., 'US', 'GB', 'DE') |
| `regionName` | query | string | yes | Region or state name within the specified country |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/country/region/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-country-region-values.md)

Get country region values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `countryCode` | query | string | yes | ISO alpha-2 country code (e.g., 'US', 'GB', 'DE') |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/custom/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-custom-create.md)

Create placement custom parameter targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `customValue` | form | string | yes | Custom targeting value or expression (e.g., '($p1==1 \|\| $p1=="a") && $p2>=12') |
| `customType` | form | string | no | Custom target type — EXPRESSION, VALUE, or SUBSTRING (optional) Values: `EXPRESSION`, `VALUE`, `ONE_OF`, `SUBSTRING`. |
| `operation` | form | string | no | Matching operation — EQUALS, NOT_EQUALS, CONTAINS, or NOT_CONTAINS (optional) Values: `EQUALS`, `NOT_EQUALS`, `CONTAINS`, `NOT_CONTAINS`, `GREATER`, `GREATER_OR_EQUALS`, `LESS`, `LESS_OR_EQUALS`, `IN`, `NOT_IN`. |
| `parameter` | form | string | no | Parameter name for the operation value (optional) |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/date-time/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-date-time-create.md)

Create placement date/time targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `timeFrom` | form | string | yes | Time range start in HH:mm format |
| `timeTo` | form | string | yes | Time range end in HH:mm format |
| `dayOfWeek` | form | array&lt;string&gt; | no | Days of week to target; omitted, the rule applies on every day Values: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`. |
| `clientLocalTime` | form | boolean | no | When true, use client's local time zone for time range evaluation |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/day-of-week/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-day-of-week-create.md)

Create placement day of week targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `dayOfWeek` | form | string | yes | Day of week — MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, or SUNDAY Values: `MONDAY`, `TUESDAY`, `WEDNESDAY`, `THURSDAY`, `FRIDAY`, `SATURDAY`, `SUNDAY`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/device-format/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-device-format-create.md)

Create placement device format targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `deviceFormat` | form | string | yes | Device form factor to target (e.g., PHONE, TABLET, DESKTOP) Values: `DESKTOP`, `TABLET`, `MOBILE`, `SMART_TV`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/device-format/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-device-format-values.md)

Get device format targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/device-ram/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-device-ram-create.md)

Create placement device RAM targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `deviceRam` | form | integer | yes | Device RAM amount in megabytes to target |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/device-release-year/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-device-release-year-create.md)

Create placement device release year targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `deviceReleaseYear` | form | integer | yes | Device release year to target (e.g., 2020) |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/device-vendor/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-device-vendor-create.md)

Create placement device vendor targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `deviceVendor` | form | string | yes | Device vendor/manufacturer to target (e.g., APPLE, SAMSUNG, HUAWEI) Values: `SAMSUNG`, `APPLE`, `XIAOMI`, `VIVO`, `OPPO`, `HONOR`, `TECNO`, `INFINIX`, `HUAWEI`, `REALME`, `MOTOROLA`, `ONEPLUS`, `ITEL`, `NOKIA`, `ZTE`, `AMAZON`, `PHILIPS`, `WIKO`, `LENOVO`, `NUBIA`, `HISENSE`, `CHANGHONG`, `KIVI`, `MEIZU`, `TCL` … (+14 more, 39 total). |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/device-vendor/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-device-vendor-values.md)

Get device vendor targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/disable.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-disable.md)

Disable placement targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/dmp/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-dmp-create.md)

Create placement DMP targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `dmp` | form | string | yes | DMP — enum name or numeric ID Values: `FIRST_PARTY`, `DTSCOUT`, `AIDATA`, `LOTAME`, `SITEMATH`, `MEDIAQUARK`, `JOTTIX`. |
| `dmpSegmentId` | form | integer | yes | ID of a segment of that DMP |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/domain/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-domain-create.md)

Create placement domain targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `domain` | form | string | yes | Referrer domain name to target (e.g., 'example.com') |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/enable.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-enable.md)

Enable placement targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/hardware-rank/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-hardware-rank-create.md)

Create placement hardware rank targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `hardwareRank` | form | integer | yes | Hardware quality rank value to target |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/incognito-mode/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-incognito-mode-create.md)

Create placement incognito mode targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/ip-range/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-ip-range-create.md)

Create placement IP range targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `ipFrom` | form | string | yes | Start of the IP range in dotted-decimal (IPv4) or colon-hex (IPv6) notation |
| `ipTo` | form | string | yes | End of the IP range in dotted-decimal (IPv4) or colon-hex (IPv6) notation |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/is-web-app/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-is-web-app-create.md)

Create placement web app targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/language/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-language-create.md)

Create placement language targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `languageCode` | form | string | yes | ISO language code to target (e.g., 'en', 'de', 'fr') |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/language/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-language-values.md)

Get language targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/location/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-location-create.md)

Create placement location targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `countryCode` | form | string | yes | ISO alpha-2 country code (e.g., 'US', 'GB', 'DE') |
| `regionName` | form | string | no | Region or state name within the specified country (optional) |
| `cityName` | form | string | no | City name within the specified region (optional, requires regionName) |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/mobile-carrier/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-mobile-carrier-create.md)

Create placement mobile carrier targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `mobileCarriers` | form | array&lt;string&gt; | no | Mobile carrier names, spelled exactly as GET /rest-api/targeting/mobile-carrier/bycountry/values.do lists them; an unknown name answers 400 |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/mobile-carrier/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-mobile-carrier-values.md)

Get mobile carrier targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/operating-system/{osName}/versions.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-operating-system-versions.md)

Get OS version values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `osName` | path | string | yes | Operating system. Accepts enum name or integer ID for backward compatibility Values: `UNSPECIFIED`, `WINDOWS`, `LINUX`, `MAC_OS_X`, `IOS`, `IPADOS`, `ANDROID`, `SYMBIAN`, `J2ME`, `BLACKBERRY`, `XMB`, `BADA`, `PALM_OS`, `SOLARIS`, `MEEGO`, `CHROME_OS`, `FREE_BSD`, `WINDOWS_PHONE`, `SAMSUNG_TIZEN`, `HISENSE_VIDAA`, `LG_WEB_OS`, `ROKU_TV_OS`, `AMAZON_FIRE_TV`, `APPLE_TV`, `ANDROID_TV`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/operating-system/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-operating-system-create.md)

Create placement OS targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `operatingSystem` | form | string | yes | Operating system to target (e.g., WINDOWS, MACOS, LINUX, ANDROID, IOS) Values: `UNSPECIFIED`, `WINDOWS`, `LINUX`, `MAC_OS_X`, `IOS`, `IPADOS`, `ANDROID`, `SYMBIAN`, `J2ME`, `BLACKBERRY`, `XMB`, `BADA`, `PALM_OS`, `SOLARIS`, `MEEGO`, `CHROME_OS`, `FREE_BSD`, `WINDOWS_PHONE`, `SAMSUNG_TIZEN`, `HISENSE_VIDAA`, `LG_WEB_OS`, `ROKU_TV_OS`, `AMAZON_FIRE_TV`, `APPLE_TV`, `ANDROID_TV`. |
| `version` | form | string | no | Optional OS version: a version value from the OS versions endpoint (for example 16.-1 for iOS 16.x.x) or its title. An unknown version, or a version on an OS without versions, answers 400 with the valid versions |
| `relation` | form | string | no | Version comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL. Required when version is sent (a version without it answers 400); ignored without version Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/operating-system/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-operating-system-values.md)

Get OS targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/operation-between-rule-types.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-operation-between-rule-types.md)

Set how placement targeting rule types combine.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `operator` | form | string | yes | AND — every rule type must match; OR — any one rule type is enough Values: `AND`, `OR`. |

**Responses:** `200` — Success — the response carries the saved operationBetweenRuleTypes · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/platform-rank/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-platform-rank-create.md)

Create placement platform rank targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `platformRank` | form | integer | yes | Platform popularity rank value to target |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/preset-app-package/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-preset-app-package-create.md)

Create placement preset app package targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `appPackageGroupId` | form | integer | yes | Unique numeric ID of the preset application package group |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/preset-domain/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-preset-domain-create.md)

Create placement preset domain targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `domainGroupId` | form | integer | yes | Unique numeric ID of the preset domain group |

**Responses:** `200` — Success · `404` — Placement or domain group not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/preset-ip-ranges/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-preset-ip-ranges-create.md)

Create placement preset IP ranges targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `presetIpRangesGroupId` | form | integer | no | ID of the preset IP ranges group; also accepted as ipRangesGroupId. One of the two is required |
| `ipRangesGroupId` | form | integer | no | The same preset IP ranges group ID under its other name; presetIpRangesGroupId wins when both are sent |

**Responses:** `200` — Success · `404` — Placement or IP ranges group not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/price-band/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-price-band-create.md)

Create placement price band targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `priceBand` | form | number | yes | Device price band value to target |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/protocol/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-protocol-create.md)

Create placement protocol targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `protocol` | form | string | yes | Connection protocol to target — HTTP or HTTPS Values: `HTTP`, `HTTPS`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/proxy/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-proxy-create.md)

Create placement proxy targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `proxy` | form | string | yes | Proxy type to target: VPN, TOR, DCH (data center / hosting), PUB (public proxy), WEB (web proxy) or SES (search engine robot) Values: `VPN`, `TOR`, `DCH`, `PUB`, `WEB`, `SES`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/screen-resolution/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-screen-resolution-create.md)

Create placement screen resolution targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `relation` | form | string | yes | Comparison operator — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL, or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |
| `screenWidth` | form | integer | yes | Target screen width in pixels |
| `screenHeight` | form | integer | yes | Target screen height in pixels |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/screen-resolution/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-screen-resolution-values.md)

Get screen resolution targeting values for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/time-range/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-time-range-create.md)

Create placement time range targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `timeFrom` | form | string | yes | Start time in 24-hour format HH:MM (e.g., '09:00') |
| `timeTo` | form | string | yes | End time in 24-hour format HH:MM (e.g., '18:00') |
| `clientLocalTime` | form | boolean | no | If true, evaluate against viewer's local time; if false, use UTC |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/traffic-risk-score/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-traffic-risk-score-create.md)

Create placement traffic risk score targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `riskLevel` | form | string | yes | Traffic fraud risk level threshold. Accepts enum name or integer ID for backward compatibility Values: `NOT_SCORED`, `LOW`, `LIKELY`, `HIGH`, `VERY_HIGH`, `CERTAIN`. |
| `relation` | form | string | yes | Comparison relation — LOWER, GREATER, LOWER_EQUAL, GREATER_EQUAL or EQUAL Values: `LOWER`, `GREATER`, `LOWER_EQUAL`, `GREATER_EQUAL`, `EQUAL`. |
| `riskCategory` | form | array&lt;string&gt; | no | Array of risk categories for brand safety targeting. Accepts enum names (e.g. HIGH_RISK_IP), camelCase names (e.g. highRiskIP), or integer IDs Values: `HIGH_RISK_IP`, `HIGH_RISK_APP`, `APP_SPOOFING`, `DISPLAY_IMPRESSION_FRAUD`, `DEVICE_ID_STUFFING`, `DEFASED_APP`, `VIDEO_IMPRESSION_FRAUD`, `HIGH_RISK_DOMAIN`, `IAB_CRAWLER`, `DATACENTER`, `DISPLAY_CLICK_FRAUD`, `LOCATION_OBFUSCATION`, `HIJACKED_SESSION`, `COOKIE_STUFFING`, `DATACENTER_PROXY`, `PUBLISHER_FRAUD`, `IDIO_BOTS`, `TOR`, `AUTO_RELOADER`, `CLICK_FARM`, `BLANK_USER_AGENT`, `PHISHING`, `DOORWAY_SITE`, `IAB_DUMMY_BOT`, `FAST_CLICKER`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/traffic-source/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-traffic-source-create.md)

Create placement traffic source targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |
| `trafficSource` | form | string | yes | Traffic source to target Values: `HEADER_BIDDING`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/traffic-source/values.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-traffic-source-values.md)

Get traffic source values.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Not found — resource does not exist. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targeting/types.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targeting-types.md)

Get available targeting types for placement.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/placement/{placementId}/targeting/wifi-traffic/create.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/post-placement-targeting-wifi-traffic-create.md)

Create placement WiFi traffic targeting.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `rule` | form | string | yes | Targeting rule type — INCLUDE for whitelist or EXCLUDE for blacklist Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/placement/{placementId}/targetings.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/get-placement-targetings.md)

Get placement targeting rules.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |

**Responses:** `200` — Success · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### DELETE /rest-api/placement/{placementId}/targetings.do

[Request examples](https://epom.com/ad-server/docs/api/targeting-rules/delete-placement-targetings.md)

Delete all placement targeting rules.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | path | integer | yes | Unique numeric ID of the placement |
| `targetType` | form | string | no | Optional targeting type filter — only rules of this type are deleted Values: `COUNTRY`, `BROWSER_COUNTRY`, `LOCATION`, `LANGUAGE`, `MOBILE_CARRIER`, `TIME_RANGE`, `DAY_OF_WEEK`, `DATE_TIME`, `OPERATING_SYSTEM`, `BROWSER`, `DEVICE_FORMAT`, `DEVICE_VENDOR`, `RESOLUTION`, `PROTOCOL`, `WIFI_TRAFFIC`, `IS_WEB_APP`, `INCOGNITO_MODE`, `DEVICE_RELEASE_YEAR`, `DEVICE_RAM`, `BROWSER_RANK`, `HARDWARE_RANK`, `PLATFORM_RANK`, `PRICE_BAND`, `DOMAIN`, `CHANNEL` … (+18 more, 43 total). |
| `rule` | form | string | no | Optional rule filter — only INCLUDE or only EXCLUDE rules are deleted Values: `INCLUDE`, `EXCLUDE`, `MATCH`, `NOT_MATCH`. |

**Responses:** `200` — Success — the response carries the deleted count · `404` — Placement not found · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

## Related

- [REST API overview](https://epom.com/ad-server/docs/api.md) — authentication and conventions
- [API endpoint reference by tag](https://epom.com/ad-server/docs/api/endpoints.md)
- [Targeting, capping and limits via API](https://epom.com/ad-server/docs/api/targeting-capping-limits.md)

<!-- Generated from the OpenAPI spec. Do not edit by hand. -->