NAV
JSON

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
Email 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.