Instana Website Metrics API

The Website Metrics API from Instana — 3 operation(s) for website metrics.

Business capability
Observability Management BC-4220.20

Operations 3

POST /api/website-monitoring/metrics Get beacon metrics #
GET /api/website-monitoring/page-load{id}{timestamp} Get page load #
POST /api/website-monitoring/v2/metrics Get beacon metrics #

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/instana-website-metrics-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

instana-website-metrics-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@instana.com
    name: © Instana
    url: http://instana.com
  termsOfService: https://www.instana.com/terms-of-use/
  title: Instana REST API documentation Website Metrics API
  version: 1.307.1417
  x-ibm-ahub-try: true
  x-logo:
    altText: instana logo
    backgroundColor: '#FAFBFC'
    url: header-logo.svg
  description: Searching for answers and best pratices?
servers:
- description: Instana Backend
  url: https://{unit}-{tenant}.instana.io
  variables:
    tenant:
      default: tenant
      description: Customer tenant unit
    unit:
      default: unit
      description: Customer tenant name
- description: Instana Self-Hosted Backend
  url: https://{domain}
  variables:
    domain:
      default: example.com
      description: Customer Self-Hosted domain
tags:
- name: Website Metrics
paths:
  /api/website-monitoring/metrics:
    post:
      deprecated: true
      description: API request to get website monitoring beacon metrics.
      operationId: getBeaconMetrics
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetWebsiteMetrics'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebsiteMetricResult'
          description: OK
      security:
      - ApiKeyAuth:
        - Default
      summary: Get beacon metrics
      tags:
      - Website Metrics
      x-ibm-ahub-byok: true
  /api/website-monitoring/page-load{id}{timestamp}:
    get:
      description: API request to get website monitoring beacons for a page load.
      operationId: getPageLoad
      parameters:
      - description: Identifier of the page load to be retrieved
        example: 63f5b070e8d9a597
        in: path
        name: id
        required: true
        schema:
          type: string
        style: matrix
      - description: Timestamp of the page load to be retrieved
        example: 1707012285674
        in: path
        name: timestamp
        required: true
        schema:
          type: integer
          format: int64
        style: matrix
      responses:
        '200':
          content:
            application/json:
              example:
              - websiteId: example website id
                websiteLabel: robot-shop
                page: Home
                phase: pageLoad
                timestamp: 1707012285674
                clockSkew: 447
                duration: 120
                batchSize: 1
                accurateTimingsAvailable: true
                deprecations: []
                pageLoadId: 974bca2eb13047c
                sessionId: e995a184bb4b4e0
                beaconId: 0974bca2eb13047c
                backendTraceId: c92e3ec967ef173f
                type: pageLoad
                customEventName: ''
                meta:
                  stage: production
                  status: bronze
                locationUrl: http://robotshop.instana.com/
                locationOrigin: http://robotshop.instana.com
                locationPath: /
                errorCount: 0
                errorMessage: ''
                errorId: ''
                errorType: ''
                parsedStackTrace: []
                componentStack: ''
                userIp: 87.191.0.0
                userId: example user id
                userName: example user name
                userEmail: example@example.com
                userLanguages:
                - de-DE
                deviceType: ''
                connectionType: 4g
                browserName: Firefox
                browserVersion: '63'
                osName: Ubuntu
                osVersion: '18'
                windowHidden: false
                windowWidth: 1149
                windowHeight: 1008
                latitude: 50.8021
                longitude: 8.7857
                accuracyRadius: 200
                city: Weidenhausen
                subdivision: Hesse
                subdivisionCode: HE
                country: Germany
                countryCode: DE
                continent: Europe
                continentCode: EU
                httpCallUrl: ''
                httpCallOrigin: ''
                httpCallPath: ''
                httpCallMethod: ''
                httpCallStatus: 400
                httpCallCorrelationAttempted: false
                httpCallAsynchronous: false
                initiator: html
                resourceType: document
                cacheInteraction: ''
                encodedBodySize: -1
                decodedBodySize: -1
                transferSize: -1
                unloadTime: 0
                redirectTime: 0
                appCacheTime: 0
                dnsTime: 0
                tcpTime: 0
                sslTime: 0
                requestTime: 42
                responseTime: 1
                processingTime: -1
                onLoadTime: 1
                backendTime: 51
                frontendTime: -1
                domTime: -1
                childrenTime: 5
                firstPaintTime: 331
                firstContentfulPaintTime: 331
                largestContentfulPaintTime: 331
                firstInputDelayTime: -1
                cumulativeLayoutShift: -1
                cspBlockedUri: ''
                cspEffectiveDirective: ''
                cspOriginalPolicy: ''
                cspDisposition: ''
                cspSample: ''
                cspSourceFile: ''
                cspLineNumber: -1
                cspColumnNumber: -1
                snippetVersion: '2'
                httpCallHeaders: {}
                parentBeaconId: ''
                interactionNextPaint: -1
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WebsiteMonitoringBeacon'
          description: OK
        '400':
          description: Bad request.
        '404':
          description: Resource not found.
      security:
      - ApiKeyAuth:
        - Default
      summary: Get page load
      tags:
      - Website Metrics
      x-ibm-ahub-byok: true
  /api/website-monitoring/v2/metrics:
    post:
      description: API request to get website monitoring beacon metrics.
      operationId: getBeaconMetricsV2
      requestBody:
        content:
          application/json:
            example:
              metrics:
              - metric: beaconCount
                aggregation: SUM
              tagFilterExpression:
                type: EXPRESSION
                logicalOperator: AND
                elements:
                - type: TAG_FILTER
                  name: beacon.website.name
                  operator: EQUALS
                  entity: NOT_APPLICABLE
                  value: robot-shop
                - type: TAG_FILTER
                  name: beacon.location.path
                  operator: EQUALS
                  entity: NOT_APPLICABLE
                  value: /
              timeFrame:
                to: null
                windowSize: 3600000
              type: PAGELOAD
            schema:
              $ref: '#/components/schemas/GetWebsiteMetricsV2'
      responses:
        '200':
          content:
            application/json:
              example:
                metrics:
                  beaconCount.sum:
                  - - 1706856180000
                    - 100
                adjustedTimeFrame:
                  windowSize: 3540000
                  to: 1706856180000
              schema:
                $ref: '#/components/schemas/MetricAPIResult'
          description: OK
        '401':
          description: Unauthorized access - requires user authentication.
        '404':
          description: Resource not found.
        '422':
          description: Unprocessable request - missing/invalid data.
        '500':
          description: Internal server error.
      security:
      - ApiKeyAuth:
        - Default
      summary: Get beacon metrics
      tags:
      - Website Metrics
      x-ibm-ahub-byok: true
components:
  schemas:
    TagFilterExpressionElement:
      type: object
      description: Boolean expression of tag filters to define the scope of relevant calls.
      discriminator:
        mapping:
          EXPRESSION: '#/components/schemas/TagFilterExpression'
          TAG_FILTER: '#/components/schemas/TagFilter'
        propertyName: type
      properties:
        type:
          type: string
      required:
      - type
    JsStackTraceLine:
      type: object
      properties:
        column:
          type: integer
          format: int32
          minimum: -1
        file:
          type: string
        line:
          type: integer
          format: int32
          minimum: -1
        name:
          type: string
        translationExplanation:
          type: string
        translationStatus:
          type: integer
          format: int32
          minimum: -1
      required:
      - file
    TimeFrame:
      type: object
      description: Time range for which the data should be retrieved.
      properties:
        to:
          type: integer
          format: int64
          description: 'end of timeframe expressed as the Unix epoch time in milliseconds. Eg: `ISO 8601` standard time `2024-06-27T05:05:55.615Z` can be represented as `1719464755615` in Unix epoch time in milliseconds.'
        windowSize:
          type: integer
          format: int64
          description: windowSize in milliseconds
          maximum: 2678400000
          minimum: 0
    GetWebsiteMetrics:
      type: object
      properties:
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/WebsiteMonitoringMetricsConfiguration'
          maxItems: 5
          minItems: 1
        tagFilters:
          type: array
          items:
            $ref: '#/components/schemas/DeprecatedTagFilter'
          maxItems: 32
          minItems: 0
        timeFrame:
          $ref: '#/components/schemas/TimeFrame'
        type:
          type: string
          enum:
          - PAGELOAD
          - RESOURCELOAD
          - HTTPREQUEST
          - ERROR
          - CUSTOM
          - PAGE_CHANGE
      required:
      - metrics
      - type
    MetricAPIResult:
      type: object
      properties:
        adjustedTimeframe:
          $ref: '#/components/schemas/AdjustedTimeframe'
        metrics:
          type: object
          additionalProperties:
            type: array
            items:
              type: array
              items:
                type: number
      required:
      - metrics
    WebsiteMonitoringBeacon:
      type: object
      properties:
        accuracyRadius:
          type: integer
          format: int64
          minimum: -1
        accurateTimingsAvailable:
          type: boolean
        agentVersion:
          type: string
        appCacheTime:
          type: integer
          format: int64
          minimum: -1
        backendTime:
          type: integer
          format: int64
          minimum: -1
        backendTraceId:
          type: string
        batchSize:
          type: integer
          format: int64
          minimum: 1
        beaconId:
          type: string
        browserName:
          type: string
        browserVersion:
          type: string
        bytesIngested:
          type: integer
          format: int64
        cacheInteraction:
          type: string
        childrenTime:
          type: integer
          format: int64
          minimum: -1
        city:
          type: string
        clockSkew:
          type: integer
          format: int64
          minimum: -1
        componentStack:
          type: string
        connectionType:
          type: string
        continent:
          type: string
        continentCode:
          type: string
        country:
          type: string
        countryCode:
          type: string
        cspBlockedUri:
          type: string
        cspColumnNumber:
          type: integer
          format: int64
        cspDisposition:
          type: string
        cspEffectiveDirective:
          type: string
        cspLineNumber:
          type: integer
          format: int64
        cspOriginalPolicy:
          type: string
        cspSample:
          type: string
        cspSourceFile:
          type: string
        cumulativeLayoutShift:
          type: number
          format: double
        customEventName:
          type: string
        customMetric:
          type: number
          format: double
        decodedBodySize:
          type: integer
          format: int64
          minimum: -1
        deprecations:
          type: array
          items:
            type: string
          maxItems: 16
          minItems: 0
          uniqueItems: true
        deviceType:
          type: string
        dnsTime:
          type: integer
          format: int64
          minimum: -1
        domTime:
          type: integer
          format: int64
          minimum: -1
        duration:
          type: integer
          format: int64
          minimum: 0
        encodedBodySize:
          type: integer
          format: int64
          minimum: -1
        errorCount:
          type: integer
          format: int64
          minimum: 0
        errorId:
          type: string
        errorMessage:
          type: string
        errorType:
          type: string
        firstContentfulPaintTime:
          type: integer
          format: int64
          minimum: -1
        firstInputDelayTime:
          type: integer
          format: int64
          minimum: -1
        firstPaintTime:
          type: integer
          format: int64
          minimum: -1
        frontendTime:
          type: integer
          format: int64
          minimum: -1
        graphqlOperationName:
          type: string
        graphqlOperationType:
          type: string
        httpCallAsynchronous:
          type: boolean
        httpCallCorrelationAttempted:
          type: boolean
        httpCallHeaders:
          type: object
          additionalProperties:
            type: string
        httpCallMethod:
          type: string
        httpCallOrigin:
          type: string
        httpCallPath:
          type: string
        httpCallStatus:
          type: integer
          format: int32
          maximum: 599
          minimum: -1
        httpCallUrl:
          type: string
        initiator:
          type: string
        interactionNextPaint:
          type: integer
          format: int64
        internalMeta:
          type: object
          additionalProperties:
            type: string
        label:
          type: string
        largestContentfulPaintTime:
          type: integer
          format: int64
          minimum: -1
        latitude:
          type: number
          format: double
        locationOrigin:
          type: string
        locationPath:
          type: string
        locationUrl:
          type: string
        longitude:
          type: number
          format: double
        meta:
          type: object
          additionalProperties:
            type: string
        onLoadTime:
          type: integer
          format: int64
          minimum: -1
        osName:
          type: string
        osVersion:
          type: string
        page:
          type: string
        pageLoadId:
          type: string
        parentBeaconId:
          type: string
        parsedStackTrace:
          type: array
          items:
            $ref: '#/components/schemas/JsStackTraceLine'
          maxItems: 64
          minItems: 0
        phase:
          type: string
        processingTime:
          type: integer
          format: int64
          minimum: -1
        redirectTime:
          type: integer
          format: int64
          minimum: -1
        requestTime:
          type: integer
          format: int64
          minimum: -1
        resourceType:
          type: string
        responseTime:
          type: integer
          format: int64
          minimum: -1
        sessionId:
          type: string
        snippetVersion:
          type: string
        sslTime:
          type: integer
          format: int64
          minimum: -1
        stackTrace:
          type: string
        stackTraceParsingStatus:
          type: integer
          format: int32
          minimum: -1
        stackTraceReadability:
          type: integer
          format: int32
          minimum: 0
        subdivision:
          type: string
        subdivisionCode:
          type: string
        tcpTime:
          type: integer
          format: int64
          minimum: -1
        timestamp:
          type: integer
          format: int64
          minimum: 1
        transferSize:
          type: integer
          format: int64
          minimum: -1
        type:
          type: string
        unloadTime:
          type: integer
          format: int64
          minimum: -1
        useFeatures:
          type: array
          items:
            type: string
          maxItems: 15
          minItems: 0
        userEmail:
          type: string
        userId:
          type: string
        userIp:
          type: string
        userLanguages:
          type: array
          items:
            type: string
          maxItems: 5
          minItems: 0
        userName:
          type: string
        websiteId:
          type: string
        websiteLabel:
          type: string
        windowHeight:
          type: integer
          format: int32
          minimum: -1
        windowHidden:
          type: boolean
        windowWidth:
          type: integer
          format: int32
          minimum: -1
      required:
      - beaconId
      - locationOrigin
      - locationUrl
      - pageLoadId
      - type
      - websiteId
      - websiteLabel
    WebsiteMetricResult:
      type: object
      properties:
        empty:
          type: boolean
    AdjustedTimeframe:
      type: object
      description: 'Time frame provided in API request is slightly adjusted in response for faster API response.

        For example, In request payload, if timeframe is 08:03 - 14:03, which is a 6 hour window size. It is adjusted to 08:05 - 14:00

        Another example, In request payload, if timeframe is 08:20 - 08:20 (next day) which is a 24h window size. It is adjusted to 08:30 - 08:00 (next day)

        '
      properties:
        to:
          type: integer
          format: int64
          description: 'end of timeframe expressed as the Unix epoch time in milliseconds. Eg: `ISO 8601` standard time `2024-06-27T05:05:55.615Z` can be represented as `1719464755615` in Unix epoch time in milliseconds.'
        windowSize:
          type: integer
          format: int64
          description: windowSize in milliseconds
          minimum: 0
      required:
      - to
    WebsiteMonitoringMetricsConfiguration:
      type: object
      properties:
        aggregation:
          type: string
          description: 'Set aggregation that can be applied to a series of values. Eg: `MEAN`.'
          enum:
          - SUM
          - MEAN
          - MAX
          - MIN
          - P25
          - P50
          - P75
          - P90
          - P95
          - P98
          - P99
          - P99_9
          - P99_99
          - DISTINCT_COUNT
          - SUM_POSITIVE
          - PER_SECOND
          - INCREASE
        granularity:
          type: integer
          format: int32
          description: 'If the granularity is set you will get data points with the specified granularity in seconds. Default: `1000` milliseconds'
        metric:
          type: string
          description: 'Set a particular metric, eg: `latency`.'
      required:
      - aggregation
      - metric
    GetWebsiteMetricsV2:
      type: object
      properties:
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/WebsiteMonitoringMetricsConfiguration'
          maxItems: 5
          minItems: 1
        tagFilterExpression:
          $ref: '#/components/schemas/TagFilterExpressionElement'
        timeFrame:
          $ref: '#/components/schemas/TimeFrame'
        type:
          type: string
          enum:
          - PAGELOAD
          - RESOURCELOAD
          - HTTPREQUEST
          - ERROR
          - CUSTOM
          - PAGE_CHANGE
      required:
      - metrics
      - type
    DeprecatedTagFilter:
      type: object
      properties:
        entity:
          type: string
          enum:
          - NOT_APPLICABLE
          - DESTINATION
          - SOURCE
        name:
          type: string
        operator:
          type: string
          enum:
          - EQUALS
          - CONTAINS
          - LESS_THAN
          - LESS_OR_EQUAL_THAN
          - GREATER_THAN
          - GREATER_OR_EQUAL_THAN
          - NOT_EMPTY
          - NOT_EQUAL
          - NOT_CONTAIN
          - IS_EMPTY
          - NOT_BLANK
          - IS_BLANK
          - STARTS_WITH
          - ENDS_WITH
          - NOT_STARTS_WITH
          - NOT_ENDS_WITH
          - REGEX_MATCH
        value:
          type: string
      required:
      - name
      - operator
      - value
  securitySchemes:
    ApiKeyAuth:
      in: header
      name: authorization
      type: apiKey
      description: "## Example\n\n```bash\ncurl --request GET \\\n  --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\\n  --header 'authorization: apiToken xxxxxxxxxxxxxxxx'\n```\n"
x-tagGroups:
- name: Websites & Mobile Apps
  tags:
  - Website Metrics
  - Website Catalog
  - Website Analyze
  - Website Configuration
  - Mobile App Metrics
  - Mobile App Catalog
  - Mobile App Analyze
  - Mobile App Configuration
  - End User Monitoring
- name: Applications
  tags:
  - Application Metrics
  - Application Resources
  - Application Catalog
  - Application Analyze
  - Application Settings
  - Application Topology
  - Application Alert Configuration
  - Global Application Alert Configuration
- name: Infrastructure
  tags:
  - Infrastructure Analyze
  - Infrastructure Metrics
  - Infrastructure Resources
  - Infrastructure Catalog
  - Infrastructure Topology
- name: Logging
  tags:
  - Logging Analyze
- name: Synthetic Monitoring
  tags:
  - Synthetic Catalog
  - Synthetic Metrics
  - Synthetic Settings
  - Synthetic Test Playback Results
  - Synthetic Alert Configuration
- name: Logs
  tags:
  - Log Alert Configuration
- name: Events
  tags:
  - Events
  - Event Settings
- name: Automation
  tags:
  - Action Catalog
  - Action History
  - Policies
- name: Service Levels
  tags:
  - SLI Settings
  - SLI Report
  - Apdex Settings
  - Apdex Report
  - Service Levels Objective(SLO) Configurations
  - Service Levels Objective(SLO) Report
  - Service Levels Alert Configuration
  - SLO Correction Configurations
  - SLO Correction Windows
- name: AI Management
  tags:
  - AI Management
- name: Settings
  tags:
  - Custom Dashboards
  - User
  - Groups
  - Teams
  - Roles
  - Audit Log
  - API Token
  - Maintenance Configuration
  - Synthetic Calls
  - Session Settings
  - Automation Settings
  - Authentication
- name: Open Beta Features
  tags:
  - Infrastructure Analyze
- name: Closed Beta Features
  tags:
  - Infrastructure Alert Configuration
- name: Instana
  tags:
  - Releases
  - Host Agent
  - Health
  - Usage