---
title: "App Timeline"
method: POST
path: "/data/app/timeline"
tags: ["App"]
---

# App Timeline

`POST /data/app/timeline`

## Request

- Base URL: `https://data.applyzer.com` (the document declares no server; this is the origin it was published from)
- URL: `https://data.applyzer.com/data/app/timeline`
- Auth: API key in header `Authorization`

<br/>Aggregate timeline data for a selected app.<br/><br/>Returns lanes that the frontend can render as a timeline:<br/>- In-app events (running periods with start/end dates)<br/>- CPP organic activity (days when CPPs were seen in organic results)<br/>- CPP paid activity (days when CPPs were seen in ads)<br/>- Ad appearances (total appearances per day across keywords)<br/>- Metadata updates (days when metadata fields changed)<br/><br/>Notes:<br/>- If `tagslug` is omitted, keyword scope is auto-discovered from recent<br/>  presence (events/ads/cpp) for the selected app.<br/>- You can limit which lanes are computed via `include`.<br/><br/>

Credit Cost: 20

## Request body

- object
  - `appid` string, required: App id (iOS numeric id or Google Play package name)
  - `countries` integer[], required: List of country IDs (store IDs)
  - `tagslug` string: Optional tag slug to scope keywords to a workspace tag
  - `device` string: Device (iphone/ipad/mac/play)
  - `days_back` integer: Lookback window in days (used if start_date/end_date not provided)
  - `start_date` string, date: Optional start date (YYYY-MM-DD)
  - `end_date` string, date: Optional end date (YYYY-MM-DD)
  - `include` union: Optional lane filter. If omitted, returns all lanes.
    - string[]
    - string: Comma-separated list of lanes

## Response `200`

Successful operation

- object
  - `message` string
  - `response` object
    - `app` object
      - `app_id` string
      - `name` string
      - `artist` string
      - `icon_url` string
    - `date_range` object
      - `start` string
      - `end` string
    - `available_lanes` string[]
    - `events` object[]
    - `cpp_organic` object[]
      - `date` string
      - `count` integer
      - `keywords` string[]
    - `cpp_paid` object[]
      - `date` string
      - `count` integer
      - `keywords` string[]
    - `ads_per_day` object[]
      - `date` string
      - `total` integer
      - `keywords` string[]
    - `metadata_updates` object[]
    - `truncated` object

## Other responses

- `400`: Invalid request
- `404`: Tag not found
- `500`: Server error

---

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