# Models

## The PromoCode object

```json
{"openapi":"3.1.0","info":{"title":"Partner Promo Codes API","version":"16"},"components":{"schemas":{"PromoCode":{"type":"object","properties":{"Id":{"type":"string","description":"Unique identifier assigned to the promo code."},"Code":{"type":"string","description":"The alphanumeric string customers enter at checkout to redeem the offer."},"State":{"type":"string","enum":["ACTIVE","FUTUREDATE","EXPIRED"],"description":"Current state of the promo code."},"Program":{"type":"object","description":"The brand program this promo code belongs to.","properties":{"Id":{"type":"string","description":"Unique identifier for the program."},"Name":{"type":"string","description":"Display name of the program."},"Uri":{"type":"string","description":"API resource path for this program."},"LogoUri":{"type":"string","description":"API resource path to the program's logo image."}}},"Advertiser":{"type":"object","description":"The brand (advertiser) that issued this promo code.","properties":{"Id":{"type":"string","description":"Unique identifier for the advertiser."},"Name":{"type":"string","description":"Display name of the advertiser."},"Uri":{"type":"string","description":"API resource path for this advertiser."},"LogoUri":{"type":"string","description":"API resource path to the advertiser's logo image."}}},"Deal":{"type":"object","description":"The deal this promo code is associated with, if any.","properties":{"Id":{"type":"string","description":"Unique identifier for the deal."},"Name":{"type":"string","description":"Display name of the deal."},"Uri":{"type":"string","description":"API resource path for this deal."}}},"MatchMode":{"$ref":"#/components/schemas/MatchMode"},"CreditRule":{"$ref":"#/components/schemas/CreditRule"},"CreatedDate":{"type":"string","format":"date-time","description":"Date and time the promo code was created (ISO 8601)."},"StartDate":{"type":"string","format":"date-time","description":"Date and time the promo code becomes active (ISO 8601). Only returned when the code is scheduled with a start date."},"EndDate":{"type":"string","format":"date-time","description":"Date and time the promo code expires (ISO 8601). Only returned when the code is scheduled with an end date."},"Uri":{"type":"string","format":"uri","description":"API resource path for this promo code."}}},"MatchMode":{"type":"string","enum":["LI","RE"],"description":"How the promo code value is matched against codes used at checkout.\n\n- `LI`: Literal — the code must match exactly.\n- `RE`: Regex — the code is interpreted as a regular expression.\n"},"CreditRule":{"type":"string","enum":["ALWAYS","INVOLVED","WINNER"],"description":"When the partner is credited for a conversion that used this code.\n\n- `ALWAYS`: The partner is always credited.\n- `INVOLVED`: Credited only when involved in the click path leading to the sale.\n- `WINNER`: Credited only when the partner drove the last click before the sale.\n"}}}}
```

## The MatchMode object

```json
{"openapi":"3.1.0","info":{"title":"Partner Promo Codes API","version":"16"},"components":{"schemas":{"MatchMode":{"type":"string","enum":["LI","RE"],"description":"How the promo code value is matched against codes used at checkout.\n\n- `LI`: Literal — the code must match exactly.\n- `RE`: Regex — the code is interpreted as a regular expression.\n"}}}}
```

## The CreditRule object

```json
{"openapi":"3.1.0","info":{"title":"Partner Promo Codes API","version":"16"},"components":{"schemas":{"CreditRule":{"type":"string","enum":["ALWAYS","INVOLVED","WINNER"],"description":"When the partner is credited for a conversion that used this code.\n\n- `ALWAYS`: The partner is always credited.\n- `INVOLVED`: Credited only when involved in the click path leading to the sale.\n- `WINNER`: Credited only when the partner drove the last click before the sale.\n"}}}}
```


---

# 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://integrations.impact.com/partner-api-reference/reference/promo-codes/models.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.
