List prospects
Sales reps without
canViewAllProspects permission see only prospects assigned to them. Admins and owners see all company prospects.Query parameters
string
Bounding box filter as
minLng,minLat,maxLng,maxLat. Returns only prospects whose coordinates fall within the box. Example: -85.7,42.9,-85.5,43.1string
ISO 8601 date string. Returns prospects created on or after this date. Example:
2024-01-01string
ISO 8601 date string. Returns prospects created on or before this date. Example:
2024-12-31string
Comma-separated list of status values. Example:
contacted,soldstring
Comma-separated list of user IDs. Admin and owner only. Example:
12,34string
Comma-separated list of rep full names. Admin and owner only. Example:
Jane Smith,Bob Jonesstring
Comma-separated list of tag display values (not IDs). Example:
solar,roofingstring
Comma-separated list of city names. Example:
Grand Rapids,Hollandstring
Full-text search across name, phone, email, address, and notes.
number
default:"1"
Page number (1-indexed).
number
default:"50"
Number of records per page.
Response
object[]
Array of prospect objects.
number
Total number of matching prospects.
number
Current page number.
number
Records per page.
Create a prospect
Request body
string
Prospect’s full name.
string
Primary phone number.
string
Secondary phone number.
string
Must be a valid email format if provided.
number
Latitude coordinate.
number
Longitude coordinate.
number
ID of an existing address record to associate.
number
ID of a lead status. If provided, a status history entry is created automatically.
number
ID of the user to assign this prospect to.
string
Origin string (e.g.
api, csv-import).string
External ID from the originating system.
string
ISO 8601 timestamp from the originating system.
object
Arbitrary key/value pairs for custom fields.
201 with the created prospect object on success.
Get a prospect
Path parameters
number
required
The prospect ID.
404 if the prospect does not exist or belongs to a different company.
Update a prospect
currentStatusId, a new status history entry is created.
Path parameters
number
required
The prospect ID.
Request body
string
Full name.
string
Primary phone number.
string
Secondary phone number.
string
Valid email address.
number
Latitude coordinate.
number
Longitude coordinate.
number
Address record ID.
number
New lead status ID.
number
User ID to (re-)assign to.
number
User ID of the person performing the assignment.
string
Origin string.
string
External ID.
object
Custom field key/value pairs.
Delete a prospect
Path parameters
number
required
The prospect ID.
{ "id": <number> } on success.
Export prospects as CSV
prospects.csv file. Supports the same filter parameters as the list endpoint (bbox, dateFrom, dateTo, status, assignedToUserId, tagId). The file is streamed in batches of 500 records — there is no page limit.
CSV columns
id, name, phone, email, lat, lng, address1, address2, city, state, zip, status, assignedTo, assignedToEmail, tags (semicolon-separated), notes (most recent), createdBy, source, createdAt
Import prospects from CSV
multipart/form-data. Each row creates one prospect. Rows missing both an address (address1 + city + state + zip) and coordinates (lat + lng) are skipped.
Form fields
file
required
A CSV file. The first row must be a header row. Supported columns:
name, phone, email, lat, lng, address1, address2, city, state, zip, status (matched by display value), assignedTo (matched by email address), tags (semicolon-separated tag values), notes.Response
number
Number of successfully created prospects.
number
Number of rows that were skipped due to errors.
object[]
Array of
{ row: number, message: string } objects describing each skipped row.Get map pins
Response
Returns an array of pin objects directly (not paginated).number
Prospect ID.
number
Latitude.
number
Longitude.
string
Hex color from the prospect’s current status, or
#9CA3AF if no status is set.