Insider On Site API

The OnSite API from Insider — 3 operation(s) for onsite.

Operations 3

GET /onsite/v1/all Get onsite overall analytics #
GET /onsite/v1/campaign Get onsite campaign analytics #
POST /onsite/v2/all Change filter values #

Documentation

📖
Documentation
https://academy.insiderone.com/docs/ucd-user-data-apis-overview
📖
APIReference
https://developers.insiderone.com/
📖
Authentication
https://raw.githubusercontent.com/api-evangelist/insider/refs/heads/main/authentication/insider-authentication.yml
📖
RateLimits
https://raw.githubusercontent.com/api-evangelist/insider/refs/heads/main/rate-limits/insider-rate-limits.yml
📖
Documentation
https://academy.insiderone.com/docs/data-collection-consent-apis
📖
Documentation
https://academy.insiderone.com/docs/email-apis-overview
📖
Documentation
https://academy.insiderone.com/docs/transactional-sms-overview
📖
Documentation
https://academy.insiderone.com/docs/whatsapp-transactional-api
📖
Documentation
https://academy.insiderone.com/docs/web-push-apis-overview
📖
Documentation
https://academy.insiderone.com/docs/app-push-apis-overview
📖
Documentation
https://academy.insiderone.com/docs/mobile-app-analytics-apis
📖
Documentation
https://academy.insiderone.com/docs/mobile-app-integration-guide-1
📖
Documentation
https://academy.insiderone.com/docs/otp-for-sms
📖
Documentation
https://academy.insiderone.com/docs/product-catalog-api-introduction
📖
Documentation
https://academy.insiderone.com/docs/recommendation-api
📖
Documentation
https://academy.insiderone.com/docs/eureka-search-api-overview
📖
Documentation
https://academy.insiderone.com/docs/eureka-event-collection-api-implementation
📖
Documentation
https://academy.insiderone.com/docs/email-analytics-api
📖
Documentation
https://academy.insiderone.com/docs/architect-analytics-api
📖
Documentation
https://academy.insiderone.com/docs/transactional-journeys-on-api-call-starter

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/insider-onsite-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

insider-onsite-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Insider One Analytics On Site API
  version: 1.0.0
  description: 'Email and OnSite campaign lists, campaign statistics and overall analytics.


    Derived by API Evangelist from Insider One''s own public Postman collection ("Insider One APIs", published at https://developers.insiderone.com/). Paths, methods, headers, query parameters and request/response examples are verbatim from that collection; nothing is invented. The 429 response is documented for all Insider One APIs on https://academy.insiderone.com/docs/api-rate-limits-1 .'
  contact:
    name: Insider One Support
    email: support@useinsider.com
    url: https://academy.insiderone.com/docs/insider-one-apis-1
  termsOfService: https://insiderone.com/terms-of-use/
servers:
- url: https://analytics.api.useinsider.com
tags:
- name: OnSite
paths:
  /onsite/v1/all:
    get:
      operationId: getOnsiteOverallAnalytics
      summary: Get onsite overall analytics
      tags:
      - OnSite
      description: This API enables you to change the filter values on OnSite campaign analytics from your own back-end without using Insider’s platform.
      security:
      - InsAuthKey: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
                data:
                  details:
                  - activeDays: 87
                    averageOrderValue: 0
                    averageOrderValueUplift: 0
                    bayesianSignificance: 0.9999
                    builderType: custom
                    campaignId: 99
                    campaignName: My campaign
                    clickConversion: 364
                    clickThroughRate: 0.023144910027341516
                    conversionRateUplift: 0
                    goalId: 0
                    impression: 15727
                    incrementalConversion: 364
                    incrementalRevenue: 0
                    revenue: 0
                    revenueFromClick: 0
                    salesConversion: 0
                    salesConversionRate: 0
                    salesFromClick: 0
                    selectedGoalConversion: 364
                    selectedGoalConversionRate: 0.023144910027341516
                    selectedGoalId: 0
                    significance: 0.9999
                  - activeDays: 19
                    averageOrderValue: 0
                    averageOrderValueUplift: 0
                    bayesianSignificance: 0.2214
                    builderType: custom
                    campaignId: 101
                    campaignName: My amazing campaign
                    clickConversion: 3
                    clickThroughRate: 0.0032258064516129032
                    conversionRateUplift: 0
                    goalId: 0
                    impression: 930
                    incrementalConversion: 3
                    incrementalRevenue: 0
                    revenue: 0
                    revenueFromClick: 0
                    salesConversion: 0
                    salesConversionRate: 0
                    salesFromClick: 0
                    selectedGoalConversion: 3
                    selectedGoalConversionRate: 0.0032258064516129032
                    selectedGoalId: 0
                    significance: 0.3328
                  goalIdList:
                  - 39
                  - 40
                  - 32
                  - 41
                  - 38
        '429':
          $ref: '#/components/responses/TooManyRequests'
  /onsite/v1/campaign:
    get:
      operationId: getOnsiteCampaignAnalytics
      summary: Get onsite campaign analytics
      tags:
      - OnSite
      description: 'This API enables you to change the filter values on OnSite campaign analytics from your own back-end without using Insider’s platform.


        Query Parameters

        You need to send the filters in body parameters.


        Parameter

        Data Type

        Description

        Sample Value

        Required


        startTime

        int64

        Specifies a 10-digit epoch start time

        1606669200

        Yes


        endTime

        int64

        Specifies a 10-digit epoch end time

        1606755599

        No


        campaignReportType

        String

        The campaign report type to be used

        "ab", "hundred"

        Yes


        selectedGoalType

        String

        The goal type of the data

        “sales”, “click”, “salesFromClick”, “custom”

        Yes


        reportType

        String

        The report type for data to be fetched

        “detail”, “summary”

        Yes


        filters

        String

        Used for filtering campaigns


        Yes (if you would like to get filtered results)


        field

        String

        Metrics used in analytics

        “impression”, “significance”

        Yes (if you add filters)


        operator

        String

        Used for searching for values in a given field.

        ”gte”, “gt”, “eq”, “lt”, “lte”

        Yes (if you add filters)


        value

        Float

        The value of the field.

        0

        No


        Adding filters is only valid for all campaign stats.


        If you add filters parameter to body and there is no value, the request is sent with default values of the filters that you can see below:


        "filters": [

        {

        "field": "impression",

        "operator": "gte",

        "value": 200

        },

        {

        "field": "significance",

        "operator": "gte",

        "value": 0

        }

        ]


        Before sending the request, make sure to replace the authorization value with your own OnSite Campaign Analytics API key.


        Sample Responses

        200 OK

        The following response returns if the request is successful.


        {

        "data": {

        "details": [

        {

        "activeDays": 239,

        "averageOrderValue": 260.53068340306834,

        "averageOrderValueUplift": 0.2435810228696742,

        "bayesianSignificance": 0.9999,

        "builderType": "custom",

        "campaignId": 8,

        "campaignName": "My campaign",

        "clickConversion": 19598,

        "clickThroughRate": 0.19069767441860466,

        "conversionRateUplift": 0.4216142270861831,

        "goalId": 0,

        "impression": 102770,

        "incrementalConversion": 1701.150115473441,

        "incrementalRevenue": 649101.4595842956,

        "revenue": 1494404,

        "revenueFromClick": 373601,

        "salesConversion": 5736,

        "salesConversionRate": 0.05581395348837209,

        "salesFromClick": 1434,

        "selectedGoalConversion": 5736,

        "selectedGoalConversionRate": 0.05581395348837209,

        "selectedGoalId": 0,

        "significance": 0.9999199999999999

        },

        {

        "activeDays": 239,

        "averageOrderValue": 227.98419339841934,

        "averageOrderValueUplift": 0.24369133790924957,

        "bayesianSignificance": 0.9999,

        "builderType": "custom",

        "campaignId": 20,

        "campaignName": "My amazing campaign",

        "clickConversion": 26768,

        "clickThroughRate": 0.2196078431372549,

        "conversionRateUplift": 0.39276018099547527,

        "goalId": 0,

        "impression": 121890,

        "incrementalConversion": 1213.1695906432751,

        "incrementalRevenue": 414566.7134502925,

        "revenue": 980788,

        "revenueFromClick": 217953,

        "salesConversion": 4302,

        "salesConversionRate": 0.03529411764705882,

        "salesFromClick": 956,

        "selectedGoalConversion": 4302,

        "selectedGoalConversionRate": 0.03529411764705882,

        "selectedGoalId": 0,

        "significance": 0.9999199999999999

        }

        ],

        "goalIdList": [

        1001362,

        1001365,

        1001368

        ]

        }

        }


        400 Bad Request

        Sorry, we’ve received an invalid request from your side. You can try again later.


        400 Bad Request

        Sorry, we received an invalid request. The start date cannot be after the end date.


        406 Not Acceptable Request

        Sorry, we received an invalid request. We are able to provide the analytics data for only the last 1 year.


        500 Internal Server Error

        Sorry, we couldn’t receive any response from our server. You can try again later.


        Limitations

        When sending your request, make sure to follow these limitations.


        All functions must be executed with an HTTPSPOST request.


        The x-ins-auth-key should be provided as the authorization key on the request header. If the key is incorrect, the operation will not be executed and an authorization error will return in the response.


        You can send 100 requests/per minute with the same API key. If you exceed the rate limit, you will receive a 429 error.'
      security:
      - InsAuthKey: []
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
                data:
                  detail:
                    click:
                      '98':
                      - averageOrderValue: 0
                        averageOrderValueUplift: 0
                        bayesianSignificance: 0
                        campaignId: 98
                        campaignName: My campaign
                        conversion: 0
                        conversionRate: 0
                        conversionRateUplift: 0
                        goal: click
                        goalConversion: 0
                        goalConversionRate: 0
                        impression: 2325
                        incrementalConversion: 0
                        incrementalRevenue: 0
                        leadCount: 0
                        platform: all
                        revenue: 0
                        salesConversion: 0
                        salesConversionRate: 0
                        significance: 0
                      '99':
                      - averageOrderValue: 0
                        averageOrderValueUplift: 0
                        bayesianSignificance: 0.9999
                        campaignId: 99
                        campaignName: My amazing campaign
                        conversion: 364
                        conversionRate: 0.023144910027341516
                        conversionRateUplift: 0
                        goal: click
                        goalConversion: 364
                        goalConversionRate: 0.023144910027341516
                        impression: 15727
                        incrementalConversion: 364
                        incrementalRevenue: 0
                        leadCount: 0
                        platform: all
                        revenue: 0
                        salesConversion: 0
                        salesConversionRate: 0
                        significance: 0.9999
                    sales:
                      '98':
                      - averageOrderValue: 0
                        averageOrderValueUplift: 0
                        bayesianSignificance: 0.8702
                        campaignId: 98
                        campaignName: My campaign
                        conversion: 0
                        conversionRate: 0
                        conversionRateUplift: 0
                        goal: sales
                        goalConversion: 0
                        goalConversionRate: 0
                        impression: 2325
                        incrementalConversion: 0
                        incrementalRevenue: 0
                        leadCount: 0
                        platform: all
                        revenue: 0
                        salesConversion: 0
                        salesConversionRate: 0
                        significance: 0
                      '99':
                      - averageOrderValue: 0
                        averageOrderValueUplift: 0
                        bayesianSignificance: 0.1297
                        campaignId: 99
                        campaignName: My amazing campaign
                        conversion: 0
                        conversionRate: 0
                        conversionRateUplift: 0
                        goal: sales
                        goalConversion: 0
                        goalConversionRate: 0
                        impression: 15727
                        incrementalConversion: 0
                        incrementalRevenue: 0
                        leadCount: 0
                        platform: all
                        revenue: 0
                        salesConversion: 0
                        salesConversionRate: 0
                        significance: 0
                    salesFromClick:
                      '98':
                      - averageOrderValue: 0
                        averageOrderValueUplift: 0
                        bayesianSignificance: 0.8702
                        campaignId: 98
                        campaignName: My campaign
                        conversion: 0
                        conversionRate: 0
                        conversionRateUplift: 0
                        goal: salesFromClick
                        goalConversion: 0
                        goalConversionRate: 0
                        impression: 2325
                        incrementalConversion: 0
                        incrementalRevenue: 0
                        leadCount: 0
                        platform: all
                        revenue: 0
                        salesConversion: 0
                        salesConversionRate: 0
                        significance: 0
                      '99':
                      - averageOrderValue: 0
                        averageOrderValueUplift: 0
                        bayesianSignificance: 0.1297
                        campaignId: 99
                        campaignName: My amazing campaign
                        conversion: 0
                        conversionRate: 0
                        conversionRateUplift: 0
                        goal: salesFromClick
                        goalConversion: 0
                        goalConversionRate: 0
                        impression: 15727
                        incrementalConversion: 0
                        incrementalRevenue: 0
                        leadCount: 0
                        platform: all
                        revenue: 0
                        salesConversion: 0
                        salesConversionRate: 0
                        significance: 0
                  summary:
                    '98': 64
                    '99': 87
        '429':
          $ref: '#/components/responses/TooManyRequests'
  /onsite/v2/all:
    post:
      operationId: changeFilterValues
      summary: Change filter values
      tags:
      - OnSite
      description: This API enables you to change the filter values on OnSite campaign analytics from your own back-end without using Insider’s platform.
      security:
      - InsAuthKey: []
      responses:
        '429':
          $ref: '#/components/responses/TooManyRequests'
components:
  responses:
    TooManyRequests:
      description: Too Many Requests. The published per-endpoint rate limit was exceeded; back off and retry, honouring Retry-After when present.
      content:
        application/json:
          example:
            message: Too Many Requests
            status: 429
  securitySchemes:
    InsAuthKey:
      type: apiKey
      in: header
      name: X-INS-AUTH-KEY
      description: Insider One authorization key for this API, generated in the InOne panel.
externalDocs:
  description: Insider One API reference
  url: https://academy.insiderone.com/docs/api-reference-welcome
x-provenance:
  generated: '2026-08-13'
  method: derived
  source: postman/insider-one-apis.postman_collection.json
  source_url: https://documenter.gw.postman.com/api/collections/24851117/2sB3dSR9bM
  publisher_page: https://developers.insiderone.com/
  note: Insider One publishes a single public Postman collection covering every REST API. This document is the subset of that collection served from analytics.api.useinsider.com.