We've updated our API endpoints to match what we use in our application. Some endpoints have been deprecated. See our Deprecated Endpoints page for migration details.
curl --request POST \
--url https://management.scanova.io/analytics/ct/ \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"filter_by": "qrid",
"q": [
"Q20a18d4af3e947a1"
]
}
'{
"conversion": {
"meta": {
"warnings": [],
"unlinked_qrs": []
},
"count": {
"total_events": 12,
"total_conversions": 12,
"unique_sessions": 2,
"conversion_rate": 600,
"revenue": 0,
"primary_currency": null,
"currency_warning": null,
"period": {
"start": "2026-02-08",
"end": "2026-03-10"
}
},
"trend": [
{
"date": "2026-02-26",
"unique_sessions": 1,
"conversions": 7,
"events": 7,
"conversion_rate": 700
},
{
"date": "2026-03-02",
"unique_sessions": 1,
"conversions": 5,
"events": 5,
"conversion_rate": 500
}
],
"event_breakdown": [
{
"event": "scroll",
"total_events": 7,
"unique_sessions": 2,
"conversions": 7
},
{
"event": "click",
"total_events": 3,
"unique_sessions": 1,
"conversions": 3
},
{
"event": "pageview",
"total_events": 2,
"unique_sessions": 2,
"conversions": 2
}
],
"site_breakdown": [
{
"site": {
"site_id": "pID5CJUPr6VgP53FJLCeNZpk9tQwQi0JpPmECQoxAEeTzrtzoQxCOAkSxrCQb3c4",
"name": "Sample Site 1"
},
"total_events": 12,
"unique_sessions": 2,
"conversions": 12,
"conversion_rate": 600
}
],
"funnel": [
{
"step": "pageview",
"sessions": 2,
"drop_off_percent": 0
},
{
"step": "click",
"sessions": 1,
"drop_off_percent": 50
},
{
"step": "scroll",
"sessions": 1,
"drop_off_percent": 0
}
],
"hybrid_funnel": [
{
"step": "scan",
"sessions": 17,
"drop_off_percent": 0
},
{
"step": "pageview",
"sessions": 2,
"drop_off_percent": 88.24
},
{
"step": "click",
"sessions": 1,
"drop_off_percent": 50
},
{
"step": "scroll",
"sessions": 1,
"drop_off_percent": 0
}
],
"summary": {
"visitors": 2,
"pageviews": 2,
"events": 12,
"conversions": 12,
"revenue": 0
},
"traffic": {
"visitors_by_date": [
{
"date": "2026-02-26",
"visitors": 1
},
{
"date": "2026-03-02",
"visitors": 1
}
],
"top_pages": []
},
"audience": {
"countries": [],
"devices": [],
"browsers": []
},
"behavior": {
"top_events": [
{
"event": "scroll",
"total_events": 7,
"unique_sessions": 2,
"conversions": 7
}
],
"event_timeline": [
{
"date": "2026-02-26",
"unique_sessions": 1,
"conversions": 7,
"events": 7,
"conversion_rate": 700
}
]
},
"qr_performance": [
{
"qrid": "Q20a18d4af3e947a1",
"total_events": 12,
"unique_sessions": 2,
"conversions": 12,
"conversion_rate": 600,
"revenue": 0
}
]
},
"scan_overview": {
"total": 17,
"elevation": {
"percent": 100,
"previous": 0,
"type": "+",
"period": {
"start": "2026-01-08T18:07:00Z",
"end": "2026-02-07T18:07:00Z"
}
},
"unique": 2,
"unique_elevation": {
"percent": 100,
"previous": 0,
"type": "+",
"period": {
"start": "2026-01-08T18:07:00Z",
"end": "2026-02-07T18:07:00Z"
}
},
"scan_qr": 0,
"scan_url": 17
}
}Generate conversion analytics for selected QR Codes, with KPI, trend, event/site breakdown, and funnel outputs.
curl --request POST \
--url https://management.scanova.io/analytics/ct/ \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"filter_by": "qrid",
"q": [
"Q20a18d4af3e947a1"
]
}
'{
"conversion": {
"meta": {
"warnings": [],
"unlinked_qrs": []
},
"count": {
"total_events": 12,
"total_conversions": 12,
"unique_sessions": 2,
"conversion_rate": 600,
"revenue": 0,
"primary_currency": null,
"currency_warning": null,
"period": {
"start": "2026-02-08",
"end": "2026-03-10"
}
},
"trend": [
{
"date": "2026-02-26",
"unique_sessions": 1,
"conversions": 7,
"events": 7,
"conversion_rate": 700
},
{
"date": "2026-03-02",
"unique_sessions": 1,
"conversions": 5,
"events": 5,
"conversion_rate": 500
}
],
"event_breakdown": [
{
"event": "scroll",
"total_events": 7,
"unique_sessions": 2,
"conversions": 7
},
{
"event": "click",
"total_events": 3,
"unique_sessions": 1,
"conversions": 3
},
{
"event": "pageview",
"total_events": 2,
"unique_sessions": 2,
"conversions": 2
}
],
"site_breakdown": [
{
"site": {
"site_id": "pID5CJUPr6VgP53FJLCeNZpk9tQwQi0JpPmECQoxAEeTzrtzoQxCOAkSxrCQb3c4",
"name": "Sample Site 1"
},
"total_events": 12,
"unique_sessions": 2,
"conversions": 12,
"conversion_rate": 600
}
],
"funnel": [
{
"step": "pageview",
"sessions": 2,
"drop_off_percent": 0
},
{
"step": "click",
"sessions": 1,
"drop_off_percent": 50
},
{
"step": "scroll",
"sessions": 1,
"drop_off_percent": 0
}
],
"hybrid_funnel": [
{
"step": "scan",
"sessions": 17,
"drop_off_percent": 0
},
{
"step": "pageview",
"sessions": 2,
"drop_off_percent": 88.24
},
{
"step": "click",
"sessions": 1,
"drop_off_percent": 50
},
{
"step": "scroll",
"sessions": 1,
"drop_off_percent": 0
}
],
"summary": {
"visitors": 2,
"pageviews": 2,
"events": 12,
"conversions": 12,
"revenue": 0
},
"traffic": {
"visitors_by_date": [
{
"date": "2026-02-26",
"visitors": 1
},
{
"date": "2026-03-02",
"visitors": 1
}
],
"top_pages": []
},
"audience": {
"countries": [],
"devices": [],
"browsers": []
},
"behavior": {
"top_events": [
{
"event": "scroll",
"total_events": 7,
"unique_sessions": 2,
"conversions": 7
}
],
"event_timeline": [
{
"date": "2026-02-26",
"unique_sessions": 1,
"conversions": 7,
"events": 7,
"conversion_rate": 700
}
]
},
"qr_performance": [
{
"qrid": "Q20a18d4af3e947a1",
"total_events": 12,
"unique_sessions": 2,
"conversions": 12,
"conversion_rate": 600,
"revenue": 0
}
]
},
"scan_overview": {
"total": 17,
"elevation": {
"percent": 100,
"previous": 0,
"type": "+",
"period": {
"start": "2026-01-08T18:07:00Z",
"end": "2026-02-07T18:07:00Z"
}
},
"unique": 2,
"unique_elevation": {
"percent": 100,
"previous": 0,
"type": "+",
"period": {
"start": "2026-01-08T18:07:00Z",
"end": "2026-02-07T18:07:00Z"
}
},
"scan_qr": 0,
"scan_url": 17
}
}| Parameter | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Comma-separated sections to return. Supported: count, trend, event_breakdown, site_breakdown, funnel, scan_overview, hybrid_funnel, summary, traffic, audience, behavior, qr_performance, raw. |
from | string (YYYY-MM-DD) | Yes | Inclusive start date. |
to | string (YYYY-MM-DD) | Yes | Inclusive end date. |
all | boolean | No | Include all QR Codes in scope. |
search | string | No | Search value used with all=true. |
category | string | No | Comma-separated category slugs. |
users | string | No | Comma-separated user IDs. |
conversion_events | string | No | Comma-separated conversion event keys. Default: purchase,signup,lead,conversion. |
funnel_steps | string | No | Ordered comma-separated event keys for funnel calculation. |
| Field | Type | Required | Description |
|---|---|---|---|
filter_by | string | Yes | One of: qrid, id, tags. |
q | array[string] | Yes | Values corresponding to filter_by. |
curl -X POST "https://management.scanova.io/analytics/ct/?type=count,trend,event_breakdown,site_breakdown,funnel&from=2026-03-03&to=2026-03-10&search=trac&conversion_events=purchase,signup,lead,conversion&funnel_steps=pageview,click,purchase" \
-H "Authorization: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"filter_by": "qrid",
"q": ["Q20a18d4af3e947a1"]
}'
{
"conversion": {
"meta": {
"warnings": [],
"unlinked_qrs": []
},
"count": {
"total_events": 12,
"total_conversions": 12,
"unique_sessions": 2,
"conversion_rate": 600.0,
"revenue": 0.0,
"primary_currency": null,
"currency_warning": null,
"period": {
"start": "2026-02-08",
"end": "2026-03-10"
}
},
"trend": [
{
"date": "2026-02-26",
"unique_sessions": 1,
"conversions": 7,
"events": 7,
"conversion_rate": 700.0
},
{
"date": "2026-03-02",
"unique_sessions": 1,
"conversions": 5,
"events": 5,
"conversion_rate": 500.0
}
],
"event_breakdown": [
{
"event": "scroll",
"total_events": 7,
"unique_sessions": 2,
"conversions": 7
},
{
"event": "click",
"total_events": 3,
"unique_sessions": 1,
"conversions": 3
},
{
"event": "pageview",
"total_events": 2,
"unique_sessions": 2,
"conversions": 2
}
],
"site_breakdown": [
{
"site": {
"site_id": "pID5CJUPr6VgP53FJLCeNZpk9tQwQi0JpPmECQoxAEeTzrtzoQxCOAkSxrCQb3c4",
"name": "Sample Site 1"
},
"total_events": 12,
"unique_sessions": 2,
"conversions": 12,
"conversion_rate": 600.0
}
],
"funnel": [
{
"step": "pageview",
"sessions": 2,
"drop_off_percent": 0
},
{
"step": "click",
"sessions": 1,
"drop_off_percent": 50.0
},
{
"step": "scroll",
"sessions": 1,
"drop_off_percent": 0.0
}
],
"hybrid_funnel": [
{
"step": "scan",
"sessions": 17,
"drop_off_percent": 0
},
{
"step": "pageview",
"sessions": 2,
"drop_off_percent": 88.24
},
{
"step": "click",
"sessions": 1,
"drop_off_percent": 50.0
},
{
"step": "scroll",
"sessions": 1,
"drop_off_percent": 0.0
}
]
},
"scan_overview": {
"total": 17,
"elevation": {
"percent": 100,
"previous": 0,
"type": "+",
"period": {
"start": "2026-01-08T18:07:00Z",
"end": "2026-02-07T18:07:00Z"
}
},
"unique": 2,
"unique_elevation": {
"percent": 100,
"previous": 0,
"type": "+",
"period": {
"start": "2026-01-08T18:07:00Z",
"end": "2026-02-07T18:07:00Z"
}
},
"scan_qr": 0,
"scan_url": 17
}
}
API key authentication. Enter your API key directly in the Authorization header.
Comma-separated analytics sections.
Start date (inclusive). Format: YYYY-MM-DD
End date (inclusive). Format: YYYY-MM-DD
Include all QRs in scope.
Search value used with all=true.
Comma-separated category slugs.
Comma-separated user IDs.
Comma-separated conversion event keys.
Ordered comma-separated funnel step event keys.
Conversion analytics generated successfully
The response is of type object.
Was this page helpful?