FrantzPublic API
Guide

Statistics

For each job advert, Frantz gives the numbers per channel: what the advertising networks showed, and what the visitors did on the job ad's page.

The call

GET/api/v2/job-adverts/{connectId}/statistics needs the scope statistics:read. It gives the numbers for the job ad's whole life, for every channel the job ad got visitors through: the channels of all its campaigns, and visitors who did not come through a campaign.

JSON
{
  "connectId": 744376,
  "from": null,
  "to": null,
  "dataUntil": "2026-10-25",
  "channels": [
    {
      "channelId": 90211,
      "network": "meta",
      "name": "Meta",
      "impressions": 15230,
      "clicks": 412,
      "pageViews": 388,
      "readMoreClicks": 141,
      "readers": 97,
      "applyClicks": 31,
      "avgTimeSeconds": 74.5
    },
    {
      "channelId": null,
      "network": null,
      "name": "Direktetrafikk",
      "impressions": 0,
      "clicks": 0,
      "pageViews": 52,
      "readMoreClicks": 20,
      "readers": 14,
      "applyClicks": 6,
      "avgTimeSeconds": 81.2
    }
  ]
}

The numbers

FieldCounted byWhat it is
impressionsThe networkTimes the advertising network showed the ads.
clicksThe networkClicks on the ads, as the network counts them.
pageViewsThe scriptVisits to the job ad's page.
readMoreClicksThe scriptVisits where the visitor clicked read more or scrolled into the text.
readersThe scriptVisits where the visitor read the text.
applyClicksThe scriptVisits where the visitor clicked the apply button.
avgTimeSecondsThe scriptAverage time on the page, in seconds.

The networks and the script count differently, so clicks and pageViews rarely match. The script counts only visitors who consent to it, and some leave before the page has loaded.

Channels

  • channelId is Frantz' id for a campaign channel. It stays the same for the channel's whole life, so use it as the key when you store the numbers.
  • network is the advertising network in lower case: meta, linkedin, bidtheatre, google, snapchat, finn, youtube, instagram, tiktok, twitter or reddit. More can come, so handle a value you do not know.
  • name is the channel or source as the Frantz report names it, often in Norwegian. Show it, but do not use it as a key.

Visitors who did not come through a Frantz channel, such as direct traffic, have channelId and network set to null, and name says where they came from.

When the numbers change

  • The numbers are not live. Frantz adds the visits of a day during the following night, and dataUntil is the last day they include. It is null before the first visit.
  • Read them once a day, in the morning, from a background job, and store them with dataUntil. Do not fetch them while a user waits: the call can take a few seconds.
  • Frantz stops counting after the job advert's endDate.

A period, and per day

from and to give the numbers for a period, both days included: GET /api/v2/job-adverts/{connectId}/statistics?from=2026-10-01&to=2026-10-31. Send both, or neither.

  • The numbers are the visits in the period, per channel. A channel without visits in the period has 0.
  • avgTimeSeconds is the average time of the period's visits.
  • Add interval=day to also get days on each channel: one entry per day, with that day's numbers. It needs from and to, at most 366 days apart.
  • The days stop at dataUntil, the last day with numbers, also when to is later. A day without visitors is 0.
  • from and to in the answer are the period you asked for.

impressions and clicks are null for a period and in days, until Frantz stores the advertising networks' numbers per day. Without from and to, they are there as before.

A job ad that is advertised in several periods, with breaks between them, can keep one job advert for its whole life. Set its endDate to when the job ad is taken down, not to the end of each campaign: Frantz counts visits up to and including endDate, also in the breaks. Then ask for each period with from and to.

Campaign statistics

Campaigns ordered through the API have their own statistics, GET /api/v2/campaigns/{campaignId}/statistics, in the same shape but with only the campaign's own channels. Visitors who came another way, such as direct traffic, are in the statistics of the campaign's job advert. from, to and interval=day work the same way there.