How to Transfer Website Behavior Data through REST API

To transfer website data to eSputnik, you need to install the web tracking script on your site. After, you’ll be able to send the user behavior data and use it to create personalized product recommendations for the site and for your emails.

You can send events through one of the methods:

Important!

When setting up tracking via the REST API, the recommendations functionality on the site will not be available, in this case, you need to use the option of calling eS.JS functions

In this article, we will explain how to use the second method.

Request headers

POST / HTTP/1.1

Host: https://tracker.esputnik.com/api/v2

Content-type: application/json

Response status code is 204: No authorization is required.

ProductPage

Description

To display correct recommended products or product categories or send triggers for abandoned browses, send a request with data on:

  • Product card the user is currently viewing;
  • Product price and availability.

Example

{
  "GeneralInfo": {
    "eventName": "ProductPage",
    "siteId": "8A412DC",
    "datetime":1579622183208,
    "user_phone": "1-541-754-3010",
    "user_email": "user@mail.com",
    "user_name": "Gregori Boczynski",
    "user_es_contact_id": "255830499",
    "cookies": {
      "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
    }
  },
  "ProductPage": {
    "Product": {
      "productKey": "72354",
      "price": "754 USD",
      "isInStock": "1",
      "tag_something": [
        "abc",
        "bca"
      ]
    },
    "Tags": {
      "some_tags": [
        "some_tag1",
        "some_tag2"
      ]
    }
  }
}

Parameters

Name

Example Description
GeneralInfo

Required

Type: object

General information
eventName

“ProductPage”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User name and surname
user_es_contact_id

"255830499"

Optional

type: string

User ID in eSputnik
cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script. You can get on the site.
  • The required cookie is titled "sc."
datetime

1579622183208

Timestamp (millisecond)
ProductPage

Required

Type: object

Event description
productKey

“72354”

Required

Type: string

  • Product ID.
  • Should match the productKey on pagesStatusCart and PurchasedItems.
price

“754 USD”

Required

Type: string

The price per item can be sent with the currency value.

If the price has changed on the site but hasn’t changed in the feed, the sent value will be the value from the site.

isinStock

“1”

Optional

Type: int

  • Indicates if items are in stock.
  • Can have two values:

"0" – items are out of stock;

"1" – items are in stock.

  • If the availability has changed on the site but hasn’t changed in the feed, the sent value will be the value from the site.
tag_[something]

["abc","bca"]

Optional

Type: array of strings

  • All additional fields can be transferred in this parameter. The prefix tag_ is required. After it, you can enter any name.
  • There can be several such parameters.
  • The value of this parameter is transferred as a data array which can be entered separated by commas.
Tags

Optional

Type: object

Additional fields

StatusCart

Description

An event is sent after the cart status (with a new GUID) is changed, for example, after clicking a Buy button on the category page. The cart status should be updated from all pages. If the cart is empty, then you need to send an empty cart event (empty array without products).

Example

{
  "GeneralInfo": {
    "eventName": "StatusCart",
    "siteId": "8A412DC",
    "datetime":1579622183208,
    "user_phone": "1-541-754-3010",
    "user_email": "user@mail.com",
    "user_name": "Gregori Boczynski",
    "user_es_contact_id": "255830499",
    "cookies": {
      "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
    }
  },
  "StatusCart": {
    "GUID": "6F9619FF-8B86-D011-B42D-00CF4FC964FF",
    "Products": [
      {
        "productKey": "430738",
        "price": 201.95,
        "discount": 180,
        "quantity": 1,
        "price_currency_code": "USD",
        "tag_something": [
          "aaa",
          "bbb"
        ]
      },
      {
        "productKey": "902339",
        "price": 596,
        "discount": 590,
        "quantity": 1,
        "price_currency_code": "USD",
        "tag_something": [
          "aaa",
          "bbb"
        ]
      }
    ],
    "Tags": {
      "some_tags": [
        "1",
        "a2"
      ],
      "some_tags1": [
        "4",
        "gg"
      ]
    }
  }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: object, string

General information
eventName

“StatusCart”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User name and surname
user_es_contact_id

"255830499"

Optional

Type: string

User ID in eSputnik
datetime 1579622183208 Timestamp (millisecond)
GUID

“6F9619FF-8B86-D011-B42D-00CF4FC964FF”

Required

Type: string

  • Unique ID that connects two events – StatusCart and PurchasedItems.
  • Should be identical to the GUID of the PurchasedItems event.
  • Can be generated from random numbers and Latin characters.
StatusCart

Required

Type: object, string

  • Event description.
  • Transferred as an array of strings with products added to the cart.
productKey

“430738”

Required

Type: string

  • Product ID.
  • Should match the productKey on the ProductPage page.
price

“201.95”

Required

Type: string

Price per item
discount

“180”

Optional

Type: string

Discount per item
quantity

“1”

Required

Type: Int

Quantity of items
price_currency_code

“USD”

Optional

Type: string

Currency
tag_[something]

["abc","bca"]

Optional

Type: array of strings

  • All additional fields can be transferred in this parameter. The prefix tag_ is required. After it, you can enter any name.
  • There can be several such parameters,
  • The value of this parameter is transferred as a data array which can be entered separated by commas.
Tags

Optional

Type: object

Additional fields

PurchasedItems

Description

To display recommendations on the order confirmation page or to send triggers for abandoned carts, you need to send a request with the data on the purchased products.

Example

{
  "GeneralInfo": {
    "eventName": "PurchasedItems",
    "siteId": "8A412DC",
    "datetime":1579622183208,
    "user_phone": "1-541-754-3010",
    "user_email": "user@mail.com",
    "user_name": "Gregori Boczynski",
    "user_es_contact_id": "255830499",
    "cookies": {
      "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
    }
  },
  "PurchasedItems": {
    "GUID": "6F9619FF-8B86-D011-B42D-00CF4FC964FF",
    "OrderNumber": "123/2017",
    "Tags": {
      "some_tags": [
        "1",
        "a2"
      ],
      "some_tags1": [
        "4",
        "gg"
      ]
    }
  }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: object, string

General information
eventName

“StatusCart”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User’s name and surname
user_es_contact_id

"255830499"

Optional

Type: string

User ID in eSputnik
cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script that you can get on the site.
  • The required cookie is titled "sc."
GUID

“6F9619FF-8B86-D011-B42D-00CF4FC964FF”

Required

Type: string

  • Unique ID that connects two events – StatusCart and PurchasedItems.
  • Should be identical to the GUID of the StatusCart event.
  • Can be generated from random numbers and Latin characters.
OrderNumber

“123/2017”

Required

Type: string

  • Order number.
  • Confirms purchase completion.
Tags

Optional

Type: object

Additional fields

PurchasedItems (One Click)

Description

The event is optionally sent after a purchase with one click or a purchase with afterpay.

Example

{
  "GeneralInfo": {
    "eventName": "PurchasedItems",
    "siteId": "8A412DC",
    "datetime":1579622183208,
    "user_phone": "1-541-754-3010",
    "user_email": "user@mail.com",
    "user_name": "Gregori Boczynski",
    "user_es_contact_id": "255830499",
    "cookies": {
      "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
    }
  },
  "PurchasedItems": {
    "Products": [
      {
        "product_id": "430738",
        "unit_price": "201.95",
        "quantity": 1
      },
      {
        "product_id": "211452",
        "unit_price": "341.80",
        "quantity": 2
      }
    ],
    "OrderNumber": "123/2017",
    "Tags": {
      "block_id": [
        "21246_r335v507"
      ],
      "some_tags1": [
        "4",
        "gg"
      ]
    }
  }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: object, string

General information
eventName

“StatusCart”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User name and surname
user_es_contact_id

"255830499"

Optional

Type: string

User ID in eSputnik
datetime 1579622183208

Timestamp (millisecond)

cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script that you can get on the site.
  • The required cookie is titled "sc."
OrderNumber

“123/2017”

Required

Type: string

  • Order number.
  • Confirms purchase completion.
PurchasedItems Type: array of strings List of items
product_id

“430738”

Required

Type: string

  • Product ID.
  • Should match productKey on the ProductPage page.
unit_price

“201.95”

Required

Type: string

Price per item
quantity

“1”

Required

Type: Integer

Quantity of items
block_id

“21246_r335v507”

Required

Type: string

Recommendation block ID. To get it, contact eSputnik support.
Tags

Optional

Type: object

Additional fields

ProductImpressions

Description

The event that transfers data on the block display. It’s sent by default through JS API. You don’t need to send it additionally.

Example

{
  "GeneralInfo": {
    "eventName": "ProductImpressions",
    "siteId": "8A412DC",
    "datetime":1579622183208,
    "user_phone": "1-541-754-3010",
    "user_email": "user@mail.com",
    "user_name": "Gregori Boczynski",
    "user_es_contact_id": "255830499",
    "cookies": {
      "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
    }
  },
  "ProductImpression": {
    "Products": [
      {
        "product_id": "430968",
        "container_type": "1253"
      },
      {
        "product_id": "430738",
        "container_type": "1254"
      },
      {
        "product_id": "429983",
        "container_type": "1255"
      }
    ],
    "Tags": {
      "some_tags": [
        "1",
        "a2"
      ],
      "some_tags1": [
        "4",
        "gg"
      ]
    }
  }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: object

General information
eventName

“ProductImpressions”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User name and surname
user_es_contact_id

"255830499"

Optional

Type: string

User ID in eSputnik
datetime 1579622183208 Timestamp (millisecond)
cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script that you can get on the site.
  • The required cookie is titled "sc."
ProductImpressions

Required

Type: array of objects

  • Description of impressions
  • Transferred as an array of objects.
product_id

“430738”

Required

Type: string

ID of the product or category that is in the feed
container_type

“1253”

Required

Type: string

Recommendation block number
Tags

Optional

Type: object

Additional fields

CategoryPage

Description

Can be used to send data on:

  • Triggers;
  • Category browses without product card viewing;
  • Site browses without category or product card viewing.

You need to send a request with the data on the category the user is currently browsing.

Example

{
  "GeneralInfo": {
    "eventName": "CategoryPage",
    "siteId": "8A412DC",
    "datetime":1579622183208,
    "user_phone": "1-541-754-3010",
    "user_email": "user@mail.com",
    "user_name": "Gregori Boczynski",
    "user_es_contact_id": "255830499",
    "cookies": {
      "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
    }
  },
  "CategoryPage": {
    "Category": {
      "categoryKey": "Babies"
    },
    "Tags": {
      "some_tags": [
        "1",
        "a2"
      ],
      "some_tags1": [
        "4",
        "gg"
      ]
    }
  }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: object

General information
eventName

“ProductPage”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User’s name and surname
user_es_contact_id

"255830499"

Optional

Type: string

User ID in eSputnik
datetime 1579622183208 Timestamp (millisecond)
cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script that you can get on the site.
  • The required cookie is titled "sc."
CategoryPage

Required

Type: object

Event description
categoryKey

“Babies”

Required

Type: string

ID of the product or category
Tags

Optional

Type: object

Additional fields

CustomerData

Description

To send triggers for abandoned browses or abandoned carts, you need to send a request with the data on the user.

Example

{
 "GeneralInfo": {
   "eventName": "CustomerData",
   "siteId": "8D3869C",
   "datetime":1579622183208,
   "user_phone": "3801111111111",
   "user_email": "user@mail.com",
   "user_es_contact_id": "255830499",
   "user_name": "Johny",
   "cookies": {
     "sc": "CDA68358-94FB-4D83-9655-3FEB3CGGG1"
   }
 }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: array of objects

General information
eventName

“StatusCart”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User name and surname
user_es_contact_id

"255830499"

Optional

Type: string

User ID in eSputnik
datetime 1579622183208 Timestamp (millisecond)
cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script that you can get on the site.
  • The required cookie is titled "sc."

CustomEvent

Description

CustomEvent is a custom event. You can give it a custom header depending on the action.

Example

{
    "GeneralInfo": {
        "eventName": "CustomEvent",
        "datetime":1579622183208,
        "screendim": {
            "h": 1200,
            "w": 2304
        },
        "adblockEnabled": true,
        "device": "Desktop",
        "browser": {
            "name": "Chrome",
            "chrome": true,
            "version": "74.0",
            "webkit": true,
            "a": true
        },
        "siteId": "8A412DC",
        "cookies": {
            "sc": "CDA68358-94FB-4D83-9655-3FEB3C4114A3"
        },
        "s_location": "https://example.com/product_id.html",
        "referrer": "https://example.com",
        "user_client_id": "",
        "user_city": "",
        "user_card_id": "",
        "user_name": "Gregori Boczynski",
        "user_phone": "1-541-754-3010",
        "user_email": "user@mail.com",
        "user_es_contact_id": "255830499"
    },
    "CustomEvent": {
     "EventName":"my_event",
     "Tags": {
     "some_tags": [
         "1",
         "a2"
     ],
     "some_tags1": [
       "4",
     "gg"
     ]
}
    }
}

Parameters

Name Example Description
GeneralInfo

Required

Type: array of objects

General information
eventName

“CustomEvent”

Required

Type: string

Event name
siteId

“8A412DC”

Required

Type: string

  • To get your site ID, please contact eSputnik’s support.
  • Static parameter.
user_phone

"1-541-754-3010"

Optional

Type: string

Phone number in the international format
user_email

"user@mail.com"

Optional

Type: string

User email
user_name

"Gregori Boczynski"

Optional

Type: string

User name and surname
datetime 1579622183208 Timestamp (millisecond)
cookies

"CDA68358-94FB-4D83-9655-3FEB3C4114A3"

Required

Type: object, string

  • Cookie sc is a cookie generated by our script that you can get on the site.
  • The required cookie is titled "sc."
CustomEvent

Required

Type: array of objects

Event description
EventName

“my_event”

Required

Type: string

Custom event name
Tags

Optional

Type: array of objects

Additional fields where some_tags is the field name and “1” and “2” are its values (always transferred as array of strings)
Any Questions?
We’re always happy to help!
Request a Callback
Fill in the form, and our specialists will call you back as soon as possible.
Request a Callback
Chat Support
We’re waiting for your questions!
Send a Chat Message
Email
Contact the eSputnik support team
Send an Email