Introduction
Welcome to the Realeflow API! You can use our API to programmatically interact with various features in your account.
Our API is organized around REST. You can view request/response examples in the dark area to the right.
Keep reading below for more information on each specific service. Visit our help center for frequently asked questions.
Authentication
Requests made to the API are protected with HTTP Basic authentication.
You can find your account’s API key under Profile => Company Info.
In order to properly authenticate with the API you must use your API key as the username while leaving the password blank. Requests not properly authenticated will return a 401 error code.
Our endpoints expect the API key to be included in all requests to the server in a header that looks like the following:
Authorization: Basic base64-encoded-api-key-here
You must replace base64-encoded-api-key-here
with your personal API key.
Account
Account Status
Leave request body empty.
The request returns JSON structured like this:
{
"AccountStatus": "Active"
}
Gets the status of your Realeflow account. Any response other than “Active” may prevent you from further interactions with the Realeflow API.
GET https://api.realeflow.com/api/account/status
Contacts
Create a Contact
{
"fullname": "John Smith",
"email": "test@email.com",
"companyname": "Test LLC",
"phone": "1112224444",
"phonetype": "Work",
"source": "google ads 1",
"address": "123 Main St",
"city": "Cleveland",
"state": "OH",
"zipcode": "44113",
"type": ["buyer", "seller"],
"tags": ["sms opt-in", "active investors"],
"customfields": [
"this is custom 1",
"custom 2",
null,
"custom 4"
]
}
The above request returns JSON structured like this (“Error” provides a string value if “Successful” is false):
{
"Successful": true,
"Id": 1234,
"Error": null
}
Creates a single contact in your Realeflow CRM.
POST https://api.realeflow.com/api/contact/create
Query Parameters
Parameter | Required | Description |
---|---|---|
FullName | yes | |
no | ||
CompanyName | no | |
Phone | no | |
PhoneType | no | Mobile , Work , or Home (defaults to Mobile if not specificed). |
Source | no | This maps to Lead Source inside the Contacts CRM. |
Address | no | |
City | no | |
State | no | Two-letter state abbreviation (i.e. OH). |
ZipCode | no | Five-digit U.S. zip code. |
Type | no | Array of specific string values mapping to Contact Types inside Realeflow. Accepted values: Buyer , Seller . |
Tags | no | Array of string values mapping to Tags inside Realeflow. Used for filtering. |
CustomFields* | no | Array of string values mapping to Custom Fields setup inside Realeflow (array size limit 28). |
* elements are mapped to Realeflow in the order of which they appear (i.e. CustomFields[2]
maps to label Custom 3). To skip over a field, pass in null
for that specific entry. For more information, see our help page.
Retrieve Your Contacts List
Leave request body empty.
The request returns JSON structured like this:
{
"id": "d71a29d1-b44d-43ed-ac24-322afe37410d",
"contactId": 335275,
"fullName": "John, Smith",
"email": "john@smith.com",
"companyName": "John Smith Inc.",
"phone": null,
"phoneType": null,
"mobilePhoneDigits": "18888888888",
"fax": null,
"source": "SMS Opt-In",
"address": null,
"city": null,
"state": "OH",
"zipCode": null,
"created": "2019-12-04T21:30:52.52",
"customFields": null,
"tags": [
"Moby opt-in"
]
}
GET https://api.realeflow.com/api/contact/list
RETURNS
Returns your most recent 25 contacts, listed in decsending order.tags
is returned with each request, if available, otherwise this field will be left blank.
Create a Contact - Property Relation
{
"PropertyId": "D71A29D1-B44D-43ED-AC24-322AFE37410D",
"ContactId": " EJ1A29D1-B64D-43ED-A324-322AFE99410D",
"IsOwner": "true",
"IsPrimaryContact": "true",
"IsRealtor": "false",
"IsOccupier": "true",
"IsInterested": "true",
"IsTitleEscrowAgent": "false",
"IsAttorney": "false",
"IsInsuranceAgent": "false",
"IsInspector": "false",
"IsLenderMtgBroker": "false",
"IsLossMitigator": "false",
"IsBpoAgent": "false",
"IsAppraiser": "false",
"IsContractor": "false",
"IsTenant": "false",
"IsPropertyManager": "false",
"IsHoaContact": "false",
"IsLienContact": "false"
}
The above request returns JSON structured like this (“Error” provides a string value if “Successful” is false):
{
"Successful": true,
"Id": 1234,
"Error": null
}
Creates a contact in relation to a specific property.
POST https://api.realeflow.com/api/contact/propertyrelation
Query Parameters
Parameter | Required | Description |
---|---|---|
PropertyId | yes | |
ContactId | yes | |
IsOwner | no | |
IsPrimaryContact | no | |
IsRealtor | no | |
IsOccupier | no | |
IsInterested | no | |
IsTitleEscrowAgent | no | |
IsAttorney | no | |
IsInsuranceAgent | no | |
IsInspector | no | |
IsLenderMtgBroker | no | |
IsLossMitigator | no | |
IsBpoAgent | no | |
IsAppraiser | no | |
IsContractor | no | |
IsTenant | no | |
IsPropertyManager | no | |
IsHoaContact | no | |
IsLienContact | no |
Properties
Create a Property
{
"address": "123 Main St",
"city": "Cleveland",
"state": "OH",
"zipcode": "44113",
"tags": ["sms opt-in", "active properties"],
"customfields": [
"this is custom 1",
"custom 2",
null,
"custom 4"
]
}
The above request returns JSON structured like this (*”Error”* provides a string value if *”Successful”* is false):
{
"Successful": true,
"Id": 1234,
"Error": null
}
Creates a single property in your Realeflow CRM.
POST https://api.realeflow.com/api/property/create
Query Parameters
Parameter | Required | Description |
---|---|---|
Address | yes | |
City | no | |
State | no | Two-letter state abbreviation (i.e. OH). |
ZipCode | no | Five-digit U.S. zip code. |
Source | no | This maps to Lead Source inside the Contacts CRM. |
Tags | no | Array of string values mapping to Tags inside Realeflow. Used for filtering. |
CustomFields* | no | Array of string values mapping to Custom Fields setup inside Realeflow (array size limit 28). |
* elements are mapped to Realeflow in the order of which they appear (i.e. CustomFields[2]
maps to label Custom 3). To skip over a field, pass in null
for that specific entry. For more information, see our help page.
Retrieve Your Property List
Leave request body empty.
The request returns JSON structured like this:
{
"id": "edfc33df-328f-4553-bcfb-b0b03ac56117",
"propertyId": 1113557,
"address": "123123 Main St",
"city": null,
"state": null,
"zipCode": null,
"source": "Virtual Assistant",
"created": "2019-12-03T10:16:02.113",
"customFields": null,
"tags": []
}
GET https://api.realeflow.com/api/property/list
Returns
Returns your most recent 25 properties, listed in descending order.
Errors
The Realeflow API uses the following error codes:
Error Code | Meaning |
---|---|
401 | Unauthorized – API key is missing or incorrect. |
500 | Internal Server Error – We had a problem with our server. Try again later. |