NAV
shell

Introduction

Welcome to the Howuku API! You can use our API to access Howuku API endpoints, which can get information on various products such as recordings, heatmap, feedback, and survey.

Authentication

To authorize, use this code:

# With shell, you can just pass the correct header with each request
curl "https://api.howuku.com/v1/path"
  -H "Authorization: APIKEY"

Make sure to replace APIKEY with your API key.

Howuku uses API keys to allow access to the API. You can get a new Howuku API key at our Howuku dashboard.

Howuku expects for the API key to be included in all API requests to the server in a header that looks like the following:

Authorization: APIKEY

Feedback

Get Feedback

curl "https://api.howuku.com/v1/feedback?startdate=2020-01-01&enddate=2020-12-31&limit=10"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "feedback_id":1,
    "question":"How would you rate your experience?",
    "session":"oePPjp0L",
    "comment":"Compliment: Good comment",
    "rating":5,
    "dt":"2020-10-27T07:23:33.000Z",
    "url":"https://howuku.com/",
    "id":3926,
    "rating_text":"Excellent",
    "screenshot":"https://howuku.s3-ap-southeast-1.amazonaws.com/screenshot/Y24NaRgMRQ7K/5Tb16orglAZiObc1K855WUhmldtBO5dW.png",
    "visitor":{
      "id":"1",
      "name":"John Doe",
      "company":"",
      "email":"[email protected]",
      "ip":"15.134.250.0",
      "user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
      "landing_page":"https://howuku.com/",
      "ref_page":"https://facebook.com",
      "created_at":"2020-10-22T08:16:59.000Z",
      "device":"Desktop",
      "browser":"Chrome",
      "os":"MacOS"
    }
  }
]

This endpoint retrieves all Howuku feedback for your website.

HTTP Request

GET https://api.howuku.com/v1/feedback

Query Parameters

Parameter Default Description
startdate none The result will return feedback comment after the start date.
enddate none The result will return feedback comment after the end date.
limit 50 The result will return latest X number of specified number of feedback.

Survey

Get Survey

curl "https://api.howuku.com/v1/survey?startdate=2020-01-01&enddate=2020-12-31&limit=10"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "id":3930,
    "question_id":915,
    "question":"Quick question: were you able to find what you're looking for?",
    "session":"qDtXOdQ",
    "comment":"Yes",
    "dt":"2020-10-27T08:30:28.000Z",
    "url":"https://howuku.com/pricing",
    "visitor":{
      "id":"1",
      "name":"John Doe",
      "company":"",
      "email":"[email protected]",
      "ip":"15.134.250.0",
      "user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
      "landing_page":"https://howuku.com/",
      "ref_page":"https://facebook.com",
      "created_at":"2020-10-22T08:16:59.000Z",
      "device":"Desktop",
      "browser":"Chrome",
      "os":"MacOS"
    }
  }
]

This endpoint retrieves all Howuku survey for your website.

HTTP Request

GET https://api.howuku.com/v1/survey

Query Parameters

Parameter Default Description
startdate none The result will return survey comment after the start date.
enddate none The result will return survey comment after the end date.
limit 50 The result will return latest X number of specified number of survey.

Recordings

Get Recordings

curl "https://api.howuku.com/v1/recordings?startdate=2020-01-01&enddate=2020-12-31&limit=10"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "id":"0ebGPrQa",
    "duration":75,
    "landing_page":"https://howuku.com/",
    "referral":"https://l.facebook.com/",
    "country":"Canada",
    "user_ip":"131.158.1.0",
    "user_agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36",
    "dt":"2020-08-09T09:29:55.000Z",
    "video_link":"https://app.howuku.com/video/XXXXXX",
    "city":"Toronto"
  }
]

This endpoint retrieves all Howuku recordings for your website.

HTTP Request

GET https://api.howuku.com/v1/recordings

Query Parameters

Parameter Default Description
startdate none The result will return recordings after the start date.
enddate none The result will return recordings after the end date.
limit 50 The result will return latest X number of specified number of recordings.

Heatmaps

Get Heatmaps

curl "https://api.howuku.com/v1/heatmaps"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "url":"https://howuku.com/",
    "rule":"simple",
    "start_time":"2019-10-08T15:28:30.000Z",
    "end_time":null,
    "created_at":"2019-06-16T07:08:27.000Z",
    "updated_at":"2019-06-16T07:08:27.000Z",
    "heatmap_limit":2000,
    "name":"Homepage",
    "id":"pxBZ3JB3JrDD"
  }
]

This endpoint retrieves all Howuku Heatmaps for your website.

HTTP Request

GET https://api.howuku.com/v1/heatmaps

Query Parameters

Parameter Default Description
limit 50 The result will return latest X number of specified number of heatmaps.

A/B Testing

Get A/B Testing

curl "https://api.howuku.com/v1/abtesting"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "test_name":"Test CTA",
    "url":"https://howuku.com",
    "goal_profile_id":"zBxpyMzKNSDK",
    "created_at":"2020-08-08T13:52:02.000Z",
    "updated_at":"2020-08-08T13:52:02.000Z",
    "id":"zBxpyMzODkxc"
  }
]

This endpoint retrieves all Howuku A/B Testing for your website.

HTTP Request

GET https://api.howuku.com/v1/abtesting

Query Parameters

Parameter Default Description
limit 50 The result will return latest X number of specified number of A/B Testing.

Get A/B Testing Details

curl "https://api.howuku.com/v1/abtesting/detail/:id"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "variant":"Control",
    "complete":335,
    "total":1745
  },
  {
    "variant":"Variant 1",
    "complete":430,
    "total":1744
  }
]

This endpoint retrieves all Howuku A/B Testing for your website.

HTTP Request

GET https://api.howuku.com/v1/abtesting/detail/:id

Website Personalization

Get Website Personalization

curl "https://api.howuku.com/v1/personalization"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "test_name":"Homepage Personalization",
    "url":"https://howuku.com",
    "goal_profile_id":"zBxpyMzKNSDK",
    "created_at":"2020-08-08T13:52:02.000Z",
    "updated_at":"2020-08-08T13:52:02.000Z",
    "id":"ABCpyMzODkxc"
  }
]

This endpoint retrieves all Howuku Website Personalization for your website.

HTTP Request

GET https://api.howuku.com/v1/personalization

Query Parameters

Parameter Default Description
limit 50 The result will return latest X number of specified number of Website Personalization.

Get Website Personalization Details

curl "https://api.howuku.com/v1/personalization/detail/:id"
  -H "Authorization: APIKEY"

The above command returns JSON structured like this:

[
  {
    "variant":"Control",
    "complete":335,
    "total":1745
  },
  {
    "variant":"Variant 1",
    "complete":430,
    "total":1744
  }
]

This endpoint retrieves all Howuku Website Personalization for your website.

Webhook

Feedback

Webhook result for feedback will look like this:

{
   "id":3926,
   "feedback_id":1,
   "type":"feedback",
   "question":"How would you rate your experience?",
   "comment":"This is a webhook demo",
   "session":"vLbD23QV",
   "screenshot":"https://image-path.com/screenshot/abcdefghijk/image.png",
   "visitor":{
      "id":"1",
      "name":"John Doe",
      "company":"",
      "email":"[email protected]",
      "ip":"15.134.250.0",
      "user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
      "landing_page":"https://howuku.com/",
      "ref_page":"https://facebook.com",
      "created_at":"2020-10-22T08:16:59.000Z",
      "device":"Desktop",
      "browser":"Chrome",
      "os":"MacOS"
   }
}

This endpoint can be configured inside your Howuku dashboard under Settings > Website > API & Integration tab.

HTTP Request

POST https://yourwebsite.com/webhook/endpoint

Survey

Webhook result for survey will look like this:

{
  "id":9900,
  "question_id":3,
  "type":"survey",
  "question":"How do you prefer to give feedback in a website?",
  "answer":"Contact form on website",
  "session":"raGJzW6",
  "visitor":{
    "id":"1",
    "name":"John Doe",
    "company":"John Doe Co",
    "email":"[email protected]",
    "ip":"15.134.250.0",
    "user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36",
    "landing_page":"https://john.doe",
    "ref_page":"",
    "created_at":"2020-10-22T08:16:59.000Z",
    "device":"Desktop",
    "browser":"Chrome",
    "os":"MacOS"
  }

This endpoint can be configured inside your Howuku dashboard under Settings > Website > API & Integration tab.

HTTP Request

POST https://yourwebsite.com/webhook/endpoint

Errors

The Howuku API uses the following error codes:

Error Code Meaning
400 Bad Request -- Your request is invalid.
401 Unauthorized -- Your API key is wrong.
500 Internal Server Error -- We had a problem with our server. Try again later.
503 Service Unavailable -- We're temporarily offline for maintenance. Please try again later.