Update contact Run in API Explorer
Update a contact. The body is an UpdateUserInput; any of its arguments may be sent. A field left out is untouched; one sent as null is cleared.
Requires the contacts:write scope. Rate budget: 120 calls per 1 minute per credential (the write class).
Body
Required
A UpdateUserInput, as the agent app's own mutation takes it.
-
The contact's email address.
-
The first name of the contact.
-
The last name of the contact.
-
The primary mobile phone number for the contact.
-
The primary home phone number for the contact.
-
The primary work phone number for the contact.
-
The first name of the contact's additional contact (usually a significant other).
-
The last name of the contact's additional contact.
-
The mobile phone number of the contact's additional contact.
-
The home phone number of the contact's additional contact.
-
The work phone number of the contact's additional contact.
-
The additional contact's email addresses, at most five.
-
The street the contact lives on.
-
The city the contact lives in.
-
The state the contact lives in.
-
The zipcode the contact lives in.
-
Where the contact came from, in your own words.
-
What the contact is here to do.
Values are
BUYER,BUYER_SELLER,SELLER, orOTHER. -
Whether the agent has favorited the contact.
-
Whether to send the contact price and status changes on the listings they are interested in.
-
Whether to send the contact Exclusives You May Like alerts.
-
Whether the contact has signed their buyer agreement.
-
Whether the contact has signed their listing agreement.
Responses
-
OK
-
The request is invalid;
fieldnames the offending input when there is one. A body that is not valid JSON is refused before the API runs, as a bare 400 with no body. -
Invalid or missing bearer token.
-
The credential was not granted the scope this call requires.
-
Not found, or not yours: the two are indistinguishable on purpose.
-
Rate limit exceeded;
Retry-Aftersays when to try again. -
Something went wrong on our side.
curl -X PATCH -H "Authorization: Bearer rs_agent_..." -H "Content-Type: application/json" -d '{"primary_mobile_phone":"555-0111"}' https://www.realscout.com/api/agent/v1/contacts/VXNlci0xMjM=
{
"email": "string",
"first_name": "string",
"last_name": "string",
"primary_mobile_phone": "string",
"primary_home_phone": "string",
"primary_work_phone": "string",
"additional_first_name": "string",
"additional_last_name": "string",
"additional_mobile_phone": "string",
"additional_home_phone": "string",
"additional_work_phone": "string",
"additional_emails": [
"string"
],
"street": "string",
"city": "string",
"state": "string",
"zipcode": "string",
"lead_source": "string",
"contact_type": "BUYER",
"favorite": true,
"price_status_alerts_enabled": true,
"exclusives_alerts_enabled": true,
"buyer_agreement_signed": true,
"listing_agreement_signed": true
}
{
"contact": {
"id": "VXNlci0xMjM=",
"first_name": "Nora",
"last_name": "Nguyen",
"email": "nora@example.com",
"primary_mobile_phone": "555-0111",
"lead_source": "Open House",
"external_user_key": "crm-3187",
"tags": [
"Hot Lead"
],
"external_tags": [
"kvCore: Sphere"
],
"realscout_tags": [
"Buyer"
],
"favorite": true,
"emailable": true,
"email_issue": null,
"status": {
"value": "NURTURED",
"reasons": [
"An active email alert"
]
},
"auto_nurture": {
"enabled": false,
"first_enabled_at": null
},
"created_at": "2026-08-01T17:00:00Z",
"updated_at": "2026-08-20T09:30:00Z",
"archived_at": null,
"last_active_at": "2026-08-19T02:11:00Z",
"last_login_at": "2026-08-18T19:40:00Z",
"sign_up_source": "agent",
"primary_home_phone": null,
"primary_work_phone": null,
"additional_first_name": "Sam",
"additional_last_name": "Nguyen",
"additional_mobile_phone": null,
"additional_home_phone": null,
"additional_work_phone": null,
"additional_emails": [
"sam@example.com"
],
"street": "123 Main St",
"city": "Sunnyvale",
"state": "CA",
"zipcode": "94086",
"contact_type": "BUYER",
"price_status_alerts_enabled": true,
"exclusives_alerts_enabled": true,
"scout_score": 78,
"scout_score_change_7d": 9,
"scout_score_change_30d": 14,
"scout_score_calculated_on": "2026-08-18",
"realscout_url": "https://www.realscout.com/agent/contacts/VXNlci0xMjM=",
"scout_score_summary_7d": "Viewing steadily and opening every alert.",
"scout_score_summary_30d": "Viewing steadily and opening every alert."
}
}
{
"error": {
"code": "invalid_request",
"message": "contact_type must be one of: BUYER, BUYER_SELLER, SELLER, OTHER.",
"field": "contact_type",
"request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
}
}
{
"error": {
"code": "unauthorized",
"message": "Invalid or missing credentials.",
"request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
}
}
{
"error": {
"code": "missing_scope",
"message": "This call requires the contacts:write scope, which this credential was not granted.",
"request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
}
}
{
"error": {
"code": "not_found",
"message": "No contact with id VXNlci0xMjM= for this agent.",
"request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
}
}
{
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded. Try again in 30 seconds.",
"request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
}
}
{
"error": {
"code": "internal_error",
"message": "Something went wrong on our side.",
"request_id": "9b2f4c1e-7d3a-4e5b-8f6c-0a1d2e3f4b5c"
}
}