---
title: "Piggybacks API endpoints"
description: "Endpoint reference for the Piggybacks tag (18 endpoints): Piggyback tracking pixel management for campaigns, placements, and sites"
type: "reference"
audience: [network-manager, admin]
keywords: [api, rest, endpoints, piggybacks]
---

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.

# Piggybacks API endpoints

Piggyback tracking pixel management for campaigns, placements, and sites. 18 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.

### DELETE /rest-api/piggyback/campaign/{id}.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/delete-piggyback-campaign.md)

Delete campaign piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | path | integer | yes | The unique numeric identifier of the piggyback tracking pixel to delete |

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

### POST /rest-api/piggyback/campaign/disable.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-campaign-disable.md)

Disable campaign piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | form | integer | yes | The unique numeric identifier of the campaign whose piggyback pixels should be disabled |

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

### POST /rest-api/piggyback/campaign/enable.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-campaign-enable.md)

Enable campaign piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | form | integer | yes | The unique numeric identifier of the campaign whose piggyback pixels should be enabled |

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

### GET /rest-api/piggyback/campaign/get.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/get-piggyback-campaign.md)

Get campaign piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | query | integer | yes | The unique numeric identifier of the campaign whose piggyback tracking pixels should be retrieved |

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

### POST /rest-api/piggyback/campaign/save.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-campaign-save.md)

Save campaign piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `campaignId` | form | integer | yes | The unique numeric identifier of the campaign to attach the new piggyback tracking pixel to |
| `actionId` | form | integer | conditional | Conditionally required — when allActions is false; ignored when it is true. The unique numeric identifier of the action to attach the piggyback to |
| `allActions` | form | boolean | no | When true, the piggyback is applied to all actions of the campaign, making actionId unnecessary |
| `siteId` | form | integer | no | Optional site ID to scope this piggyback to a specific site within the campaign |
| `placementId` | form | integer | no | Optional placement ID to scope this piggyback to a specific placement within the campaign |
| `id` | form | integer | no | ID of an existing piggyback of this campaign to edit instead of creating a new one; one that is not the campaign's answers 400 |
| `active` | form | boolean | no | Whether this piggyback is active |
| `codeUrl` | form | string | no | Piggyback URL or HTML/JavaScript code |
| `deliveryAttribution` | form | string | no | Which conversions this piggyback fires for: ALL, POST_CLICK_ONLY or POST_VIEW_ONLY Values: `ALL`, `POST_CLICK_ONLY`, `POST_VIEW_ONLY`. |
| `sampling` | form | integer | no | Sampling rate percentage (0-100) controlling how often the piggyback fires |
| `type` | form | string | no | Piggyback type: URL (a URL fired as a pixel) or BEACON (an HTML/JavaScript snippet) Values: `BEACON`, `URL`. |

**Responses:** `200` — Campaign piggyback saved successfully · `404` — Campaign, site or placement not found or deleted · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/campaign/update.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-campaign-update.md)

Update campaign piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `campaignId` | form | integer | yes | The unique numeric identifier of the campaign whose piggyback pixels should be updated |

**Request body** (`application/json`, required): JSON array of objects.

**Responses:** `200` — Campaign piggyback updated successfully · `404` — Campaign, site or placement not found or deleted · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/placement.do

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

Save placement piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | form | integer | yes | The unique numeric identifier of the placement to attach the new piggyback tracking pixel to |
| `campaignId` | form | integer | yes | The unique numeric identifier of the campaign that the placement belongs to |
| `actionId` | form | integer | conditional | Conditionally required — when allActions is false; ignored when it is true. The unique numeric identifier of the action to attach the piggyback to |
| `allActions` | form | boolean | no | When true, the piggyback is applied to all actions of the campaign, making actionId unnecessary |
| `id` | form | integer | no | ID of an existing piggyback of this placement to edit instead of creating a new one; one that is not the placement's answers 400 |
| `active` | form | boolean | no | Whether this piggyback is active |
| `codeUrl` | form | string | no | Piggyback URL or HTML/JavaScript code |
| `deliveryAttribution` | form | string | no | Which conversions this piggyback fires for: ALL, POST_CLICK_ONLY or POST_VIEW_ONLY Values: `ALL`, `POST_CLICK_ONLY`, `POST_VIEW_ONLY`. |
| `sampling` | form | integer | no | Sampling rate percentage (0-100) controlling how often the piggyback fires |
| `type` | form | string | no | Piggyback type: URL (a URL fired as a pixel) or BEACON (an HTML/JavaScript snippet) Values: `BEACON`, `URL`. |

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

### POST /rest-api/piggyback/placement/{id}/delete.do

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

Delete a placement piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | path | integer | yes | The unique numeric identifier of the piggyback to delete |

**Responses:** `200` — Piggyback deleted · `404` — No placement piggyback with this id. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/placement/{id}/update.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-placement-update.md)

Update a placement piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | path | integer | yes | The unique numeric identifier of the piggyback to change |
| `actionId` | form | integer | no | Fire only for this action; ignored when allActions is true |
| `active` | form | boolean | no | Whether the piggyback fires |
| `allActions` | form | boolean | no | true to fire for every action of the campaign |
| `codeUrl` | form | string | no | New tracking code (BEACON) or URL (URL type) |
| `deliveryAttribution` | form | string | no | Which conversions the piggyback fires for: ALL, POST_CLICK_ONLY or POST_VIEW_ONLY Values: `ALL`, `POST_CLICK_ONLY`, `POST_VIEW_ONLY`. |
| `sampling` | form | integer | no | Percentage of conversions the piggyback fires on (0-100) |

**Responses:** `200` — Piggyback updated (success:true), or success:false with per-field 'errors' · `404` — No placement piggyback with this id. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/placement/disable.do

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

Disable placement piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | form | integer | yes | The unique numeric identifier of the placement whose piggyback pixels should be disabled |

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

### POST /rest-api/piggyback/placement/enable.do

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

Enable placement piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | form | integer | yes | The unique numeric identifier of the placement whose piggyback pixels should be enabled |

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

### GET /rest-api/piggyback/placement/get.do

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

Get placement piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `placementId` | query | integer | yes | The unique numeric identifier of the placement whose piggyback tracking pixels should be retrieved |

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

### POST /rest-api/piggyback/site.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-site.md)

Save site piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `siteId` | form | integer | yes | The unique numeric identifier of the site to attach the new piggyback tracking pixel to |
| `actionId` | form | integer | conditional | Conditionally required — when allActions is false; ignored when it is true. The unique numeric identifier of the action to attach the piggyback to |
| `allActions` | form | boolean | no | When true, the piggyback is applied to all actions, making actionId unnecessary |
| `campaignId` | form | integer | no | Optional campaign ID to associate the piggyback with a specific campaign |
| `id` | form | integer | no | ID of an existing piggyback of this site to edit instead of creating a new one; one that is not the site's answers 400 |
| `active` | form | boolean | no | Whether this piggyback is active |
| `codeUrl` | form | string | no | Piggyback URL or HTML/JavaScript code |
| `deliveryAttribution` | form | string | no | Which conversions this piggyback fires for: ALL, POST_CLICK_ONLY or POST_VIEW_ONLY Values: `ALL`, `POST_CLICK_ONLY`, `POST_VIEW_ONLY`. |
| `sampling` | form | integer | no | Sampling rate percentage (0-100) controlling how often the piggyback fires |
| `type` | form | string | no | Piggyback type: URL (a URL fired as a pixel) or BEACON (an HTML/JavaScript snippet) Values: `BEACON`, `URL`. |

**Responses:** `200` — Site piggyback saved successfully · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/site/{id}/delete.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-site-delete.md)

Delete a site piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | path | integer | yes | The unique numeric identifier of the piggyback to delete |

**Responses:** `200` — Piggyback deleted · `404` — No site piggyback with this id. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/site/{id}/update.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-site-update.md)

Update a site piggyback.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | path | integer | yes | The unique numeric identifier of the piggyback to change |
| `actionId` | form | integer | no | Fire only for this action; ignored when allActions is true |
| `active` | form | boolean | no | Whether the piggyback fires |
| `allActions` | form | boolean | no | true to fire for every action of the campaign |
| `codeUrl` | form | string | no | New tracking code (BEACON) or URL (URL type) |
| `deliveryAttribution` | form | string | no | Which conversions the piggyback fires for: ALL, POST_CLICK_ONLY or POST_VIEW_ONLY Values: `ALL`, `POST_CLICK_ONLY`, `POST_VIEW_ONLY`. |
| `sampling` | form | integer | no | Percentage of conversions the piggyback fires on (0-100) |

**Responses:** `200` — Piggyback updated (success:true), or success:false with per-field 'errors' · `404` — No site piggyback with this id. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/site/disable.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-site-disable.md)

Disable site piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | form | integer | yes | The unique numeric identifier of the site whose piggyback pixels should be disabled |

**Responses:** `200` — Site piggybacks disabled successfully · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### POST /rest-api/piggyback/site/enable.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/post-piggyback-site-enable.md)

Enable site piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `id` | form | integer | yes | The unique numeric identifier of the site whose piggyback pixels should be enabled |

**Responses:** `200` — Site piggybacks enabled successfully · `500` — Internal server error. Errors follow the [shared conventions](https://epom.com/ad-server/docs/api.md#error-codes).

### GET /rest-api/piggyback/site/get.do

[Request examples](https://epom.com/ad-server/docs/api/piggybacks/get-piggyback-site.md)

Get site piggybacks.

| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
| `siteId` | query | integer | yes | The unique numeric identifier of the site whose piggyback tracking pixels should be retrieved |

**Responses:** `200` — Site piggybacks retrieved successfully · `404` — Site not found. 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)
- [Network services and miscellaneous APIs](https://epom.com/ad-server/docs/api/network-and-misc.md)

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