Skip to main content
Question

API V2 - Cannot expand product details on /offerings and /packages

  • April 17, 2026
  • 0 replies
  • 8 views

Forum|alt.badge.img

---

Hi, we're trying to retrieve offerings together with their packages and products in as few API calls as possible, but the `expand[]` parameter appears to be silently ignored on both endpoints we've tested.

---

Case 1 — `expand[]=items.package` on GET /offerings

Request:
 

curl -s "https://api.revenuecat.com/v2/projects/proj_xxxxxxxx/offerings?expand%5B%5D=items.package" \
  -H "Authorization: Bearer $REVENUECAT_SECRET_KEY" \
  -H "Content-Type: application/json" | jq


Response — packages are absent, expand is silently ignored:

{
  "items": [
    {
      "created_at": 1776390456551,
      "display_name": "Offering A",
      "id": "ofrng_aaaaaaaa",
      "is_current": false,
      "lookup_key": "offering_a",
      "metadata": { "some_key": "some_value" },
      "object": "offering",
      "project_id": "proj_xxxxxxxx",
      "state": "active"
    },
    {
      "created_at": 1775603850680,
      "display_name": "Offering B",
      "id": "ofrng_bbbbbbbb",
      "is_current": true,
      "lookup_key": "default",
      "metadata": null,
      "object": "offering",
      "project_id": "proj_xxxxxxxx",
      "state": "active"
    }
  ],
  "next_page": null,
  "object": "list"
}


 

No `packages` field on any offering item.

---

Case 2 — `expand[]=product` on GET /offerings/{id}/packages

Request:
 

curl -s "https://api.revenuecat.com/v2/projects/proj_xxxxxxxx/offerings/ofrng_bbbbbbbb/packages?expand%5B%5D=product" \
  -H "Authorization: Bearer $REVENUECAT_SECRET_KEY" \
  -H "Content-Type: application/json" | jq

Response — packages returned correctly, but no `product` field expanded:
 

{
  "items": [
    {
      "created_at": 1775603850695,
      "display_name": "Monthly",
      "id": "pkge_xxxxxxxx",
      "lookup_key": "$rc_monthly",
      "object": "package",
      "position": 0
    },
    {
      "created_at": 1775603850695,
      "display_name": "Yearly",
      "id": "pkge_yyyyyyyy",
      "lookup_key": "$rc_annual",
      "object": "package",
      "position": 1
    },
    {
      "created_at": 1775603850695,
      "display_name": "Lifetime",
      "id": "pkge_zzzzzzzz",
      "lookup_key": "$rc_lifetime",
      "object": "package",
      "position": 2
    }
  ],
  "next_page": null,
  "object": "list"
}

 

No product field on any package item.

---

Impact

To get offerings with their packages and attached products we currently need N+2 API calls (1 for offerings + 1 per offering for packages + potentially more for products). With the `expand[]` parameter working as documented this could be a single call.

We also tried `expand%5B%5D=items.package.product` on the offerings list endpoint — same result, silently ignored.

Is this a known limitation? Is there a workaround or a timeline for a fix?

Thanks!

---