Docs/Public API/Redemptions API

Redemptions API

Store signed redemption actions and read completed redemption events.

POST /redemptions#

Store a brand-signed redemption.

Request bodyjson
{
  "redemption": {
    "issuer": "0x1111111111111111111111111111111111111111",
    "from": "0x2222222222222222222222222222222222222222",
    "loyaltyId": "0x4242424242424242424242424242424242424242424242424242424242424242",
    "amount": "250",
    "expiresAt": "0",
    "deadline": "0",
    "nonce": "0x7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a",
    "chainId": "8453",
    "verifyingContract": "0x3333333333333333333333333333333333333333",
    "operationHash": "0x9999999999999999999999999999999999999999999999999999999999999999",
    "data": "0x"
  },
  "signature": "0xababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababababab"
}
Responsejson
{
  "ok": true,
  "duplicate": false,
  "operation": {
    "id": "128",
    "kind": "redemption",
    "status": "pending",
    "chainId": "8453",
    "issuer": "0x1111111111111111111111111111111111111111",
    "holder": "0x2222222222222222222222222222222222222222",
    "loyaltyId": "0x4242424242424242424242424242424242424242424242424242424242424242",
    "amount": "250",
    "expiresAt": "0",
    "deadline": "0",
    "nonce": "0x7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a"
  }
}

GET /redemptions#

List completed redemption events.

List completed redemptionsbash
curl "https://api.loyfin.com/redemptions?issuer=0x1111111111111111111111111111111111111111&limit=25"

Filters: cursor, limit, issuer, from, loyaltyId, token, and operationHash.

Objects#

POST /redemptions returns a stored SignedOperation. GET /redemptions returns completed Redemption event objects.