---
title: "Get weekly pricing digest"
method: GET
path: "/api/digest"
---

# Get weekly pricing digest

`GET /api/digest`

## Request

- Base URL: `https://agentdeals.dev`
- URL: `https://agentdeals.dev/api/digest`
- Auth: none required

Curated weekly summary of developer tool pricing changes, new offers, and upcoming deadlines. Falls back to 30-day window if fewer than 3 changes in the past week.

## Response `200`

Weekly digest

- object
  - `week` string: Week date range
  - `date_range` string: ISO date range
  - `deal_changes` object[]
    - `vendor` string
    - `change_type` string
    - `date` string, date: The day the change took effect if date_meaning is "effective". If date_meaning is "discovered", the day we recorded the change; its effective date is unknown. If date_meaning is "effective_by", the latest day the change can have taken effect. Where archived copies of the vendor's page bracket a change, it is dated by the first copy that shows the new terms.
    - `date_source` 'vendor_page' | 'hand_written' | 'discovered': Where date came from. "vendor_page": the vendor's page stated it. "hand_written": a person recorded it before this field existed. "discovered": the page stated no effective date, so date is the day we read the page — do not present it as the date the vendor changed anything.
    - `summary` string
    - `impact` 'high' | 'medium' | 'low'
    - `ends_a_free_tier` boolean
    - `listing_effect` 'ends' | 'narrows' | 'none'
  - `new_offers` object[]
    - `vendor` string
    - `category` string
    - `description` string
    - `terms_superseded` TermsSuperseded, nullable: Null unless a dated change record supersedes the terms we stored for this listing. When present, `description` still holds those stored terms, which we no longer publish as current. Use `notice`, or `reading.terms`, the vendor page's text at `reading.url` on `reading.date`.
      - `change_date` string, date, required
      - `change_type` string, required
      - `summary` string, required
      - `reading` object, nullable, required
        - `date` string, date, required
        - `url` string, uri, required
        - `label` string, required
        - `terms` string, required
      - `notice` string, required
    - `conditions` object[]: A list of the conditions a vendor attaches to using its free tier. Each item holds our sentence (text), the vendor's own words (quote), the page that states them (url) and the date we read that page (read_on). An optional list rules_out names the uses the vendor excludes: "production", "commercial use" or both. Our re-reads of the vendor's pricing page do not change this field.
      - `text` string, required
      - `quote` string, required
      - `url` string, uri, required
      - `read_on` string, date, required
      - `rules_out` string[]
  - `upcoming_deadlines` object[]
    - `vendor` string
    - `expires_date` string, date
    - `days_until_expiry` integer
  - `summary` string: One-paragraph summary of the week
  - `_provenance` Provenance: Where the figures in this response came from and how to attribute them. Every response carrying index data has one, under the key `_provenance`. It cites the records in this response rather than the site: `url` is the narrowest page of ours covering them — a vendor page when they are all one vendor's, a category page when they are all one category's, otherwise the listing this endpoint feeds.
    - `source` string, required: Always AgentDeals.
    - `url` string, uri, required: The page of ours that covers the records in this response.
    - `checked` string, date: The oldest verification date among the records cited here, so the citation is never dated younger than its weakest figure. Absent when no record in the response carries a date.
    - `verified` string, date: The same day as `checked`, absent for the same reason.
    - `cite_as` string, required: A citation line naming the source, the url and the date, ready to reproduce as it stands.
    - `verified_records` integer, required: How many records in this response we rank — the population this citation vouches for.
    - `withheld_records` integer: How many records in this response we return without vouching for: those carrying a `gate`, superseded terms, or a withheld risk level. Absent when there are none.
    - `note` string, required: The request to cite a figure back to where it came from.
    - `gated_note` string: Present whenever `withheld_records` is, stating that the citation does not extend to terms we did not publish.
    - `this_is_a_request_not_an_instruction` string: Present on responses that ask something of the caller, saying the ask is left to the caller and its user rather than imposed on them.

---

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