After setting a webhook URL using the webhook API endpoints, any gift event (like sent, redeemed, etc) will trigger an HTTP POST request to the set URL. These POST requests will have a JSON payload that describes the gift event that occurred and the gift it is associated with.

{
  "data": {
    "id": "GB1600D90811L",
    "type": "gift-events",
    "attributes": {
      "event": "redeemed",
      "created-at":"2015-11-12T15:10:00.013Z",
      "message": null
    },
    "relationships": {
      "gift": {
        "data": { "id": "GB1600D90811L", "type": "gifts" }
      }
    }
  },
  "included": [
    {
    	"id": "GB1600D90811L",
      "type": "gifts",
      "attributes": {
        "external-id": "GB1600D90811L",
        "team": "sandbox",
        "sender-name": "Dimitri Roche",
        "untie-url": "http://www.loopandtie.com/untie/jFAxxxxxxxxxxx",
        "delivery-method": "email",
        "email": "[email protected]",
        "stage": "redeemed",
        "last-event-at": "2015-11-12T15:10:00.013Z",
        "scheduled-at": "2016-11-12T15:06:49.000Z",
        "subject": "Peter Sent You A Gift!",
        "message": "Better than Bob",
        "from": "Peter Tosh",
        "thank-you-note": null,
        "selected-product": {
          "data": {
            "id": "PA91A8633GBFE",
            "type": "products",
            "attributes": {
              "name": "Native Planter",
              "image-url": "https://d2ncrfzc0pt6uh.cloudfront.net/uploads/products/2396/1507048672/images/1/legacy.jpg?1507048672"
            }
          }
        },
        "variant": {
          "data": {
            "id": "999",
            "type": "variants",
            "attributes": {
              "name":"Smoke Grey",
              "image-url": "https://d2ncrfzc0pt6uh.cloudfront.net/uploads/variants/2680/1506561278/image/legacy.jpg?1506561278"
            }
          }
        },
      	"redemption-email": "[email protected]",
        "events": [
          {"stage": "scheduled", "message": null, "created-at": "2015-11-12T15:04:00.018Z"},
          {"stage": "sent", "message": null, "created-at": "2015-11-12T15:06:00.000Z"},
          {"stage": "redeemed", "message": null, "created-at": "2015-11-12T15:10:00.013Z"}
        ]
      },
      "relationships": {
      	"sender": { "data": { "id": "1", "type": "users" } },
      	"collection": { "data": { "id": "4", "type": "collections" } },
      	"logo": { "data": { "id": "126", "type": "logos" } },
      	"design": { "data": { "id": "standard-gift-of-choice-v2", "type": "designs" } }
    	}
  	}
  ]
}

Possible values for the event attribute, which corresponds to the kind of event that occurred, are: sent, opened, redeemed, bounced, shipped, canceled, declined, delivered, messaged and thanked

Webhooks that fail to deliver will be retried up to 3 times, at intervals of 1 minute, 10 minutes and 1 hour since last retry.