Helium Documentation

Webhooks

Webhooks are a way for Helium’s servers to communicate with your server whenever certain actions happen. You will receive webhooks if you add a URL to be used in Settings.

Each webhook will be sent via an HTTP POST request, with the data of the request contained as JSON in the body of the request. Each webhook expects to receive an HTTP status code of 200 or 204. Any other status code returned will indicate that the webhook was not successfully received, and we will alert you by email of the failure.

The JSON object for each webhook will looks like this:

type
Describes what type of event the webhook is describing (e.g. “charge.succeeded”)
created
The timestamp for the event (seconds from the epoch)
data
The data for this event. This will be an object that varies depending on what type of event this is. For the specifics of what each event’s data object looks like, see the specific events listed below.

Charge Succeeded

charge.succeeded

This event is triggered whenever a customer’s card is successfully charged to inform you of what items were purchased, customer information, etc. The data object sent is the same as that of the charge object.

Example: webhook sent upon a successful charge

{
    "type": "charge.succeeded"
    "created": 1351890105,
    "data": {
      "id": "NY3U2V5U9E2",
      "card": {
        "last4": "4242",
        "type": "Visa"
      },
      "customer": {
        "id": "LU1U2V5U9E2",
        "email": "demo@gmail.com"
      },
      "fee": 0,
      "created": 1351890105,
      "items": [
        {"sku": "laptop-stand", "price": 19900, "name": "Laptop Stand"},
        {"sku": "laptop-bag", "price": 9900, "name": "Laptop Bag"}
      ],
      "live": 1,
      "shipping": 0,
      "amount": 398
    }
]

Use of this site and associated services acknowledges your acceptance of the Terms of Service