Upsert a contact
POST
/api/v1/contacts/upsert
const url = 'https://renotify.app/api/v1/contacts/upsert';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"external_id":"contact_123","source":"hubspot","name":"Jane Doe","phone":"+15551234567","email":"jane@example.com","data":{"city":"Boston"},"marketing_consent":{"whatsapp":true,"email":false}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://renotify.app/api/v1/contacts/upsert \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "external_id": "contact_123", "source": "hubspot", "name": "Jane Doe", "phone": "+15551234567", "email": "jane@example.com", "data": { "city": "Boston" }, "marketing_consent": { "whatsapp": true, "email": false } }'Create or update a contact, deduplicating by phone number within the team.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
external_id
The external system identifier.
string
Example
contact_123source
The source system name.
string
Example
hubspotname
required
The contact name.
string
Example
Jane Doephone
The contact phone number.
string
Example
+15551234567email
The contact email address.
string
Example
jane@example.comdata
Additional custom field values.
object
Example
{ "city": "Boston"}marketing_consent
Marketing consent per channel (whatsapp, sms, email, rcs, telegram, messenger, instagram, browser_push). Omitted channels are unchanged.
object
Example
{ "whatsapp": true, "email": false}