Webhooks

Really Good Culture Webhooks

The RGC webhooks provide an easy to use interface that allows 3rd party system to send data to the RGC platform, or to notify RGC about updates or specific events that happen within those platforms, such as product updates, or customer checkouts.

The base url

All of the Webhooks use the same base url:

https://services.reallygoodculture.com/webhooks/

In order to use the webhooks, you will need to pass an api key as a header to the api. The header name is x-rgc-api-key and the value is the api key that you were provided. If you need to a new key, or change the existing one, please contact us at tech@reallygoodculture.com.

The api key

!!! Please never use this on the client side, and never allow it to be published in any code that is sent to the browser, or is publicly accessible. !!!

Email us at tech@reallygoodculture.com to get new key, or if you have any questions

Create a product

When a new product is added to your database, it will not have an equivalent in the RGC system, and no score can be displayed. To avoid this, we allow you to notify Really Good Culture about all new products that have been created so we can start collecting reviews and building Really Good Culture a score.

In order to notify Really Good Culture, please integrate a webhook call within the product creation workflow of your system, by making a POST to the api below:

POST https://services.reallygoodculture.com/webhooks/product
Headers:
  Content-Type: application/json
  x-rgc-api-key: [API_KEY]

Body Content

{
  "id": "...",
  "sku": "...",
  "gtin": "...",
  "name": "...",
  "description": "...",
  "imageUrl": "...",
  "price": "...",
  "url": "...",
  "categoryL1": "...",
  "categoryL2": "...",
  "categoryL3": "...",
  "brandName": "..."
}
  • id - your internal id of the product; once the product is in RGC's system, you can refer to this product by this id, and setting the ID_TYPE to SID
  • sku - (optional) your internal sku of the product; once the product is in RGC's system, you can refer to this product by this id, and setting the ID_TYPE to SKU
  • gtin - (optional) if your system has informations about GTINs, please set this. if a product already exists for this GTIN your id will be linked to this product.
  • name - the product name
  • description - the product description
  • imageUrl - a valid image url; this will be downloaded and stored on RGC's cdn
  • price - (optional) the price of the product
  • url - (optional) the url of the product on your site
  • brandName - the name of the brand of the product
  • categoryL1 - the first level category of the product
  • categoryL2 - (optional) the second level category of the product
  • categoryL3 - (optional) the third level category of the product

Products Bulk Sync

If you have a large number of products that you want to sync with RGC, you can use the bulk sync api. This api will allow you to send a large number of products in a single request, and will be processed in the background.


POST https://services.reallygoodculture.com/webhooks/product/sync
Headers:
Content-Type: application/json
x-rgc-api-key: [API_KEY]

Body Content

[
  {
    "id": "...",
    "sku": "...",
    "gtin": "...",
    "name": "...",
    "description": "...",
    "imageUrl": "...",
    "price": "...",
    "url": "...",
    "categoryL1": "...",
    "categoryL2": "...",
    "categoryL3": "...",
    "brandName": "..."
  },
  {
    "id": "...",
    "sku": "...",
    "gtin": "...",
    "name": "...",
    "description": "...",
    "imageUrl": "...",
    "price": "...",
    "url": "...",
    "categoryL1": "...",
    "categoryL2": "...",
    "categoryL3": "...",
    "brandName": "..."
  },
  ...
]

each product in the array should have the same structure as the product in the Create a product api.

Notify Customer Checkout (for retailers use only)

When one of your clients completes the checkout process on your site, you can let Really Good Culture know what products the user has purchased, and aftyer 3 days, Really Good Culture will send out an email, asking the user to review the purchased products.

POST https://services.reallygoodculture.com/webhooks/checkout-completed?/[ID_TYPE]
Headers:
  Content-Type: application/json
  x-rgc-api-key: [API_KEY]

URL Params

  • ID_TYPE - specifies what kind of identification you are using to refer to products. Current accepted values are GTIN, WFID or SID.

Query Params

  • nodelay - (optional) if set to true, the email will be sent immediately, otherwise it will be sent after 3 days

Body Content

{
  "email": "user@example.com",
  "products": ["xxxxxxxxxxxxx", "yyyyyyyyyyyyy"]
}
  • email: the email of the user that has completed the checkout
  • products: list of products that the user has purchased; this can be either an array of strings, or a string separated by comma character (,)

Alternative Example:

{
  "email": "user@example.com",
  "products": "xxxxxxxxxxxxx,yyyyyyyyyyyyy"
}

** Response **

{
  "status": true | false,
  "error": "error message"
}

If the operation is successfull completed, the api will respond with status=true If the operation has failed, the api will respond with status=false and and error message as string

Additionally, the API will send http status codes that will help understanding the nature of the error (eg: 403 Unauthorized, 400 Bad request)