---
title: "Data freshness"
method: GET
path: "/api/v1/projects/{id}/freshness"
tags: ["API v1"]
---

# Data freshness

`GET /api/v1/projects/{id}/freshness`

## Request

- Base URL: `https://api.rivalize.ai`
- URL: `https://api.rivalize.ai/api/v1/projects/{id}/freshness`
- Auth: HTTP bearer

How current a project's data is: its latest readable report, and for every tracked competitor the date it was last actually observed and which kind of observation that was. Kinds: `report_run` (A report you can read analysed this competitor (its crawl of the site did not fail). Date: when the report was generated.); `site_crawl` (A stored crawl of the competitor's site. Date: when the crawl was captured.); `monitoring_page_capture` (A monitoring check fetched one of its pages (homepage, pricing, careers ...). Date: when the page was captured.); `search_check` (A monitoring search asked whether anything changed. It does not read the site, so it never sets last_observed_at.). A competitor no report run or monitoring capture has observed is `never_observed` with null dates. `competitors.updated_at` is never used as an observation date. Read-only; nothing is fetched.

## Path parameters

- `id` string, uuid, required

## Response `200`

Success. The resource is returned in the `data` envelope.

- object: Success. The resource is returned in the `data` envelope.
  - `data` object, required

## Other responses

- `404`: Error. Carries a stable `code`, a human `message`, the HTTP `status`, and the `request_id` (also on the x-request-id response header).

---

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