# Retrieving all point of promotion offers for a specific product

A Point of Promotion (POP) offer is a special discount or incentive provided at a specific stage in the shopping process to encourage buyers to complete their purchase. These offers can be triggered by various actions or conditions, such as always being available, providing a discount via a promotional URL, responding to external triggers, or applying a coupon code. POP offers are designed to enhance the shopping experience and boost sales by providing timely promotions.

You can access all point of promotion (POP) offers for a specific product. This allows you to gather information about various offers linked to the product, such as always-triggered offers, promotional URLs, externally triggered offers, and coupon code offers, even if the offer is not triggered. The following guide outlines the necessary steps and provides an example of retrieving these details effectively using the cURL command.

To retrieve all point of promotion (POP) offers for a specific product, send a [`GET`\
`/v1/shoppers/me/products/{productId}/point-of-promotions/{popName}/offers`](https://docs.digitalriver.com/commerce-api-references/shopper-apis/browse-product-discovery/offers#v1-shoppers-me-products-productid-point-of-promotions-popname-offers) request, providing the point of promotion name `{popName}` for the desired point of promotion. Replace `{API_key}` with your API key in the header. See [Query parameters](https://docs.digitalriver.com/commerce-api-references/shopper-apis/browse-product-discovery/offers#v1-shoppers-me-products-productid-point-of-promotions-popname-offers) for more information.

Here's an example using cURL:

{% tabs %}
{% tab title="cURL" %}

<pre class="language-http"><code class="lang-http">curl --location --request GET 
'https://api.digitalriver.com/v1/shoppers/me/products/{productId}/point-of-promotions/{popName}/offers' \
<strong>--header 'Authorization: Bearer &#x3C;API_key>' \
</strong><strong>...
</strong></code></pre>

{% endtab %}

{% tab title="200 OK response" %}

```json
{
  "offers": {
    "uri": "https://api.digitalriver.com/v1/shoppers/me/offers",
    "offer": [
      {
        "uri": "https://api.digitalriver.com/v1/shoppers/me/offers/154344709",
        "name": "Home Page Security & Backup Recovery Features",
        "trigger": "Always Triggered",
        "productOffers": {
          "uri": "https://api.digitalriver.com/v1/shoppers/me/offers/154344709/product-offers"
        },
        "categoryOffers": {},
        "offerBundleGroups": {}
      }
    ],
    "totalResults": 1,
    "totalResultPages": 1
  }
}
```

{% endtab %}
{% endtabs %}

The `200 OK` response indicates a successful retrieval of the offers. The JSON response includes:

* `offers`: An object containing details about the offers.
  * `uri`: The endpoint to get more information about the offers.
  * `offer`: An array of offers, each with:
    * `uri`: The link to the specific offer.
    * `name`: The name of the offer.
    * `trigger`: The type of trigger for the offer (e.g., "Always Triggered").
    * `productOffers`: A sub-object containing a `uri` to detailed product offers.
    * `categoryOffers` and `offerBundleGroups`: Empty objects in this example, meant for additional offer details if applicable.
  * `totalResults`: The total number of offers returned.
  * `totalResultPages`: The number of pages of results available.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.digitalriver.com/commerce-api/shopper-apis/product-discovery/offers/how-to-use-point-of-promotions-pops/retrieving-all-point-of-promotion-offers-for-a-specific-product.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
