Model MatchHelp

Integrations

Send records to your HubSpot account

postapi.modelmatch.com/v1/integrations/hubspot/push

Sends the given Model Match records into the HubSpot account you have connected, using the field mapping your workspace configured. Existing records are matched and updated rather than duplicated, so sending the same list twice does not create it twice. Every id you send comes back with an outcome — some records failing is normal and does not fail the rest. At most 100 records per request; send larger lists in batches. There is no undo: use dryRun first to see exactly what would be written. Charged per record actually written, at the same rate as fetching that record.

Authorization

x-api-keystringrequired

API key or OAuth token. See Authentication.

Body application/json

dryRunbooleandefault: false

Resolve the records, apply the mapping and report exactly what would be written — without writing anything. There is no undo on a real push; use this first.

entityenumrequired

The kind of Model Match record the ids refer to — originator for loan officers, agent for real estate agents. Required, and checked against what your workspace configured: if they disagree the request is refused rather than writing records built from the wrong mapping.

Options:agentoriginator
idsstring[]required

Record ids to send, at most 100 per request. Loan officers are identified by NMLS id, agents by their Model Match id. Duplicates are collapsed.

objectenumrequired

Which kind of HubSpot record to write. Your workspace decides which Model Match records feed each one.

Options:contactcompany

Responses

200objectPer-record outcome. Check `summary` for what landed.
Show attributes
billingobjectrequired
Show child attributes
chargednumber | nullrequired
notestring
dryRunbooleanrequired
entityenumrequired

The kind of Model Match record the ids refer to — originator for loan officers, agent for real estate agents. Required, and checked against what your workspace configured: if they disagree the request is refused rather than writing records built from the wrong mapping.

Options:agentoriginator
objectenumrequired

Which kind of HubSpot record to write. Your workspace decides which Model Match records feed each one.

Options:contactcompany
portalIdstringrequired

The HubSpot account these records were written to.

portalRecordedbooleanrequired

Whether your workspace's setup records which HubSpot account it was built for. When false, consider saving it so a member on a different account can be warned before sending.

resultsobject[]required
Show child attributes
crmRecordIdstring

The record's id in your HubSpot account, when written.

idstringrequired
messagestring
preservedstring[]

Fields left untouched because your HubSpot record already had a value and the mapping says not to overwrite.

reasonenum
Options:not_foundmissing_dedupe_valueduplicate_dedupe_valuerejected
statusenumrequired
Options:createdupdatedskippedfailedwould_createwould_update
summaryobjectrequired
Show child attributes
creatednumberrequired
failednumberrequired
requestednumberrequired
skippednumberrequired
updatednumberrequired
400objectValidation or setup mismatch
401objectUnauthorized
402objectNot enough credits to send this many records
403objectNo active workspace
409objectRefused before writing anything — not connected, wrong HubSpot account, or a mapping that cannot be applied safely
502objectHubSpot or billing could not be reached. Nothing was sent.