Zoho PageSense
App · Analytics · 12 actions
Website analytics and conversion optimization. Manage goals and custom events, and read traffic totals, breakdowns and daily trends.
Actions
| Action | What it does |
|---|---|
| Create custom event | Register a custom event your site's tracking code can send. |
| Create goal | Create a conversion goal in a project. |
| Delete goal | Permanently delete a goal and its recorded conversions. |
| Get daily traffic | Traffic for each day in a date range. |
| Get goal | Get one goal's settings (not its conversion numbers). |
| Get project | Get one project's details. |
| Get traffic breakdown | Traffic for a date range broken down by page, referrer, country, device, browser or UTM value. |
| Get traffic totals | Page views, entrances, bounce and exit rates for a date range. |
| List custom events | List a project's custom events and their linknames. |
| List goals | List the conversion goals set up in PageSense. |
| List projects | List the portal's projects (websites) and their linknames. |
| Update goal | Rename, pause, resume or retarget a goal. |
Create custom event
Register a custom event your site's tracking code can send. The API cannot delete events.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
- Event name
event_nametextRequired - The event's name, unique in the project.
Outputs
A custom event.
event_idtext- The event's id.
event_nametext- The event's name, as the tracking code sends it.
linknametext- The event's linkname; a custom-event goal takes it.
Example output
{
"event_id": "93969000000020001",
"event_name": "signup_clicked",
"linkname": "signup-clicked"
}Create goal
Create a conversion goal in a project. The free plan allows five goals.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
- Name
display_nametextRequired - The goal's name.
- Goal type
goal_typetextRequired - What counts as reaching the goal.One of:
1(Page visit),2(Link click),3(Form submit),4(Element click),5(Engagement),6(Custom event),8(Time spent). - Goal URL
goal_urltextRequired - The page the goal is about. Zoho requires it for every goal type.
- URL match type
url_match_typetext - Optional. How the goal URL and the URL lists are matched. Default: simple match.One of:
1(Simple match),2(Exact match),3(Pattern match),4(Regex match),5(Contains),6(Starts with),7(Ends with),8(Domain). - Element CSS selector
element_css_selectortext - Optional. The element to track, e.g. #signup-button; required for an element-click goal.
- Time threshold (seconds)
time_thresholdnumber - Optional. Seconds on the site that reach the goal; required for a time-spent goal.At least 1.
- Custom event linkname
custom_event_linknametext - Optional. The event, from 'List custom events'; required for a custom-event goal.
- Track on these URLs
include_urlslist - Optional. Only count the goal on these pages. Leave empty for the whole site.
- Exclude these URLs
exclude_urlslist - Optional. Never count the goal on these pages.
Outputs
A project goal.
created_datetext- When the goal was created.
created_timenumber- When the goal was created, in Unix milliseconds.
display_nametext- The goal's name.
element_css_selectortext- The CSS selector of the element the goal tracks.
goal_idtext- The goal's id.
goal_id_stringtext- The goal's id, as text.
goal_statusnumber- 1 Active, 2 Paused.
goal_typenumber- 1 page visit, 2 link click, 3 form submit, 4 element click, 5 engagement, 6 custom event, 7 revenue, 8 time spent.
goal_urltext- The page the goal is tied to.
is_data_trackedtrue/false- Whether the goal has recorded any data.
linknametext- The goal's linkname; Get, Update and Delete goal take it.
project_idtext- The id of the goal's project.
project_linknametext- The linkname of the goal's project.
time_thresholdnumber- Seconds on the site that count as reaching a time-spent goal.
unique_goal_achieved_countnumber- Visitors who reached the goal.
unique_visitor_countnumber- Visitors counted for the goal.
Example output
{
"created_time": 1761700000000,
"display_name": "Signup time spent",
"element_css_selector": "",
"goal_id": "93969000000011017",
"goal_id_string": "93969000000011017",
"goal_status": 1,
"goal_type": 8,
"goal_url": "",
"is_data_tracked": false,
"linkname": "signup-time-spent",
"project_linkname": "my-website",
"time_threshold": 60
}Delete goal
Permanently delete a goal and its recorded conversions.
Inputs
- Goal linkname
goal_linknametextRequired - The goal's linkname, from 'List goals' or 'Create goal'.
Outputs
The goal that was deleted.
deletedtrue/false- Always true.
display_nametext- The deleted goal's name.
goal_idtext- The deleted goal's id.
linknametext- The deleted goal's linkname.
Example output
{
"deleted": true,
"display_name": "Signup time spent",
"goal_id": "93969000000011017",
"linkname": "signup-time-spent"
}Get daily traffic
Traffic for each day in a date range.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
- From
start_datedateRequired - The first day to report on. The free plan keeps one month of data.
- To
end_datedateRequired - The last day to report on.
- Metrics
metricslist - Optional. Which numbers to report; all of them if none is chosen.One or more of:
page_views(Page views),unique_page_views(Unique page views),average_time_on_page(Average time on page),entrances,bounce_rate(Bounce rate),exit_rate(Exit rate).
Outputs
countnumber- How many days were returned.
itemslist- The days.
Example output
{
"count": 1,
"items": [
{
"average_time_on_page": 52000,
"bounce_rate": 36.62,
"date": "2026-09-01",
"entrances": 640,
"exit_rate": 41.2,
"page_views": 1520,
"unique_page_views": 1210
}
]
}Get goal
Get one goal's settings (not its conversion numbers).
Inputs
- Goal linkname
goal_linknametextRequired - The goal's linkname, from 'List goals' or 'Create goal'.
Outputs
A project goal.
created_datetext- When the goal was created.
created_timenumber- When the goal was created, in Unix milliseconds.
display_nametext- The goal's name.
element_css_selectortext- The CSS selector of the element the goal tracks.
goal_idtext- The goal's id.
goal_id_stringtext- The goal's id, as text.
goal_statusnumber- 1 Active, 2 Paused.
goal_typenumber- 1 page visit, 2 link click, 3 form submit, 4 element click, 5 engagement, 6 custom event, 7 revenue, 8 time spent.
goal_urltext- The page the goal is tied to.
is_data_trackedtrue/false- Whether the goal has recorded any data.
linknametext- The goal's linkname; Get, Update and Delete goal take it.
project_idtext- The id of the goal's project.
project_linknametext- The linkname of the goal's project.
time_thresholdnumber- Seconds on the site that count as reaching a time-spent goal.
unique_goal_achieved_countnumber- Visitors who reached the goal.
unique_visitor_countnumber- Visitors counted for the goal.
Example output
{
"created_time": 1761700000000,
"display_name": "Signup time spent",
"element_css_selector": "",
"goal_id": "93969000000011017",
"goal_id_string": "93969000000011017",
"goal_status": 1,
"goal_type": 8,
"goal_url": "",
"is_data_tracked": false,
"linkname": "signup-time-spent",
"project_linkname": "my-website",
"time_threshold": 60
}Get project
Get one project's details.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
Outputs
A PageSense project (one website).
alt_script_urltext- Alternate (CDN) URL of the tracking script.
created_bytext- Who created the project.
created_timetext- When the project was created.
display_nametext- The project's name.
idtext- The project's id, as text (same as project_id).
is_full_tracking_enabledtrue/false- Whether full tracking is on.
is_hipaa_enabledtrue/false- Whether HIPAA mode is on.
linknametext- The project's linkname; the other actions take it.
modified_timetext- When the project was last modified.
project_idtext- The project's id, as text.
project_keytext- The project's tracking key.
project_statusnumber- 1 when the project is active.
project_typenumber- The project's type code.
running_experimentsnumber- How many experiments are running.
script_urltext- URL of the tracking script to install on the website.
total_experimentsnumber- How many experiments the project has.
user_role_link_nametext- The connected user's role in the project.
Example output
{
"display_name": "My website",
"linkname": "my-website",
"project_id": "93969000000002003"
}Get traffic breakdown
Traffic for a date range broken down by page, referrer, country, device, browser or UTM value.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
- From
start_datedateRequired - The first day to report on. The free plan keeps one month of data.
- To
end_datedateRequired - The last day to report on.
- Dimension
dimensiontextRequired - What to break the traffic down by.One of:
currenturl(Page URL),referrer,country,device_type(Device type),os(Operating system),browser,query(Query string),utm_campaign(UTM campaign),utm_content(UTM content),utm_term(UTM term). - Metrics
metricslist - Optional. Which numbers to report; all of them if none is chosen.One or more of:
page_views(Page views),unique_page_views(Unique page views),average_time_on_page(Average time on page),entrances,bounce_rate(Bounce rate),exit_rate(Exit rate). - Sort by
sort_bytext - Optional. The metric to sort by; one of those chosen above.One of:
page_views(Page views),unique_page_views(Unique page views),average_time_on_page(Average time on page),entrances,bounce_rate(Bounce rate),exit_rate(Exit rate). - Order
sort_typetext - Optional. Highest first by default.One of:
desc(Highest first),asc(Lowest first). - Rows per page
limitnumber - Optional. 1 to 100. Default 25.From 1 to 100.
- Page
pagenumber - Optional. The page to return, from 1.At least 1.
Outputs
countnumber- How many rows were returned.
dimensiontext- The dimension the traffic is broken down by.
has_moretrue/false- Whether another page is probably available.
itemslist- The rows.
next_pagenumber- Pass as 'Page' to fetch the next page; empty on the last.
pagenumber- The page number returned.
Example output
{
"count": 1,
"dimension": "country",
"has_more": false,
"items": [
{
"average_time_on_page": 52000,
"bounce_rate": 36.62,
"entrances": 640,
"exit_rate": 41.2,
"page_views": 1520,
"primary_dimension": "United States",
"unique_page_views": 1210
}
],
"next_page": null,
"page": 1
}Get traffic totals
Page views, entrances, bounce and exit rates for a date range.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
- From
start_datedateRequired - The first day to report on. The free plan keeps one month of data.
- To
end_datedateRequired - The last day to report on.
- Metrics
metricslist - Optional. Which numbers to report; all of them if none is chosen.One or more of:
page_views(Page views),unique_page_views(Unique page views),average_time_on_page(Average time on page),entrances,bounce_rate(Bounce rate),exit_rate(Exit rate).
Outputs
Traffic totals for the date range.
average_time_on_pagenumber- Average time on page, as PageSense reports it (milliseconds in the totals, seconds in the daily report).
bounce_ratenumber- Bounce rate, as a percentage (36.62 means 36.62%).
end_datetext- The last day of the range, YYYY-MM-DD.
entrancesnumber- Sessions that started here.
exit_ratenumber- Exit rate, as a percentage.
full_tracking_first_data_tracked_timetext- When the project first recorded data.
full_tracking_first_data_tracked_time_in_longnumber- When the project first recorded data, in Unix milliseconds.
has_datatrue/false- Whether any traffic was recorded in the range.
page_viewsnumber- Page views.
start_datetext- The first day of the range, YYYY-MM-DD.
unique_page_viewsnumber- Unique page views.
Example output
{
"average_time_on_page": 52000,
"bounce_rate": 36.62,
"end_date": "2026-09-30",
"entrances": 640,
"exit_rate": 41.2,
"has_data": true,
"page_views": 1520,
"start_date": "2026-09-01",
"unique_page_views": 1210
}List custom events
List a project's custom events and their linknames.
Inputs
- Project
project_linknametextRequired - The PageSense project (website).
- Search
searchtext - Optional. Only events whose name contains this text.
Outputs
countnumber- How many custom events were returned.
itemslist- The custom events.
Example output
{
"count": 1,
"items": [
{
"event_id": "93969000000020001",
"event_name": "signup_clicked",
"linkname": "signup-clicked"
}
]
}List goals
List the conversion goals set up in PageSense.
Inputs
- Project
project_linknametext - Optional. Only this project's goals.
- Search
searchtext - Optional. Only goals whose name contains this text.
- Page size
limitnumber - Optional. How many to return, 1 to 100. Default 50.From 1 to 100.
- Offset
offsetnumber - Optional. Where to start: the next_offset of the previous page.At least 0.
Outputs
countnumber- How many goals were returned.
has_moretrue/false- Whether another page is probably available.
itemslist- The goals.
next_offsetnumber- Pass as 'Offset' to fetch the next page; empty on the last.
Example output
{
"count": 1,
"has_more": false,
"items": [
{
"created_time": 1761700000000,
"display_name": "Signup time spent",
"element_css_selector": "",
"goal_id": "93969000000011017",
"goal_id_string": "93969000000011017",
"goal_status": 1,
"goal_type": 8,
"goal_url": "",
"is_data_tracked": false,
"linkname": "signup-time-spent",
"project_linkname": "my-website",
"time_threshold": 60
}
],
"next_offset": null
}List projects
List the portal's projects (websites) and their linknames.
Inputs
None.
Outputs
countnumber- How many projects were returned.
itemslist- The projects.
Example output
{
"count": 1,
"items": [
{
"display_name": "My website",
"linkname": "my-website",
"project_id": "93969000000002003"
}
]
}Update goal
Rename, pause, resume or retarget a goal. Blank fields are left as they are.
Inputs
- Goal linkname
goal_linknametextRequired - The goal's linkname, from 'List goals' or 'Create goal'.
- Project
project_linknametextRequired - The goal's project.
- Name
display_nametext - Optional. A new name.
- Status
goal_statustext - Optional. Pause or resume the goal.One of:
1(Active),2(Paused). - Goal URL
goal_urltext - Optional. The page the goal is about.
- URL match type
url_match_typetext - Optional. How the goal URL and the URL lists are matched. Default: simple match.One of:
1(Simple match),2(Exact match),3(Pattern match),4(Regex match),5(Contains),6(Starts with),7(Ends with),8(Domain). - Element CSS selector
element_css_selectortext - Optional. The element to track, e.g. #signup-button; required for an element-click goal.
- Time threshold (seconds)
time_thresholdnumber - Optional. Seconds on the site that reach the goal; required for a time-spent goal.At least 1.
- Track on these URLs
include_urlslist - Optional. Only count the goal on these pages. Leave empty for the whole site.
- Exclude these URLs
exclude_urlslist - Optional. Never count the goal on these pages.
Outputs
A project goal.
created_datetext- When the goal was created.
created_timenumber- When the goal was created, in Unix milliseconds.
display_nametext- The goal's name.
element_css_selectortext- The CSS selector of the element the goal tracks.
goal_idtext- The goal's id.
goal_id_stringtext- The goal's id, as text.
goal_statusnumber- 1 Active, 2 Paused.
goal_typenumber- 1 page visit, 2 link click, 3 form submit, 4 element click, 5 engagement, 6 custom event, 7 revenue, 8 time spent.
goal_urltext- The page the goal is tied to.
is_data_trackedtrue/false- Whether the goal has recorded any data.
linknametext- The goal's linkname; Get, Update and Delete goal take it.
project_idtext- The id of the goal's project.
project_linknametext- The linkname of the goal's project.
time_thresholdnumber- Seconds on the site that count as reaching a time-spent goal.
unique_goal_achieved_countnumber- Visitors who reached the goal.
unique_visitor_countnumber- Visitors counted for the goal.
Example output
{
"created_time": 1761700000000,
"display_name": "Signup time spent",
"element_css_selector": "",
"goal_id": "93969000000011017",
"goal_id_string": "93969000000011017",
"goal_status": 2,
"goal_type": 8,
"goal_url": "",
"is_data_tracked": false,
"linkname": "signup-time-spent",
"project_linkname": "my-website",
"time_threshold": 60
}