---
title: "Web response report"
method: GET
path: "/api/reports/web/interaction"
tags: ["Reports"]
---

# Web response report

`GET /api/reports/web/interaction`

## Request

- Base URL: `https://go.urbanairship.com`
- URL: `https://go.urbanairship.com/api/reports/web/interaction`
- Auth: one of:
  - HTTP basic
  - HTTP bearer
  - OAuth 2
    - Client credentials
    - Token URL: `http://oauth2.{domain}.com/token` scopes: `rpt`
- TypeScript: <https://skmtc.dev/airship/apis/airship-api/docs/api/reports/web/interaction/get.ts> (a function with typed inputs; its response is checked against the schema)

Get the web interaction data for the given app key. Accepts a required start time and optional end time and precision parameters.

## Query parameters

- `app_key` string, required
- `start` string, date-time, required
- `end` string, date-time
- `precision` 'HOURLY' | 'DAILY' | 'MONTHLY'

## Response `200`

Returned on success, with the JSON representation of the web data in the body of the response.

- WebResponseReport: The response body for web response report.
  - `app_key` string: The app key for the application.
  - `end` string, date-time: The end [date-time](/developer/rest-api/ua/introduction/#date-time-format) for the report.
  - `precision` 'HOURLY' | 'DAILY' | 'MONTHLY': The precision of the report.
  - `start` string, date-time: The start [date-time](/developer/rest-api/ua/introduction/#date-time-format) for the report.
  - `total_counts` object[]: Array of total count objects, each representing counts within the given [date-time](/developer/rest-api/ua/introduction/#date-time-format) range and precision.
    - `counts` CountsObject
      - `clicks` integer: Number of direct clicks on the web notification during the specified timeframe.
      - `sessions` integer: Number of sessions created during this timeframe. Sessions are created by site visits after 30 minutes of inactivity or by notification clicks that open the site.
    - `date` string, date-time: A [date-time](/developer/rest-api/ua/introduction/#date-time-format) for the count period.

## Other responses

- `400`: There was a parsing or validation error in the request. Bad Request errors typically include `path` and `location` in the response to help you find the cause of the error.
- `401`: Authentication information (the app key and secret or bearer token) was either incorrect or missing.
- `403`: Authentication was correct, but the user does not have permission to access the requested API, e.g., if the feature in question is not included in your pricing plan.

## Changes

- **2026-02-20** `e2bd980cb50b`: 2 info
  - added `subschema #1, subschema #2` to the response body `allOf` list for the response status `200`
  - removed `subschema #1, subschema #2` from the response body `allOf` list for the response status `200`
- **2025-08-28** `3304568aaadc`: 4 breaking
  - for the `query` request parameter `precision`, default value `DAILY` was removed
  - for the `query` request parameter `end`, the format changed from no format to `date-time`
  - for the `query` request parameter `start`, the format changed from no format to `date-time`
  - the response's body type changed from `object` to no type for status `200`
  - …this revision’s changelog is incomplete

[Operation history](https://skmtc.dev/airship/apis/airship-api/changes/api/reports/web/interaction/get.md)

---

[API](https://skmtc.dev/airship/apis/airship-api.md) - [All operations](https://skmtc.dev/airship/apis/airship-api/llms.txt) - [OpenAPI document](https://skmtc.dev/airship/apis/airship-api/revisions/bd6ab947117a?raw)
