# /coupons

## GET

A `GET` request can always be filtered by the get [parameters](http://docs.adnuntius.com/api/api-requests) defined in the introduction section of the api documentation.

**Example GET request:**

```http
GET https://api.adnuntius.com/api/v1/coupons?context=<context>
```

in order to see `HIDDEN` objects you will need to send `includeHidden=true`as a parameter to the `GET` query

## POST

```http
POST https://api.adnuntius.com/api/v1/coupons/<couponId>?context=<context>
```

**Example POST object:**

```javascript
{
    "name": "Coupon Name",
    "description": "Coupon description",
    "code": "CODE",
    "expiry": "P30D",
    "type": "MONETARY",
    "discountMonetary": {
        "currency": "USD",
        "amount": 10
    },
    "products": [ 
        "product_1",
        "product_2"
    ],
    "labels": [
        "MY_LABEL"
    ],
    "couponStatus": "PUBLISHED",
    "validFrom": "2016-01-01T10:20:30Z",
    "validTo": "2016-01-31T10:20:30Z",
    "oneTimeValidity": true,
    "couponEndDateType": "EXPIRY",
    "claimableAts": ["CAMPAIGN_CREATION", "SIGN_UP"]
}
```

| Name               | Required | Restriction                                            | Description                                                                                                                                                                                                                                                                                                                         |
| ------------------ | -------- | ------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| name               | Yes      | String                                                 | The name of the coupon.                                                                                                                                                                                                                                                                                                             |
| description        | Yes      | String                                                 | The description of the coupon.                                                                                                                                                                                                                                                                                                      |
| code               | Yes      | String                                                 | The promo code for the coupon.                                                                                                                                                                                                                                                                                                      |
| expiry             | Yes      | String                                                 | The expiry period of the coupon.                                                                                                                                                                                                                                                                                                    |
| type               | Yes      | `MONETARY`, `PERCENTAGE`                               | The discount type of the coupon.                                                                                                                                                                                                                                                                                                    |
| discountMonetary   |          | DiscountMonetary object (see below)                    | The monetary value of the coupon. This is required if discountType is `MONETARY`.                                                                                                                                                                                                                                                   |
| discountPercentage |          | Number                                                 | The percentage value of the coupon. This is required if discountType is `PERCENTAGE`.                                                                                                                                                                                                                                               |
| products           |          | Array                                                  | An array of Products that are eligible for the coupon discount. If no products are selected then the coupon will apply to all products.                                                                                                                                                                                             |
| labels             |          | Array                                                  | For searching purposes.                                                                                                                                                                                                                                                                                                             |
| couponStatus       | Yes      | `PENDING`, `PUBLISHED`, `STOPPED`                      | The status of the coupon. Once the coupon is `PUBLISHED` the detail of the coupon cannot be changed.                                                                                                                                                                                                                                |
| validFrom          | Yes      | String                                                 | An ISO 8601 date and time of when coupon is valid from.                                                                                                                                                                                                                                                                             |
| validTo            | Yes      | String                                                 | An ISO 8601 date and time of when coupon is valid to.                                                                                                                                                                                                                                                                               |
| oneTimeValidity    | Yes      | Boolean                                                | Specify whether the coupon is valid once. If true it is only valid once and cannot be reapplied.                                                                                                                                                                                                                                    |
| couponEndDateType  | Yes      | `EXPIRY`, `VALID_TO`, `GREATEST_OF_EXPIRY_OR_VALID_TO` | Specify when the coupon can be used until. For `EXPIRY` the coupon must be used before the `expiry` period has ended. For `VALID_TO` the coupon must be used before the `validTo` date. For `GREATEST_OF_EXPIRY_OR_VALID_TO` the coupon must be used before the latest value of `expiry` period has ended or before `validTo` date. |
| claimableAts       | Yes      | `SIGN_UP`, `CAMPAIGN_CREATION`                         | Specify where the coupon can be claimed. `SIGN_UP` can be claimed when signing up. `CAMPAIGN_CREATION` can be claimed when creating the campaign.                                                                                                                                                                                   |

### DiscountMonetary object

| Name     | Required | Restriction | Description                         |
| -------- | -------- | ----------- | ----------------------------------- |
| currency | Yes      | String      | The currency of the monetary value. |
| amount   | Yes      | Number      | The amount of the monetary value.   |


---

# 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.adnuntius.com/adnuntius-advertising/admin-api/endpoints/coupons.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.
