Funnel Analysis
Analyze event funnel performance
curl -X POST "https://api.nexus.usehardal.com/analytics/funnel/events?timeframe=today&startDate=example_string&endDate=example_string&timezone=example_string&targetSignalId=example_string&isCompareEnabled=false&compareStartDate=example_string&compareEndDate=example_string" \
-H "Content-Type: application/json" \
-H "Authorization: YOUR_API_KEY" \
-d '{
"funnelEvents": [
"example_string"
],
"category": "browser",
"secondaryCategory": "browser",
"hostname": "John Doe",
"browser": "example_string",
"os": "example_string",
"device": "example_string",
"country": "USA",
"city": "New York",
"url": "example_string",
"source": "example_string",
"medium": "example_string",
"campaign": "example_string"
}'
import requests
import json
url = "https://api.nexus.usehardal.com/analytics/funnel/events?timeframe=today&startDate=example_string&endDate=example_string&timezone=example_string&targetSignalId=example_string&isCompareEnabled=false&compareStartDate=example_string&compareEndDate=example_string"
headers = {
"Content-Type": "application/json",
"Authorization": "YOUR_API_KEY"
}
data = {
"funnelEvents": [
"example_string"
],
"category": "browser",
"secondaryCategory": "browser",
"hostname": "John Doe",
"browser": "example_string",
"os": "example_string",
"device": "example_string",
"country": "USA",
"city": "New York",
"url": "example_string",
"source": "example_string",
"medium": "example_string",
"campaign": "example_string"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.nexus.usehardal.com/analytics/funnel/events?timeframe=today&startDate=example_string&endDate=example_string&timezone=example_string&targetSignalId=example_string&isCompareEnabled=false&compareStartDate=example_string&compareEndDate=example_string", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "YOUR_API_KEY"
},
body: JSON.stringify({
"funnelEvents": [
"example_string"
],
"category": "browser",
"secondaryCategory": "browser",
"hostname": "John Doe",
"browser": "example_string",
"os": "example_string",
"device": "example_string",
"country": "USA",
"city": "New York",
"url": "example_string",
"source": "example_string",
"medium": "example_string",
"campaign": "example_string"
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"funnelEvents": [
"example_string"
],
"category": "browser",
"secondaryCategory": "browser",
"hostname": "John Doe",
"browser": "example_string",
"os": "example_string",
"device": "example_string",
"country": "USA",
"city": "New York",
"url": "example_string",
"source": "example_string",
"medium": "example_string",
"campaign": "example_string"
}`)
req, err := http.NewRequest("POST", "https://api.nexus.usehardal.com/analytics/funnel/events?timeframe=today&startDate=example_string&endDate=example_string&timezone=example_string&targetSignalId=example_string&isCompareEnabled=false&compareStartDate=example_string&compareEndDate=example_string", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.nexus.usehardal.com/analytics/funnel/events?timeframe=today&startDate=example_string&endDate=example_string&timezone=example_string&targetSignalId=example_string&isCompareEnabled=false&compareStartDate=example_string&compareEndDate=example_string')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'YOUR_API_KEY'
request.body = '{
"funnelEvents": [
"example_string"
],
"category": "browser",
"secondaryCategory": "browser",
"hostname": "John Doe",
"browser": "example_string",
"os": "example_string",
"device": "example_string",
"country": "USA",
"city": "New York",
"url": "example_string",
"source": "example_string",
"medium": "example_string",
"campaign": "example_string"
}'
response = http.request(request)
puts response.body
{}
/analytics/funnel/events
Target server for requests. Edit to use your own host.
API key (sent in header)
Preset timeframe. Use custom with startDate and endDate, or omit when startDate/endDate are provided.
Start date (YYYY-MM-DD)
End date (YYYY-MM-DD)
Timezone for date filtering (default: Europe/Istanbul)
Target signal ID for an authorized mobile app or related signal in the same project
Enable comparison range calculations (default: false)
Comparison start date (YYYY-MM-DD)
Comparison end date (YYYY-MM-DD)
The media type of the request body
List of funnel events
Category to group funnel data by (e.g., device, browser, country)
Secondary category to group funnel data by (e.g., device, browser, country)
Request Preview
Response
Response will appear here after sending the request
Authentication
API Key for authentication. Provide your API key in the header.
Query Parameters
Preset timeframe. Use custom with startDate and endDate, or omit when startDate/endDate are provided.
todayyesterdaylast7dayslast30dayscustomStart date (YYYY-MM-DD)
End date (YYYY-MM-DD)
Timezone for date filtering (default: Europe/Istanbul)
Target signal ID for an authorized mobile app or related signal in the same project
Enable comparison range calculations (default: false)
Comparison start date (YYYY-MM-DD)
Comparison end date (YYYY-MM-DD)
Body
List of funnel events
Category to group funnel data by (e.g., device, browser, country)
browserosdevicecountrycitysourcemediumcampaignSecondary category to group funnel data by (e.g., device, browser, country)
browserosdevicecountrycitysourcemediumcampaignResponses
200 response