api.tipmoto.com » API documentation » Agendas » Dealers list » Dealer » Moto/Parts/Accessories » Statistics

Agenda stats (ad statistics)

Statistics of a single ad by day, week or month: ad detail views, impressions in result lists, click-throughs to the dealer's website, replies to the ad, saves to favourites, video plays and promotion boxes.
Based on the same counters and rules as the statistics in the dealer administration. The agenda is read-only and requires the statsperm permission. How the numbers are produced and how to read them is described in detail in the Statistics methodology.

Agenda features

Name Options
Supported methods GET
Support for detail levels ✔ (own selection of metrics, see detail levels)
Support for filtering ✘
Support for full-text search ✘
Support for pagination ✘
Support for sorting ✘
Support for external identifiers ✔
Support for schemas https://api.tipmoto.com/schemas/stats/inzerat.{xsd|rng}
Support for ?fail-on-warning ✘
Support for dry-run ✘
Returns location ✘

Address

An ad that is on the server:

https://api.tipmoto.com/c/{dealer ID}/{moto|dily|prislusenstvi}/{ad ID}/stats.{xml|json|html}

A deleted ad (archive):

https://api.tipmoto.com/c/{dealer ID}/archive/{moto|dily|prislusenstvi}/{ad ID}/stats.{xml|json|html}

Permissions

Parameters

Parameter Values Default Description
period day, week, month day Length of one period of the time series: a day, a week (ISO, Monday to Sunday) or a calendar month.
from, to YYYY-MM-DD see Range First and last day of the range (inclusive). Taken exactly, not snapped to whole weeks or months: a boundary period cut off by the range has neuplne="rozsah" on its metrics, and its od/do give the days actually covered. If from is later than to, they are swapped. Only from: to = today. Only to: from = to − 27 days.
location 1, 2, 3, 4 (several separated by commas, e.g. 1,2) all placements Filter by placement. Any filter excludes the reconstructed history (placement 0), so the metrics then start on the day when measurement by placement began. A metric that does not arise in the selected placements is missing from the document. A repeated value is merged, an empty location= means no filter, 0 is an invalid value.
breakdown location – Breakdown by placement: each obdobi and the souhrn additionally contain umisteni blocks (with lokace and the metrics that arise in that placement). With the breakdown, the akcniOkno and vybirame blocks move into the umisteni blocks and are then not present at the level of obdobi/souhrn. The videoUdrzeni block is not broken down.
detail id, summary, full, custom:… full Which metrics the document contains, see detail levels.
no-series true (1), false (0) false true = document without the time series rada, only with the summary. Makes the response smaller.
standard lang, xpath, code-in-response, no-http-errors, sessionid   Work as everywhere in the API, see URL parameters. xpath returns XML even for .json.
not supported section, order, filter, limit, start, add-row-count, fulltext, ftx-loc, usrval-show   The ad statistics do not support them and return 406 as soon as the parameter has a non-empty value, even 0 (limit=0 is an error). A parameter with an empty value (limit=) is treated as not given.

An invalid value of the period, from, to, location, breakdown, detail or no-series parameter returns 400 with a message that lists the allowed values. Values are case-sensitive.

Detail levels

Value Content
id Identification of the ad, rozsah and the coverage metriky as for full – without numbers (without souhrn and rada).
summary Five basic metrics: zobrazeni, vypis, urlKliknuti, odpovedi, schranka.
full (default) In addition videoPrehrani, videoDokoukano, the videoUdrzeni block and the akcniOkno and vybirame blocks.
custom:… Only the listed metrics and blocks, separated by commas: zobrazeni, vypis, urlKliknuti, odpovedi, schranka, videoPrehrani, videoDokoukano, videoUdrzeni, akcniOkno, vybirame. E.g. detail=custom:zobrazeni,odpovedi. Unknown items are ignored, as everywhere in the API; if the list contains only unknown items, the document is the same as for detail=id.

Placements

Where the visitor saw the ad. The placement number is in the lokace element; the list is in the agenda lists/lokacestats.

lokace Placement
0 Not distinguished – history reconstructed from backups (until dopoctenoDo). Appears only in the breakdown=location breakdown and cannot be used as a filter.
1 Main website www.tipmoto.com
2 Dealer subdomain
3 Widget on the dealer's website (embedded list web.tipmoto.com)
4 MotoInzerce.cz

Range

Zero and not measured

Incomplete values (neuplne)

The neuplne attribute on a metric says that the value covers only part of the period, and why. Several reasons are separated by commas in this order:

Reason Meaning
rozsah The period is cut off by the range (a week or month at the from/to boundary). Does not occur in the summary – it covers exactly the range used.
mereni The metric started to be measured in the period, has a gap in the data in it, or it is an incomplete first day of measurement (4 September 2026 for urlKliknuti, 7 September 2026 for schranka, 24 September 2026 for video, see catalogue); it is enough if this applies in one of the summed placements.
zivot The period contains the insertion or deletion of the ad or the boundary of a lifetime segment. Only for a week and a month – the day of insertion and deletion counts as a whole day.
bezi The period has not ended yet (it contains today). Also in the summary when the range contains today.

Example period=week&from=2026-09-16&to=2026-09-26 – the first week is cut off by the given from, and the promotion box on MotoInzerce.cz also had a gap in the data on 16 September 2026:

<obdobi>
  <od>2026-09-16</od>
  <do>2026-09-20</do>
  <tyden>2026-W38</tyden>
  <zobrazeni neuplne="rozsah" roboti="4" aiRoboti="0">21</zobrazeni>
  …
  <akcniOkno>
    <lokace>4</lokace>
    <zobrazeni neuplne="rozsah,mereni" roboti="0" aiRoboti="0">0</zobrazeni>
    <proklik neuplne="rozsah,mereni" roboti="0" aiRoboti="0">0</proklik>
  </akcniOkno>
  …
</obdobi>

Summary (dni, prumerDen)

Bots

Coverage of the metrics (metriky)

The metriky block appears once in the document and describes the coverage exactly for the data in the document (the chosen granularity, the location filter and the ad lifetime). A metric that does not arise in the selected placements or for the ad (e.g. video for parts) is not in it.

Metric catalogue

Key Name Sections and placements where it arises Data from Detail
zobrazeni Ad detail views moto: 1, 2, 3
dily: 1, 2
prislusenstvi: 1, 2
see data availability; until 28 August 2026 reconstructed from backups, measured since 29 August 2026 summary
vypis Impressions in result lists moto: 1, 2, 3
dily: 1, 2
prislusenstvi: 1, 2
29 August 2026 summary
urlKliknuti Click-through to the dealer's website moto: 1, 2
dily: 1, 2
prislusenstvi: 1
4 September 2026 (first day incomplete) summary
odpovedi Replies to the ad moto: 1, 2
dily: 1, 2
prislusenstvi: 1
see data availability; until 7 September 2026 reconstructed from backups, measured since 8 September 2026. For accessories reconstructed until 30 August 2026 and a gap in the data 31 August – 7 September 2026 summary
schranka Saved to favourites moto: 1, 2
dily: 1, 2
prislusenstvi: 1
7 September 2026 (first day incomplete) summary
videoPrehrani Video plays moto: 1, 2 24 September 2026 (first day incomplete), for an ad only from the day it got the video (see Video) full
videoDokoukano Watched to the end (video) moto: 1, 2 as videoPrehrani; only for a video uploaded to TipMoto full
akcniOkno Promotion box (akční okno) – block with lokace and the metrics zobrazeni (promotion box impressions) and proklik (click-through from the promotion box) moto: 1, 2, 4
dily: 2
prislusenstvi: none
29 August 2026; in placement 4 a gap in the data 15–16 September 2026 full
vybirame “Our pick” list on MotoInzerce.cz (Vybíráme z nabídky) – block with lokace and the metrics zobrazeni (list impressions) and proklik (click-through to the ad) moto: 4 29 August 2026; a gap in the data 15–16 September 2026 full

Placements see the placement table; a combination outside this table does not exist and is missing from the document. By month, the data of metrics measured since 2026 start with the first month of measurement. The new collection separates bots from the first day of measurement (robotiOd = merenoOd).

Video

The videoUdrzeni block is only in souhrn (not in the series) and contains only people, without bot attributes. The API does not calculate percentages; you calculate them from the values of the block:

Element Meaning
od, do Days the block covers: when the ad had a video in the range and existed, without the incomplete 24 September 2026. They may differ from the range of the summary.
prehraniVlastni Plays of the video uploaded to TipMoto – the base for the retention percentages.
ctvrtina, polovina, triCtvrtiny, dokoukano How many of these plays reached 25 %, 50 %, 75 % and 90 % of the time actually played.
prehrani Video plays from all sources (including YouTube). Because the block does not include the incomplete 24 September 2026, it may differ from videoPrehrani in the summary.
zobrazeniDetailu Ad detail views on the same days in placements 1 and 2 – the base for the share “X % of detail visits played the video”.

location=1 or 2 narrows the block to that placement; with location=3 or 4 the block is missing (video is not measured there). breakdown=location does not break it down.

Ad lifetime

Agenda elements

Machine name Name Type Information
id Ad ID integer  
id@ref Link to the ad record href For a deleted ad to the archive agenda.
idApi External ad ID string 64 Empty if the ad has no external ID.
section Agenda of the ad select Possible values:
  • moto
  • dily
  • prislusenstvi
archiv Deleted ad select Possible values:
  • 0 The ad is on the server (including a re-published one)
  • 1 Deleted ad, statistics from the archive
vlozeniCas Insertion of the ad datetime For a re-published ad the first insertion.
smazaniCas Deletion of the ad datetime Empty for an ad on the server.
rozsah/od, rozsah/do Range used date Missing for an empty range.
rozsah/period Period length select day, week, month; always.
rozsah/pozadovanoOd, rozsah/pozadovanoDo Requested range date The requested boundary (after filling in default values and swapping), only if it differs from the one used; always for an empty range.
rozsah/location Placement filter string Only if the parameter was used, e.g. 1,2.
rozsah/breakdown Breakdown select location; only if the parameter was used.
metriky/metrika Coverage of a metric element Children klic, nazev, od, uplneOd, dopoctenoDo, merenoOd, robotiOd, dira, pokryti, poznamka, see the catalogue and Coverage of the metrics.
souhrn Summary for the range element od, do, metrics, videoUdrzeni, the akcniOkno, vybirame blocks and (with the breakdown) umisteni.
rada/obdobi One period of the series element od, do (days actually covered), tyden (only period=week, e.g. 2026-W38), mesic (only period=month, e.g. 2026-09), metrics, the akcniOkno, vybirame blocks and (with the breakdown) umisteni.
{metrika} Value of the metric integer People and unidentified visitors, see the catalogue.
{metrika}@roboti, {metrika}@aiRoboti Bots, AI bots integer See Bots.
{metrika}@neuplne Incomplete value set rozsah, mereni, zivot, bezi (separated by commas).
{metrika}@dni, {metrika}@prumerDen Number of days, daily average integer, decimal Only in souhrn.
akcniOkno, vybirame, umisteni Blocks by placement element The placement is in the child lokace, followed by the metrics (in umisteni also the akcniOkno and vybirame blocks of that placement). The blocks are sorted by lokace in ascending order.
souhrn/videoUdrzeni Video retention element See Video.

The order of the children is fixed: identification (od, do, tyden/mesic), metrics in catalogue order, videoUdrzeni, the akcniOkno, vybirame, umisteni blocks.

Example

GET /c/12/moto/587316/stats.xml?from=2026-09-24&to=2026-09-26 (shortened, output with lang=en):

<!--Agenda documentation at: https://api.tipmoto.com/docs/agendas/stats/inzerat/
  Schemas (more about them at https://api.tipmoto.com/docs/ref/schemata/ ):
    https://api.tipmoto.com/schemas/stats/inzerat.xsd
    https://api.tipmoto.com/schemas/stats/inzerat.rng-->
<tipmoto>
  <!--Statistics of a single ad. Value 0 = measured and nobody came, a missing metric = not measured. The main number = people and unidentified visitors; bots are in the attributes.-->
  <stats>
    <id ref="/c/12/moto/587316.xml">587316</id>
    <idApi/>
    <section>moto</section>
    <!--1 = deleted ad (statistics from the archive), 0 = the ad is on the server-->
    <archiv>0</archiv>
    <!--Insertion and deletion of the ad (for a re-published ad the first insertion; smazaniCas is empty for an ad that is on the server). Cumulative lifetime counters are in the stats block of the ad record.-->
    <vlozeniCas>2025-09-01 18:53:41</vlozeniCas>
    <smazaniCas/>
    <!--The range actually used. pozadovanoOd/pozadovanoDo are present only when the API narrowed the range (future, start of the data, ad lifetime, whole months outside the daily data); location and breakdown only when the parameters were used.-->
    <rozsah>
      <od>2026-09-24</od>
      <do>2026-09-26</do>
      <period>day</period>
    </rozsah>
    <!--Coverage of the metrics in this document: od = first day with data (for the chosen granularity, placement and ad lifetime), dopoctenoDo = until when the values are reconstructed from backups, merenoOd = since when the new measurement applies, robotiOd = since when bots are separated (attributes roboti and aiRoboti).-->
    <metriky>
      <metrika>
        <klic>zobrazeni</klic>
        <nazev>Ad detail views</nazev>
        <od>2025-09-01</od>
        <dopoctenoDo>2026-08-28</dopoctenoDo>
        <merenoOd>2026-08-29</merenoOd>
        <robotiOd>2026-08-29</robotiOd>
      </metrika>
      <!-- … vypis, urlKliknuti, odpovedi, schranka -->
      <metrika>
        <klic>videoPrehrani</klic>
        <nazev>Video plays</nazev>
        <od>2026-09-24</od>
        <merenoOd>2026-09-24</merenoOd>
        <robotiOd>2026-09-24</robotiOd>
        <poznamka>Watching to the end is measured only for videos uploaded directly to TipMoto. For YouTube videos only plays are measured; viewing progress cannot be determined for them.</poznamka>
      </metrika>
      <!-- … videoDokoukano, akcniOkno, vybirame -->
    </metriky>
    <!--Totals for the range used. dni = number of complete days on which the metric was measured and the ad existed (without incomplete days and without today), prumerDen = total for these days / dni. neuplne = the value covers only part of the range (rozsah, mereni, zivot, bezi).-->
    <souhrn>
      <od>2026-09-24</od>
      <do>2026-09-26</do>
      <zobrazeni dni="3" prumerDen="4.33" roboti="1" aiRoboti="0">13</zobrazeni>
      <!-- … vypis, urlKliknuti, odpovedi, schranka -->
      <videoPrehrani dni="2" prumerDen="1.00" neuplne="mereni" roboti="0" aiRoboti="0">4</videoPrehrani>
      <videoDokoukano dni="2" prumerDen="1.00" neuplne="mereni" roboti="0" aiRoboti="0">3</videoDokoukano>
      <videoUdrzeni>
        <od>2026-09-25</od>
        <do>2026-09-26</do>
        <prehraniVlastni>2</prehraniVlastni>
        <ctvrtina>2</ctvrtina>
        <polovina>2</polovina>
        <triCtvrtiny>2</triCtvrtiny>
        <dokoukano>2</dokoukano>
        <prehrani>2</prehrani>
        <zobrazeniDetailu>8</zobrazeniDetailu>
      </videoUdrzeni>
      <akcniOkno>
        <lokace>1</lokace>
        <zobrazeni dni="3" prumerDen="177.67" roboti="174" aiRoboti="1">533</zobrazeni>
        <proklik dni="3" prumerDen="0.00" roboti="0" aiRoboti="0">0</proklik>
      </akcniOkno>
      <!-- … akcniOkno 2 and 4, vybirame -->
    </souhrn>
    <!--Time series: one obdobi element per day, week (ISO) or month; od/do are the days actually covered.-->
    <rada>
      <obdobi>
        <od>2026-09-24</od>
        <do>2026-09-24</do>
        <zobrazeni roboti="0" aiRoboti="0">5</zobrazeni>
        <!-- … vypis, urlKliknuti, odpovedi, schranka -->
        <videoPrehrani neuplne="mereni" roboti="0" aiRoboti="0">2</videoPrehrani>
        <videoDokoukano neuplne="mereni" roboti="0" aiRoboti="0">1</videoDokoukano>
        <akcniOkno>
          <lokace>1</lokace>
          <zobrazeni roboti="57" aiRoboti="1">157</zobrazeni>
          <proklik roboti="0" aiRoboti="0">0</proklik>
        </akcniOkno>
        <!-- … akcniOkno 2 and 4, vybirame -->
      </obdobi>
      <!-- … obdobi 2026-09-25 and 2026-09-26 -->
    </rada>
  </stats>
</tipmoto>

JSON

The same document as above in JSON (shortened, … = omitted):

{
  "tipmoto": {
    "stats": {
      "id": "587316",
      "idApi": "",
      "section": "moto",
      "archiv": "0",
      "vlozeniCas": "2025-09-01 18:53:41",
      "smazaniCas": "",
      "rozsah": {"od": "2026-09-24", "do": "2026-09-26", "period": "day"},
      "metriky": {"metrika": [
        {"klic": "zobrazeni", "nazev": "Ad detail views", "od": "2025-09-01", "dopoctenoDo": "2026-08-28", "merenoOd": "2026-08-29", "robotiOd": "2026-08-29"},
        …,
        {"klic": "vybirame", "nazev": "“Our pick” list on MotoInzerce.cz (Vybíráme z nabídky)", "od": "2026-08-29", "merenoOd": "2026-08-29", "robotiOd": "2026-08-29", "pokryti": [{"lokace": "4", "od": "2026-08-29"}]}
      ]},
      "souhrn": {
        "od": "2026-09-24", "do": "2026-09-26",
        "zobrazeni": "13", "vypis": "145", …, "videoPrehrani": "4", …,
        "vybirame": [{"lokace": "4", "zobrazeni": "0", "proklik": "0", "zobrazeni@dni": "3", "zobrazeni@prumerDen": "0.00", "zobrazeni@roboti": "0", "zobrazeni@aiRoboti": "0", "proklik@dni": "3", "proklik@prumerDen": "0.00", "proklik@roboti": "0", "proklik@aiRoboti": "0"}],
        "zobrazeni@dni": "3", "zobrazeni@prumerDen": "4.33", "zobrazeni@roboti": "1", "zobrazeni@aiRoboti": "0",
        …,
        "videoPrehrani@dni": "2", "videoPrehrani@prumerDen": "1.00", "videoPrehrani@neuplne": "mereni", "videoPrehrani@roboti": "0", "videoPrehrani@aiRoboti": "0",
        …
      },
      "rada": {"obdobi": [
        {"od": "2026-09-24", "do": "2026-09-24", "zobrazeni": "5", …, "videoPrehrani": "2", …,
         "akcniOkno": [{"lokace": "1", "zobrazeni": "157", "proklik": "0", "zobrazeni@roboti": "57", "zobrazeni@aiRoboti": "1", "proklik@roboti": "0", "proklik@aiRoboti": "0"}, …],
         "zobrazeni@roboti": "0", "zobrazeni@aiRoboti": "0", …, "videoPrehrani@neuplne": "mereni", …},
        …
      ]},
      "id@ref": "/c/12/moto/587316.json"
    }
  }
}

Errors

An error has the form <tipmoto><chyby><chyba>…</chyba></chyby></tipmoto> in the format of the request (.xml, .json, .html) and respects lang, code-in-response and no-http-errors, see Error handling.

HTTP code When
400 invalid value of the period, from, to, location (including 0), breakdown, detail or no-series parameter; the message lists the allowed values
402 the login does not have the statsperm permission for the dealer (also on the archive path); the dealer is suspended or does not have exports allowed
404 an agenda other than moto, dily, prislusenstvi; the ad is neither on the server nor in the archive, or does not belong to the dealer; a deleted ad addressed via api-{idApi} on the path for ads on the server; an ad that the dealer has hidden from the login's export server
405 a method other than GET
406 an unsupported parameter (section, order, filter, limit, start, add-row-count, fulltext, ftx-loc, usrval-show, even with the value 0); the external ID is not unique in the dealer's archive; an invalid xpath; the query is too demanding – shorten the range, use period=month or select fewer metrics (detail=custom:…)
410 a deleted ad addressed by its numeric ID on the path for ads on the server; the message contains the address of its statistics in the archive
500 an error while executing the query on our server
503 the database server is unavailable; repeat the request later

Example period=blbost (with lang=en):

<tipmoto>
  <success>false</success>
  <chyby>
    <chyba>Invalid value 'blbost' of URL parameter 'period'. Allowed values are 'day', 'week' and 'month'.</chyba>
  </chyby>
</tipmoto>

Extensibility

Elements, attributes and values (e.g. new metrics, blocks or neuplne reasons) may be added; the meaning of an existing element does not change. Ignore unknown elements, attributes and values. New elements are added at the end of the fixed order. A client that validates the output must use the current schema after an extension. We record every extension in the changelog.

TipMoto.com Contact us