# Models

## The NewReward object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"NewReward":{"description":"Details of a new reward to create.","properties":{"type":{"type":"string","description":"The type of reward.","enum":["PCT_DISCOUNT","CREDIT","FUELTANK"]},"dateExpires":{"type":"integer","format":"int64","description":"Unix timestamp (milliseconds) when this reward is set to expire."},"dateScheduledFor":{"type":"integer","format":"int64","description":"Unix timestamp (milliseconds) when the reward is scheduled to become available."},"cancellable":{"type":"boolean","description":"If a reward is cancellable then it may be revoked. If it has been cancelled then dateCancelled will be non-null."},"unit":{"type":"string","description":"An identifier for the unit of the reward. E.g. `'credit-in-cents'`, `'freemb'`, `'giftcard20'`, `'tshirt'`, `'freemonth'` or `'%'`. Works with: `CREDIT`"},"discountPercent":{"type":"integer","description":"The percent discount. E.g. 10 means 10% Works with: `PCT_DISCOUNT`"},"assignedCredit":{"type":"integer","description":"The earned quantity of the reward. Works with: `CREDIT`"},"currency":{"type":"string","description":"For programs that require a currency. Works with: `CREDIT`"},"fuelTankType":{"type":"string","description":"The type of reward associated with this fueltank code. Works with: `FUELTANK`","enum":["PCT_DISCOUNT","CREDIT"]},"fuelTankCode":{"type":"string","description":"The fueltank code associated with this reward. Works with: `FUELTANK`."},"amount":{"type":"integer","description":"The earned quantity of the reward. Works with: `FUELTANK`"}}}}}}
```

## The RewardList object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"RewardList":{"type":"array","description":"A list of Reward objects.","items":{"$ref":"#/components/schemas/Reward"}},"Reward":{"title":"Reward","description":"Rewards are used by impact.com to track the credits, discounts, gift cards and other prizes that a User earns.","properties":{"id":{"type":"string","description":"The unique identifier for this reward"},"uniqueId":{"type":"string","nullable":true,"description":"A secondary unique identifier for this reward."},"dateCreated":{"type":"integer","format":"int64","description":"Unix timestamp (milliseconds) when the reward record was created."},"programId":{"type":"string","nullable":true,"description":"The ID of the program this reward belongs to. Null if not associated with a specific program."},"programRewardKey":{"type":"string","nullable":true,"description":"The program-level key identifying the reward configuration."},"globalRewardKey":{"type":"string","nullable":true,"description":"The global key identifying the reward configuration."},"referralId":{"type":"string","nullable":true,"description":"The ID of the referral that triggered this reward. Null if the reward was created manually."},"type":{"type":"string","description":"The type of reward.","enum":["PCT_DISCOUNT","CREDIT","FUELTANK"]},"dateGiven":{"type":"integer","format":"int64","description":"Unix timestamp (milliseconds) when this reward was earned."},"dateExpires":{"type":"integer","format":"int64","nullable":true,"description":"Unix timestamp (milliseconds) when this reward expires. Null if the reward does not expire."},"dateCancelled":{"type":"integer","format":"int64","nullable":true,"description":"Unix timestamp (milliseconds) when the reward was cancelled. Null if it has never been cancelled."},"dateScheduledFor":{"type":"integer","format":"int64","nullable":true,"description":"Unix timestamp (milliseconds) when the reward is scheduled to become available. Null if available immediately."},"cancellable":{"type":"boolean","description":"If a reward is cancellable then it may be revoked. If it has been cancelled then `dateCancelled` will be non-null."},"rewardSource":{"type":"string","description":"The type of the source of the reward.","enum":["FRIEND_SIGNUP","REFERRED","MANUAL"]},"unit":{"type":"string","description":"An identifier for the unit of the reward. E.g. `'credit-in-cents'`, `'freemb'`, `'giftcard20'`, `'tshirt'`, `'freemonth'` or `'%'`"},"discountPercent":{"type":"integer","description":"The percent discount. E.g. 10 means 10% Works with: `PCT_DISCOUNT`"},"name":{"type":"string","description":"The human-readable name of the reward."},"description":{"type":"string","description":"The human-readable description of the reward. Works with: `INTEGRATION`"},"assignedCredit":{"type":"integer","description":"The earned quantity of the reward. Works with: `CREDIT`"},"redeemedCredit":{"type":"integer","description":"The redeemed quantity of the reward. Works with: `CREDIT`"},"redemptions":{"type":"array","items":{"$ref":"#/components/schemas/Redemption"}},"currency":{"type":"string","description":"For programs that require a currency. Works with: `CREDIT`"},"amount":{"type":"integer","description":"The earned quantity of the reward. Works with: `FUELTANK`"},"fuelTankCode":{"type":"string","description":"The fueltank code associated with this reward. Works with: `FUELTANK`"},"fueltankType":{"type":"string","description":"The type of reward associated with this fueltank code. Works with: `FUELTANK`.","enum":["PCT_DISCOUNT","CREDIT"]}}},"Redemption":{"title":"A redemption object","description":"Details about when a quantity of a reward was redeemed from the impact.com system.","properties":{"id":{"type":"string","description":"The unique identifier for this redemption"},"dateRedeemed":{"type":"integer","description":"Timestamp of when this redemption took place."},"quantityRedeemed":{"type":"integer","description":"the amount of the reward that was redeemed."}}}}}}
```

## The Reward object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"Reward":{"title":"Reward","description":"Rewards are used by impact.com to track the credits, discounts, gift cards and other prizes that a User earns.","properties":{"id":{"type":"string","description":"The unique identifier for this reward"},"uniqueId":{"type":"string","nullable":true,"description":"A secondary unique identifier for this reward."},"dateCreated":{"type":"integer","format":"int64","description":"Unix timestamp (milliseconds) when the reward record was created."},"programId":{"type":"string","nullable":true,"description":"The ID of the program this reward belongs to. Null if not associated with a specific program."},"programRewardKey":{"type":"string","nullable":true,"description":"The program-level key identifying the reward configuration."},"globalRewardKey":{"type":"string","nullable":true,"description":"The global key identifying the reward configuration."},"referralId":{"type":"string","nullable":true,"description":"The ID of the referral that triggered this reward. Null if the reward was created manually."},"type":{"type":"string","description":"The type of reward.","enum":["PCT_DISCOUNT","CREDIT","FUELTANK"]},"dateGiven":{"type":"integer","format":"int64","description":"Unix timestamp (milliseconds) when this reward was earned."},"dateExpires":{"type":"integer","format":"int64","nullable":true,"description":"Unix timestamp (milliseconds) when this reward expires. Null if the reward does not expire."},"dateCancelled":{"type":"integer","format":"int64","nullable":true,"description":"Unix timestamp (milliseconds) when the reward was cancelled. Null if it has never been cancelled."},"dateScheduledFor":{"type":"integer","format":"int64","nullable":true,"description":"Unix timestamp (milliseconds) when the reward is scheduled to become available. Null if available immediately."},"cancellable":{"type":"boolean","description":"If a reward is cancellable then it may be revoked. If it has been cancelled then `dateCancelled` will be non-null."},"rewardSource":{"type":"string","description":"The type of the source of the reward.","enum":["FRIEND_SIGNUP","REFERRED","MANUAL"]},"unit":{"type":"string","description":"An identifier for the unit of the reward. E.g. `'credit-in-cents'`, `'freemb'`, `'giftcard20'`, `'tshirt'`, `'freemonth'` or `'%'`"},"discountPercent":{"type":"integer","description":"The percent discount. E.g. 10 means 10% Works with: `PCT_DISCOUNT`"},"name":{"type":"string","description":"The human-readable name of the reward."},"description":{"type":"string","description":"The human-readable description of the reward. Works with: `INTEGRATION`"},"assignedCredit":{"type":"integer","description":"The earned quantity of the reward. Works with: `CREDIT`"},"redeemedCredit":{"type":"integer","description":"The redeemed quantity of the reward. Works with: `CREDIT`"},"redemptions":{"type":"array","items":{"$ref":"#/components/schemas/Redemption"}},"currency":{"type":"string","description":"For programs that require a currency. Works with: `CREDIT`"},"amount":{"type":"integer","description":"The earned quantity of the reward. Works with: `FUELTANK`"},"fuelTankCode":{"type":"string","description":"The fueltank code associated with this reward. Works with: `FUELTANK`"},"fueltankType":{"type":"string","description":"The type of reward associated with this fueltank code. Works with: `FUELTANK`.","enum":["PCT_DISCOUNT","CREDIT"]}}},"Redemption":{"title":"A redemption object","description":"Details about when a quantity of a reward was redeemed from the impact.com system.","properties":{"id":{"type":"string","description":"The unique identifier for this redemption"},"dateRedeemed":{"type":"integer","description":"Timestamp of when this redemption took place."},"quantityRedeemed":{"type":"integer","description":"the amount of the reward that was redeemed."}}}}}}
```

## The RewardDebitRequest object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"RewardDebitRequest":{"description":"A request to debit a single reward","required":["amount","unit"],"properties":{"amount":{"type":"integer","description":"The amount of credit to be debitted."},"unit":{"type":"string","description":"The type of credit to be debitted. E.g. \"free-months\" or \"cents\""}}}}}}
```

## The RewardDebitResponse object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"RewardDebitResponse":{"description":"Details about a successful Reward Balance Debit transaction.","properties":{"creditRedeemed":{"type":"integer","description":"The amount of credit that was just debitted."},"creditAvailable":{"type":"integer","description":"The remaining credit in this account of the same unit type."},"unit":{"type":"string","description":"The type of credit that was just debitted."}}}}}}
```

## The Redemption object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"Redemption":{"title":"A redemption object","description":"Details about when a quantity of a reward was redeemed from the impact.com system.","properties":{"id":{"type":"string","description":"The unique identifier for this redemption"},"dateRedeemed":{"type":"integer","description":"Timestamp of when this redemption took place."},"quantityRedeemed":{"type":"integer","description":"the amount of the reward that was redeemed."}}}}}}
```

## The Error object

```json
{"openapi":"3.1.0","info":{"title":"impact.com API - Reward","version":"1.0.0"},"components":{"schemas":{"Error":{"properties":{"statusCode":{"description":"The HTTP status code of the error","type":"integer","format":"int32"},"message":{"description":"The human-readable description of what went wrong. Use this to help you debug.","type":"string"},"apiErrorCode":{"description":"A machine-readable error code","type":"string"},"rsCode":{"description":"A secondary machine-readable error code","type":"string"}}}}}}
```


---

# 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/brand-api-reference/advocate-api-reference-v1/reference/reward-overview/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.
