List significant changes on your watched apps and keywords, newest first (free; poll this to wake an agent).

GEThttps://api.appgoat.ai/v1/events
FreeMCP tool get_eventsoperationId listEvents

Each event has a deterministic one-line title, an AI summary (or null), a significance (0–1) and a typed payload. Only changes that reach the watch's settings.significance become events. To poll, pass since= the created_at of the newest event you already handled (or remember its id and stop paging there).

Request

curl "https://api.appgoat.ai/v1/events" \
  -H "x-api-key: $APPGOAT_API_KEY"

Query parameters

typestring
Comma list of event types.
appstring
Only events of this app (any {app} input).
store"apple" | "play"
Disambiguates {app} (a bundle id vs a Play package, or a name).
watchinteger
Only events of this watch id.
sincestring
Only items at or after this ISO date / datetime.
min_significancenumber
limitinteger

Default 50

cursorstring
meta.next_cursor from the previous page.

Response

200 with data: Event[]. See the envelope for meta.

idstring
typeEventType
App / competitor_set watches: new_version (version + release notes), metadata_change (title, subtitle, description, screenshots, icon, category…; payload.changes), price_change (price or in-app purchases), featured (Editors' Choice, featuring, badges), in_app_event, installs_milestone (Play install bucket), rating_drop (7-day drop ≥ settings.rating_drop), ratings_spike / review_spike (day count ≥ settings.spike_factor × the 14-day average), negative_review_spike (negative reviews per topic), chart_enter / chart_leave (crossing the top settings.chart_top_n). Keyword watches: rank_change (the watch's app moved ≥ settings.rank_move, or entered / left the ranking), keyword_entrant (new apps in the top settings.keyword_top_n).
created_atstring
watch_idinteger | null
null once the watch is deleted.
appany
countrystring | null
titlestring
Deterministic one-liner, e.g. "Spotify released version 9.0.2 (was 9.0.1)".
summarystring | null
AI one-line summary (null when AI is off or for low-significance events).
significancenumber | null
payloadobject
Type-specific: version / release_notes, changes[{field, old, new}], rating / previous_rating / drop, keyword / rank / previous_rank, chart / category / rank, topic / sample…
Example
{
  "data": [
    {
      "id": "4812",
      "type": "new_version",
      "created_at": "2026-10-22T08:15:02.000Z",
      "watch_id": 12,
      "app": {
        "store": "apple",
        "app_id": "324684580",
        "title": "Spotify",
        "icon_url": null
      },
      "country": "us",
      "title": "Spotify released version 9.0.2 (was 9.0.1)",
      "summary": "Spotify 9.0.2 adds offline lyrics and fixes CarPlay crashes.",
      "significance": 0.81,
      "payload": {
        "version": "9.0.2",
        "previous_version": "9.0.1",
        "release_notes": "Offline lyrics. CarPlay fixes."
      }
    }
  ],
  "meta": {
    "credits_used": 0,
    "credits_remaining": 9981,
    "request_id": "req_123"
  }
}

Status codes

200
Events.
A parameter is missing or invalid (error.param names it).
Missing or invalid API key.
Too many requests per second for your plan.