APIv3
Exit Documentation

Prospects

A prospect represents a potential customer that your business is working to convert into a customer.


The prospect object

FieldTypeDescription
idstringUnique prospect UUID.
objectstringAlways prospect.
customer_numberintegerAccount-assigned number shared with the customer sequence.
namestringProspect name.
office_emailstring or nullPrimary office email address.
office_phonestring or nullPrimary office telephone number.
office_faxstring or nullPrimary fax number.
urlstring or nullProspect website URL.
billing_address_1string or nullFirst billing-address line.
billing_address_2string or nullSecond billing-address line.
billing_citystring or nullBilling city.
billing_regionstring or nullBilling state, province, or region.
billing_postal_codestring or nullBilling postal or ZIP code.
billing_countrystring or nullBilling country.
shipping_address_1string or nullFirst shipping-address line.
shipping_address_2string or nullSecond shipping-address line.
shipping_citystring or nullShipping city.
shipping_regionstring or nullShipping state, province, or region.
shipping_postal_codestring or nullShipping postal or ZIP code.
shipping_countrystring or nullShipping country.
vat_numberstring or nullVAT or tax registration number.
document_countintegerNumber of documents associated with the prospect.
archivedbooleanWhether the prospect is archived.
pricing_tier_idstring or nullAssigned pricing-tier UUID.
owner_user_idstring or nullUUID of the assigned SalesBinder user.
created_atstringISO 8601 creation timestamp.
updated_atstringISO 8601 modification timestamp.
sale_opportunitystring or nullDescription of the potential sale.
closing_percentageintegerEstimated likelihood of closing the opportunity.
prospect_datestring or nullProspect date in YYYY-MM-DD format.

List prospects

GET/api/v3/prospects

Required scope: prospects:read

Returns prospects ordered by name and limited by the current user's record visibility.

Query parameters

ParameterTypeRequiredDescription
pageintegerNoPage number. Defaults to 1.
limitintegerNoRecords per page. Defaults to 20; maximum 100.
qstringNoSearches prospect name and office email. A numeric value also matches an exact account number.

Example request

bash
curl "https://yourbusiness.salesbinder.com/api/v3/prospects?q=example&page=1&limit=20" \
  --header "Authorization: Bearer YOUR_API_KEY"

Example response

json
{
  "object": "list",
  "url": "/api/v3/prospects",
  "has_more": false,
  "data": [
    {
      "id": "8b17e608-366f-4c02-a510-98f9cc810406",
      "object": "prospect",
      "customer_number": 528,
      "name": "Example Prospect",
      "office_email": "contact@example.com",
      "office_phone": "604-555-0142",
      "office_fax": "",
      "url": "https://example.com",
      "billing_address_1": "200 Main Street",
      "billing_address_2": "",
      "billing_city": "Vancouver",
      "billing_region": "British Columbia",
      "billing_postal_code": "V6B 2B2",
      "billing_country": "Canada",
      "shipping_address_1": "200 Main Street",
      "shipping_address_2": "",
      "shipping_city": "Vancouver",
      "shipping_region": "British Columbia",
      "shipping_postal_code": "V6B 2B2",
      "shipping_country": "Canada",
      "vat_number": "",
      "document_count": 0,
      "archived": false,
      "pricing_tier_id": null,
      "owner_user_id": "693ab0a0-d0f1-4dd1-a462-d8f9867d3747",
      "created_at": "2026-07-18T02:42:19+00:00",
      "updated_at": "2026-07-18T02:42:19+00:00",
      "sale_opportunity": "Annual supply agreement",
      "closing_percentage": 60,
      "prospect_date": "2026-07-18"
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 20,
    "total_pages": 1,
    "total_records": 1
  }
}

Retrieve a prospect

GET/api/v3/prospects/{prospect_id}

Required scope: prospects:read

Returns one prospect within the current user's account and record-visibility boundary.

Example request

bash
curl "https://yourbusiness.salesbinder.com/api/v3/prospects/8b17e608-366f-4c02-a510-98f9cc810406" \
  --header "Authorization: Bearer YOUR_API_KEY"

The response is a prospect object. If the prospect is unavailable to the current user, the API returns 404 resource_missing.


Create a prospect

POST/api/v3/prospects

Required scope: prospects:write

The name field is required. SalesBinder assigns the account number and current API user.

Writable fields

FieldTypeRequiredNotes
namestringYesMaximum 255 characters.
office_emailstringNoMaximum 255 characters.
office_phonestringNoMaximum 255 characters.
office_faxstringNoMaximum 255 characters.
urlstringNoValid URL, maximum 255 characters.
billing_address_1stringNoMaximum 255 characters.
billing_address_2stringNoMaximum 255 characters.
billing_citystringNoMaximum 255 characters.
billing_region_idintegerNoSalesBinder region identifier.
billing_regionstringNoMaximum 255 characters.
billing_postal_codestringNoMaximum 255 characters.
billing_country_idintegerNoSalesBinder country identifier.
billing_countrystringNoMaximum 255 characters.
shipping_address_1stringNoMaximum 255 characters.
shipping_address_2stringNoMaximum 255 characters.
shipping_citystringNoMaximum 255 characters.
shipping_region_idintegerNoSalesBinder region identifier.
shipping_regionstringNoMaximum 255 characters.
shipping_postal_codestringNoMaximum 255 characters.
shipping_country_idintegerNoSalesBinder country identifier.
shipping_countrystringNoMaximum 255 characters.
vat_numberstringNoMaximum 24 characters.
tax_rate1numberNoPrimary default tax rate.
tax_rate2numberNoSecondary default tax rate.
customer_label_idstringNoAccount-label UUID.
pricing_tier_idstringNoPricing-tier UUID belonging to the account.
sale_opportunitystringNoOpportunity description, maximum 255 characters.
closing_percentageintegerNoEstimated likelihood of closing. Defaults to 0.
prospect_datestringNoDate in YYYY-MM-DD format.

Account-owned references are validated when assigned or changed. A missing UUID or a UUID belonging to another account returns 422 validation_failed without exposing the other account's data.

Example request

bash
curl "https://yourbusiness.salesbinder.com/api/v3/prospects" \
  --request POST \
  --header "Authorization: Bearer YOUR_API_KEY" \
  --header "Content-Type: application/json" \
  --header "Idempotency-Key: create-example-prospect-001" \
  --data '{
    "name": "Example Prospect",
    "office_email": "contact@example.com",
    "sale_opportunity": "Annual supply agreement",
    "closing_percentage": 60,
    "prospect_date": "2026-07-18"
  }'

Response

Returns the created prospect object with 201 Created. See idempotent requests before automatically retrying creates.


Update a prospect

PATCH or PUT/api/v3/prospects/{prospect_id}

Required scope: prospects:write

Send only the writable fields that should change. Both PATCH and PUT preserve omitted writable fields.

Example request

bash
curl "https://yourbusiness.salesbinder.com/api/v3/prospects/8b17e608-366f-4c02-a510-98f9cc810406" \
  --request PATCH \
  --header "Authorization: Bearer YOUR_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "closing_percentage": 75,
    "sale_opportunity": "Expanded annual agreement"
  }'

Returns the updated prospect object with 200 OK.


Delete a prospect

DELETE/api/v3/prospects/{prospect_id}

Required scope: prospects:delete

A prospect can be deleted only when it has no associated documents. Deleting a prospect with documents returns 422 validation_failed with document_count validation details.

Example request

bash
curl "https://yourbusiness.salesbinder.com/api/v3/prospects/8b17e608-366f-4c02-a510-98f9cc810406" \
  --request DELETE \
  --header "Authorization: Bearer YOUR_API_KEY"

Example response

json
{
  "id": "8b17e608-366f-4c02-a510-98f9cc810406",
  "object": "prospect",
  "deleted": true
}