# v1 contact read endpoints stopped returning list memberships on 2026-04-30

- **Provider:** HubSpot
- **Endpoint:** `GET /contacts/v1/contact/**`
- **Effective:** 2026-04-30
- **Severity:** high
- **Change:** field-rename
- **Status:** verified

## What changed

With the Contact Lists v1 sunset, six v1 contact read endpoints (get by vid, email or utk, and their batch versions) keep working but, since 2026-04-30, no longer return list memberships. The field in the v1 response is list-memberships (requested with showListMemberships); code that reads it now gets no membership data, without an error.

## What to do

Stop reading list-memberships from /contacts/v1/contact/... responses. Map stored legacy list ids to new list ids with /crm/lists/2026-03/idmapping, then read list members from GET /crm/lists/2026-03/{listId}/memberships (results ordered by record id) and build the contact-to-list mapping from that, or move contact reads to the current CRM objects API together with the Lists API.

## Sources

- Provider notice (2025-09-12): https://developers.hubspot.com/changelog/extension-contact-lists-api-v1-sunset-moved-to-april-30-2026
- https://developers.hubspot.com/docs/api-reference/legacy/crm/lists/v1-list-api-migration-guide
- https://developers.hubspot.com/docs/api-reference/legacy/crm/objects/contacts/v1/get-contacts-v1-contactvidvid-profile.md

## Machine-readable

- Advisory: https://github.com/SriVarshini09/shapi-advisories/blob/main/advisories/hubspot-contacts-v1-list-memberships-removed.json
- OSV: https://shapi.dev/osv/hubspot-contacts-v1-list-memberships-removed.json
