Websand Transactional Payload Data API
Websand Transaction API Documentation
Using this document
This document provides details on using the Websand API. That is feeding data from your platform or business system directly into Websand in an automated fashion.
You will need to have a Websand account set up before you start the API process. Sign up at www.websandhq.com/plans
If you are using an existing established e-commerce platform we probably already have an API in place (or planned) so please get in touch.
If you are looking to connect your own bespoke data or platform. Please proceed :)
REST API
The Websand API is an HTTPS interface with endpoints for specific actions.
The API follows REST conventions by using HTTPS verbs equivalent to the request type - requests to delete resources use the DELETE HTTPS verb, resource creation requests use the POST verb etc.
Authentication is handled via a HTTPS Token authentication header which can be generated from your Websand instance.
"Authorization: Token {YOUR-API-KEY}"
General Data Endpoints:
Websand has two API endpoints you can use.
The transactional endpoint accepts customer transactional data (events and the people those events relate to)
The subscriber endpoint which accepts non transactional customer data – i.e. a list of people. Click here for more details on the Subscriber API
Transaction Endpoint
The transactional endpoint accepts customer transactional data (events and the people those events relate to)
POST https://{{your_websand_name}}.websandhq.com/api/data/transaction
Receives customer transactional data in JSON format for processing and indexing and requires authentication. That is a transactional event and to whom it relates.
The API supports custom additional fields which can be included in the request as required by the customer, however the below structure is the minimum data required for a useful payload.
Minimal request body is below. This is the MINIMAL REQUEST.
- The order id
- The date of transaction
- The email address of the customer
- The item they have bought
- The price they paid.
You can include any additional information you require.
"transaction": { "_id": "12345" "submit_datetime": "2016-11-23T15:33:00Z", "customer": { "email": "bob@example.com" }, "items": [ { "name": "Awesome Thing" } ], "total": { "total": 19.99 } }
Response Statuses
2xx responses
2xx responses indicate successful requests. The beautiful #200’s, it’s all good.
4xx responses
4xx responses indicate issues with request data/authentication - response body should include specific error message(s) to help you go all Sherlock and figure out the issue. Something wrong at your side - get in touch and let’s see how we can help.
5xx responses
5xx responses indicate server-side issues. OMG. Something wrong at our side - please raise the alarm and let us know.
Notes when using the API
submit_datetime
is the timestamp used for any date-range processing in the WebsandHQ system and is ISO 8601 format.
Any (including custom) properties in the customer
container are merged with the persistent customer profiles upon import. The newer data supersedes older data.