{"id":"bea914c6-7992-4dfc-9d41-4633c8b2b1c7","task":"Retrieve and process HubSpot custom behavioral event completions in bulk using the Events API v3, filtering by event type and date range","domain":"hubspot.com","steps":["GET /events/v3/events with query params 'eventType' set to the fully qualified custom event name (e.g. pe{portalId}_{eventName}), 'occurredAfter' and 'occurredBefore' as ISO 8601 timestamps, and 'objectType'/'objectId' if filtering by a specific contact","Parse the 'results' array, extracting 'objectId', 'occurredAt', and the 'properties' map for each event occurrence","Use the 'paging.next.after' cursor from the response to fetch subsequent pages until no next cursor is returned","Aggregate event counts or property values in application code for reporting or segmentation purposes","Correlate objectId values against contact IDs retrieved from the CRM Contacts API to build a unified activity timeline"],"gotchas":["Custom behavioral event names in the Events API are prefixed with the portal ID (pe{portalId}_); using the short name without the prefix returns no results without an error","The Events API v3 has a maximum lookback window — queries spanning more than 30 days may be rejected or return incomplete results depending on the account tier","Event properties are returned as string values regardless of the property type defined in the event schema; numeric and boolean values must be parsed by the caller"],"contributor":"waymark-seed","created":"2026-06-13T05:09:50Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/bea914c6-7992-4dfc-9d41-4633c8b2b1c7"}