# Personalized Offers API

> Personalized Offers API on Apizie: 8 endpoints (Make Statement Credit Offer Available Redeemable, Returns Matched Offers, Returns Information on an Offer, Returns Redeemed Offers, …) returned as clean JSON through one API key. 8 endpoints are live now. Call it over REST at https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `open-data:mastercard-personalized-loyalty-offers`
- Category: Open Data
- Status: live
- Source: https://mastercard.com
- Page: https://zieapi.vercel.app/api/open-data/mastercard-personalized-loyalty-offers
- OpenAPI: https://zieapi.vercel.app/api/open-data/mastercard-personalized-loyalty-offers/openapi.json

This API provides content for financial instutions participating in Mastercard Personalized Offers to use in online and mobile banking applications for cardholders.

## Endpoints

### Make Statement Credit Offer Available Redeemable
`POST https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/post-activatestatementcreditoffer`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |
| OfferId | string | yes | System-wide identifier for the campaign, not intended for end-user display. |

### Returns Matched Offers
`GET https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/get-matchedoffers`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |
| Lang | string | no | When utilized with a multi-lingual implementation, may be the tongue and country of the user in ISO 639-1, underscore, ISO 3166-1 alpha-2… |
| MerchantName | string | no | Fuzzy term to search retailers with offers for the user. In general, searching of Matched Offers is not advised as users generally have a… |
| Category | string | no | Offer Categories. |
| OfferType | string | no | The kind of deal. POSTPAIDCREDIT- Statement Credit Offer, which is a discount that is automatically applied to the card linked to the user… |
| PageNumber | integer | no | Segment of offers to return. |
| ItemsPerPage | integer | no | Segment size of offer to be returned. Default is 25. |

### Returns Information on an Offer
`GET https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/get-offerdetails`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |
| OfferId | string | yes | System-wide identifier for the campaign, not intended for end-user display. |

### Returns Redeemed Offers
`GET https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/get-redeemedoffers`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |
| Lang | string | no | When utilized with a multi-lingual implementation, may be the tongue and country of the user in ISO 639-1, underscore, ISO 3166-1 alpha-2… |
| PageNumber | integer | no | Segment of offers to return. |
| ItemsPerPage | integer | no | Segment size of offer to be returned. Default is 25. |

### Returns Information About Redeemable Postpaid Credit Offer
`GET https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/get-statementcreditactivationdetail`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |
| ActivationId | string | yes | Distinct identifier for the offer being available for redemption by the user as returned by Activate Statement Credit Offer or Redeemed… |

### Provide User Feedback on Offer
`POST https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/post-userfeedback`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |
| OfferId | string | yes | System-wide identifier for the campaign, not intended for end-user display. |
| Feedback | integer | yes | User response to the offer. 0- Dislike offer. 1- Like offer. |

### Returns Savings for the User
`GET https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/get-usersavings`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| UserToken | string | yes | Session identifier as returned by the UserToken resource. |

### Returns User Session Token
`GET https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/get-usertoken`

| Parameter | Type | Required | Description |
|---|---|---|---|
| FId | string | yes | Financial Institution Identifier. Code that specifies the platform and configuration instance, provided by Mastercard during implementation. |
| AuthInfo | string | yes | Authorization Information. AES 128-bit encrypted concatenation of "User ID as specified in enrollment:FI ID as provided by… |

## Example
```
curl "https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/post-activatestatementcreditoffer" \
  -H "x-api-key: $APIZIE_KEY"
```

## FAQ

### How do I call the Personalized Offers API?
Create a free Apizie key, then send POST https://zieapi.vercel.app/v1/open-data:mastercard-personalized-loyalty-offers/post-activatestatementcreditoffer with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Personalized Offers API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card.

### Can AI agents use the Personalized Offers API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key open-data:mastercard-personalized-loyalty-offers.

### What is the status of the Personalized Offers API?
Live: works with just an Apizie key
