CRM auto-enrich
Read a HubSpot contact, search the web, write enriched fields back to the same record. crm.read + crm.write handle the auth.
Prerequisites
- HubSpot (or Salesforce) OAuth completed at /connected-apps.
- crm.read + crm.write enabled.
Walkthrough
1. Read
crm.read by object_id. Returns the full property map normalized across vendors.
bash# Vendor-normalized contact read.
curl -X POST https://www.upivia.com/v1/service-requests \
-H "Authorization: Bearer $AGENT_KEY" \
-H "Content-Type: application/json" \
-d '{
"service":"crm",
"operation":"read",
"payload":{"object":"contact","id":"123456789"}
}'2. Search + extract
web_search.query for `<name> <domain>`, GPT-4o-mini extracts {company_size, role, industry} as JSON.
3. Write
crm.write merges the extracted fields back. Use approval_threshold_cents if you want a human to review bulk updates.
bash# Merge enriched fields back to HubSpot.
curl -X POST https://www.upivia.com/v1/service-requests \
-H "Authorization: Bearer $AGENT_KEY" \
-H "Content-Type: application/json" \
-d '{
"service":"crm",
"operation":"write",
"payload":{"object":"contact","id":"123456789","fields":{"company_size":"50-200","industry":"fintech"}}
}'Next steps
Audit every call at /audit-logs, watch spend at /usage, and tune budgets per service on the agent's page.
Create an account →