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":"john@doe.com",
"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":"john@doe.com",
"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":"john@doe.com",
"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":"john@doe.com",
"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. |