REST API

Redemption Feed: Learn about the structure and delivery of our Redemption Feed, a data file securely provided to our partners, essential for verification, reconciliation, and partners sharing with their merchants.


📚

Quick Links:

Abstract

The Redemptions API facilitates the structured retrieval of daily partner redemption data through a RESTful HTTP interface. The API provides a simple and secure mechanism for partners to request redemption files for a specified date.

This document outlines the use of a REST API to obtain a downloadable redemption data file via a pre-signed URL.

Partners interact with the API by sending GET requests to retrieve a time-limited download link for a redemption file corresponding to a specific UTC date, typically the previous day. The response contains metadata about the file, including its name and expiration window. Access to the redemption file is secured using a pre-signed URL that is valid for a limited duration.

The document includes endpoint details and emphasizes that proper usage ensures timely and reliable access to daily redemption data.

Purpose

  • Redemptions API that partners can invoke to retrieve daily redemption data files for their processed transactions.
  • Partners can invoke this API to access redemption data for a specified UTC date.

How It Works

  • We provide a REST API to make it easier for partners to retrieve daily redemption data files
📘

Please keep the following in mind:

  • Date must be a past date (not today or a future date).
  • Redemptions can have up to 7-14 days delay due to a lag time in data delivery from some publishers.

Recommendations on how to call

  • Partners should call the endpoint /api/v1/partner/redemptions once per day to retrieve redemption data.
  • The request should be made for the previous calendar day in UTC, using the date query parameter in YYYY-MM-DD format.
    • Example: If today is 2026-01-06 (UTC), request redemptions for 2026-01-05.
  • The response contains a pre-signed URL that provides temporary access to a file containing redemption records for the requested date.
  • The pre-signed URL is valid for 60 minutes. Partners should download the file within this time window.
  • Partners should use the returned url field to download the redemption file. The fileName field indicates the name of the file that will be downloaded
❗️

Important: Because offers running on our network across our supply are activatable card-linked offers, we are obligated to our consumers who activated to retain the offers until redemption expiry. When a Partner sends a signal to "take down" or delete a merchant offer, note that for any customer that activates the offer, it will continue to be valid and paid out for redemption until the remaining 30-45 day redemption period winds down. For these reasons, you may still see redemptions for those dates post merchant offer deletion.

Guard Rails

  • Every Partner will be provided with a daily quota of the number of calls they can make, this should be ~ Number of merchant offers
  • Every Partner will be provided with an RPS, for example, 10 calls per second
  • API will return HTTP 429 if a Partner exceeds the quota of the daily limit or RPS

Endpoint Details

Get daily redemptions pre-signed URL

Hostname (Production)api.cardlytics.com
Hostname (Sandbox)api-sandbox.cardlytics.com
Endpoint/api/v1/partner/redemptions
MethodGET
Acceptapplication/json
Request PayloadRequest Schema
ResponseResponse Schema and Payload Sample

Request Schema

FieldData TypeRequiredNotes
dateStringYesDate for which to retrieve redemptions (format: YYYY-MM-DD). Must be a past date (not today or a future date).

Response Schema

FieldData TypeNotes
urlStringPre-signed S3 URL to download the redemption file for the requested date. The URL is time-bound and valid for the duration specified by expiresIn.
expiresInNumericTime in seconds for which the pre-signed URL remains valid (currently 3600 seconds / 60 minutes).
dateStringDate for which redemptions were requested (format: YYYY-MM-DD). This value always matches the request date.
fileNameStringName of the redemption file that will be downloaded when accessing the URL.

Response Payload Sample

{
    "url": "https://external-tpc-partner-data-prod.s3.us-east-1.amazonaws.com/PARTNER_CODE/daily-redemptions/2026-01-04-201601-257-rp75AQT9.csv?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=ASIARGSNQZNSIIAXF4D3%2F20260106%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260106T225005Z&X-Amz-Expires=3600&X-Amz-Security-Token=IQoJb3JpZ2luX2VjEJ%2F%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEaCXVzLWVhc3QtMSJHMEUCIQCFSoHO%2FRDBoVfl6ZlWxL%2BB%2Fvl1w5pC1GDooTe8ixVAxAIgLQRvbt%2Bm5jjMamGgE8kdHuiJmZisTdo0wZZOSnOoGXYqsQMIaBABGgwwODI4NDA3MDE3OTYiDBhPUcg5wXS93VMmQCqOAzjC1KsO6Alzm%2FUEAbPQRtvt5EaVVwpR3pKDM8H8b2pW0uWqioz%2FQZ9ZlLwSRX0FK1Ord4g0wwOq5vXqKnsvgQIPW1t67LYUXeLeCVzgE4IIVOEbR4DhCCAz5Oh8ZlcIQox03OlcVzObN94isw%2FyEztLj9zaDNELPCPB6MeNihxc%2FMG%2FyiDcNl%2FL9fF8K8NinhezWstv%2BLOBdft9C6wFdqkOGhn%2F4WLTgYTTqOZlNsofzSePNsC0Ji9hIYUdBdJhCyw2XJDRGAilhV2GQl%2Fk05qXh61b9uVN3qKc9RVaSculJHswFwHtziwpu%2By8yoPV7JpGL65xXdfG8bUJSikHqvnlElr5tETwxe4RyrrLIerEce4jjI%2FuGMKFt58jfNRp6GFoPBv%2FKvM3zytIp8MdmOZWLTUTRtZ5EFtWiGk0Hhcw%2BT572IVZz8Y7uq96Py2M8S4cLdTRSp6gXcnsFrGHVLab%2BOHwFRJICivHHfSWqQsZpMr2tQ363hjIkHj4aRHKtYm8a8m8CiQTBLKAeoHJMJuj9soGOp0BTfV6bYCn3iCB0rnIFHov%2BZBsZcTy4Kr3LSUS1MLpdAEad1A%2BFpR%2BjC8nNlBLjnxZ6XlAQ3C4uGybn04DobQy%2F6NlhGOsMg2TZx4LqY7yQYJbW1Pg8vR%2BYL4KN2VnqCblZv5tsj0hBwnVOcgjQpL%2BCdFsrn%2Bsehl2cZFDesd3siWyirUcfRjncF7PMsJHYqoDpwqy3tAi6l2VH4qTBA%3D%3D&X-Amz-Signature=277520c54f3723bdb58d6326640a339cef60a2a7b4919512e824e457deee7c69&X-Amz-SignedHeaders=host&x-id=GetObject",
    "expiresIn": 3600,
    "date": "2026-01-04",
    "fileName": "2026-01-04-201601-257-rp75AQT9.csv"
}
📘

Interactive API Testing

Ready to test the API? 👉 Visit our Interactive API Reference to try out endpoints with real requests.