Confirm renewal date location + property type
15 minMost CRMs store renewal dates in one of two places: on the Company record (custom property) or on a Deal (closedate of a renewal-type deal). The script paths differ. And the property TYPE (date vs datetime) determines what value the search API expects. The wrong type returns zero results with no error, so this verification is critical.
- Ask the operator: are renewal dates on the Company record or on a renewal-type Deal?
- If on Company: GET /crm/v3/properties/companies/renewal_date. Check the type field. If date, expect YYYY-MM-DD strings. If datetime, expect epoch milliseconds.
- If on Deal: pick the renewal stage ID, plan to filter dealstage IN [renewal_stage_ids] AND closedate BETWEEN [window].
- Confirm CSM ownership tracking. HubSpot: hubspot_owner_id. Salesforce: OwnerId. Pipedrive: user_id. The agent resolves owner IDs to names.
- Note the field name for last activity. HubSpot: notes_last_activity. Salesforce: LastActivityDate.
- Property type is the #1 silent failure. Update RENEWAL_DATE_PROPERTY_TYPE at the top of the script to match.
- Multi-pipeline orgs with renewal on Deals: pick one renewal pipeline per workspace. Mixing makes the rubric wrong.