Retail Lead Management

Version: 2.0.0

Basic API for creating lead objects for your RLM pipeline.

Default request content-types: application/json
Default response content-types: application/json
Schemes: https
Path Operation Description
/api/v1/organization GET

Organization Info

/api/v1/pipeline/{apiKey} GET

Pipeline Info

/api/v1/pipeline/{apiKey}/leads/{status} GET
/api/{apiKey}/lead/{leadID} GET

Lead detail

/api/{apiKey}/leads POST

Create Lead

Header-based Authentication

Type: basic
Description:

Organization and user authentication via header values.

Paths

Organization Info

GET /api/v1/organization

Display organization setup information. Will include location, division and pipeline info.

application/json

200 OK

Status 200

Header-based Authentication
Pipeline Info

GET /api/v1/pipeline/{apiKey}

Display organization setup information. Will include location, division and pipeline info.

apiKey path string

application/json

200 OK

Status 200

Header-based Authentication

GET /api/v1/pipeline/{apiKey}/leads/{status}

by_date

Query leads based on a date criteria.

query string
by_date_at

YYYY-MM-DD for by_date filter

query string (date)
by_datetime_since

YYYY-MM-DD HH:MM:SS

query string (date-time)
apiKey path string
status

One of the four main lead statuses

path string

Uses default content-types: application/json

200 OK

Status 200

Header-based Authentication
Lead detail

GET /api/{apiKey}/lead/{leadID}

apiKey path string
leadID path integer

Uses default content-types: application/json

200 OK

Status 200

Create Lead

POST /api/{apiKey}/leads

To create a lead, post a single lead object to this endpoint. Fields that are an exact match to a lead attribute will map directly. Fields that do not match a lead attribute will be collected and added as a note object after the lead is created.

application/json

lead: Lead
apiKey path string

application/json

200 OK

Success

result: string , x ∈ { Success }
lead_id: integer

Newly created lead ID

422 Unprocessable Entity

No Data or Error

result: string , x ∈ { Error , No data }
messages: string

detailed error messages if applicable

Schema definitions

Division: object

id: integer
name: string

Lead: object

Core lead object. Single object includes all relevant detail information required for movement of the lead through the pipeline.

location_name: string Per Pipeline configuration

Dealer Store Location

division_name: string Per Pipeline configuration

Dealer Sales Division

source_name: string Website

Lead Source

channel_name: string

A specific channel based on the lead source. String value must match based on pipeline field options.

company_name: string

Company Name

first_name: string

Contact First Name

last_name: string

Contact Last Name

title: string

Contact Title

email: string

Contact Email Address

website: string

Website

phone: string

Main Phone

mobile_phone: string

Mobile Phone

work_phone: string

Work Phone

work_phone_ext: string

Work Phone Extension

address1: string

Address Line 1

address2: string

Address Line 2

city: string

City

state: string

State Abbreviation

zip: string
deal_name: string

Deal Name

referral_type: string

String value must match based on pipeline field options.

referral_source: string

Additional text description of referral source

products_interested_in: string[]

List of product lines

string , x ∈ { carpet , hardwood , tile }
opt_in: boolean

Email marketing permission opt-in

promo_type: string

Special offer or promotional code. String value must match based on pipeline field options.

note: string

Initial comments or request detail

Lead Status: object

Lead statuses are one of open or closed and control the flow of a lead through the sales process.

id: integer

Internal ID

name: string

Status Name

closed: boolean

Whether or not this is a closed lead status.

field_set: string[]

Column names for fields to be displayed on the task tray for this status.

string
task_types: string[]

Task type names for dropdown selection on the task tray for this status.

string
required_task: string

Name of required task type for this status

Location: object

id: integer
name: string
location_number: string

Organization: object

Organizations are the parent objects for pipelines, leads, tasks and users.

id: integer
name: string
daily_agenda_delivery: string

Time of day to deliver daily agenda email

daily_stalled_delivery: string

Time of day to deliver daily stalled emails

locations: object[]
divisions: object[]
pipelines: object[]

Pipeline: object

Pipelines are the high-level containers of Leads in RLM. Pipeline configurations are customizable and unique for every customer.

id: integer
name: string
api_key: string
has_samples: boolean

Is the samples module activated for this pipeline?

sample_fields: string[]

Pipeline field names that can be edited within the samples module

string
default_division_id: integer

Default division for leads created via the API

default_location_id: integer

Default location for leads created via the API

default_salesperson_id: integer

Default salesperson for leads created via the API

pipeline_fields: object[]
pipeline_statuses: object[]
locations: object[]
divisions: object[]

Pipeline Field: object

An individual data field that belongs to the lead object. Customization options including select and multiselect values, front-end display settings and custom API field mappings all contained within each pipeline field object.

id: integer

internal id

active: boolean

This field is active.

required: boolean

This field is required.

display_name: string

Display Name

column_name: string

Mapped column name in lead table

field_type: string , x ∈ { asterisk , checkbox , currency , date , email , multiple_select , number , phone_ext , phone , pound , salesperson , select , state , system , text , url , user }
field_options: string[]

List of options for select and multiple_select field types

string
helper_text: string

Helper text to display alongside field on lead edit pages

api_field_name: string

Mapping field name expected from Create Lead API POST

visibility: object[]

Display options true/false for RLM sections

object
new: boolean

Show field on New Lead page?

show: boolean

Show field on Detail Lead page

edit: boolean

Show field on Edit Lead page

listing: boolean

Show field on Lead Listing page

task_listing: boolean

Show field on Task Listing page

sample_listing: boolean

Show field on Sample Listing page

column: integer

Column positioning for New, Detail and Show pages

column_sort: integer

Column ordering for New, Detail and Show pages