---
title: "Get a single shopper"
method: GET
path: "/dealerships/{dealershipId}/shoppers/{id}"
tags: ["shoppers"]
---

# Get a single shopper

`GET /dealerships/{dealershipId}/shoppers/{id}`

## Request

- Base URL: `https://api.fullpath.com/consent-management`
- URL: `https://api.fullpath.com/consent-management/dealerships/{dealershipId}/shoppers/{id}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/fullpath/apis/fullpath-api-v1-openapi-3-0/docs/dealerships/:dealershipId/shoppers/:id/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves a shopper by `id`.

Additional fields can be included in the response using the `embed` parameter. This endpoint supports all embed options available for the list endpoint, plus additional options only available for single shopper requests.

**Embed options available for both list and single shopper:**
- `primary_contact` - Primary contact information (extended version with more fields in single shopper response)
- `latest_lead_date` - Date of the latest lead (YYYY-MM-DD)
- `latest_sale_date` - Date of the latest sale (YYYY-MM-DD)
- `latest_sale` - Latest sale information
- `latest_lead` - Latest lead information including vehicle details
- `adf_leads` - Array of ADF leads
- `latest_marketing_touchpoint_date` - Date of the latest marketing touchpoint (YYYY-MM-DD)
- `marketing_engagement_score` - Marketing engagement score
- `loyalty_score` - Loyalty score

**Additional embed options available only for single shopper:**
- `contacts` - Array of all contacts associated with the shopper
- `location` - Location information (city, state, zipcode, etc.)
- `score` - Shopper score
- `public_link` - Public link for the shopper
- `customer_lifetime_value` - Customer lifetime value information (sales, services, total)
- `latest_sale_estimated_equity` - Estimated equity from latest sale
- `household_flag` - Whether this is a household shopper
- `customer_tags` - Array of customer tags
- `is_enriched` - Whether the shopper data has been enriched
- `salesperson` - Assigned salesperson
- `group_shopper_id` - Group shopper identifier
- `financial_durability_index` - Financial durability index
- `aim_propensity_score` - AIM propensity score

Multiple embed options can be specified as a comma-separated list, e.g., `embed=primary_contact,contacts,location,customer_lifetime_value`.

## Path parameters

- `dealershipId` integer, required
- `id` integer, required

## Query parameters

- `embed` string

## Response `200`

Shopper found

- Shopper: Represents a shopper. Additional fields are available via the embed parameter. Some fields (contacts, location, score, public_link, customer_lifetime_value, latest_sale_estimated_equity, household_flag, customer_tags, is_enriched, salesperson, group_shopper_id, financial_durability_index, aim_propensity_score) are only available when getting a single shopper.
  - `id` integer, required: Unique shopper identifier
  - `primary_contact` PrimaryContact, nullable: Primary contact information for a shopper. Extended version available in single shopper responses.
    - `source` string, nullable: Source of the contact (e.g., customer, crm_customer)
    - `first_name` string, nullable: First name
    - `middle_name` string, nullable: Middle name
    - `last_name` string, nullable: Last name
    - `full_name` string, nullable: Full name
    - `main_email_addresses` string, email, nullable: Main email address
    - `alternative_email_addresses` string, nullable: Alternative email addresses
    - `cell_phone` string, nullable: Cell phone number
    - `home_phone` string, nullable: Home phone number
    - `work_phone` string, nullable: Work phone number
    - `address` string, nullable: Street address
    - `city` string, nullable: City
    - `state` string, nullable: State
    - `zipcode` string, nullable: ZIP code
    - `timestamp` string, date-time, nullable: Timestamp when the contact was created/updated
    - `latitude` number, nullable: Latitude coordinate
    - `longitude` number, nullable: Longitude coordinate
    - `status` string, nullable: Contact status
    - `crm_link` string, uri, nullable: Link to CRM customer dashboard
    - `creation_date` string, date, nullable: Creation date (YYYY-MM-DD)
    - `external_customer_id` string, nullable: External customer identifier
    - `customer_type` string, nullable: Customer type
    - `email` string, email, nullable: Email address (legacy field, use main_email_addresses)
    - `full_address` string, nullable: Full address (legacy field, use city, state, zipcode)
  - `latest_lead_date` string, date, nullable: Date of the latest lead (YYYY-MM-DD)
  - `latest_sale_date` string, date, nullable: Date of the latest sale (YYYY-MM-DD)
  - `latest_marketing_touchpoint_date` string, date, nullable: Date of the latest marketing touchpoint (YYYY-MM-DD)
  - `latest_sale` LatestSale, nullable: Latest sale information for a shopper. Structure similar to LatestLead.
  - `latest_lead` LatestLead, nullable: Latest lead information for a shopper
    - `id` string: Lead identifier
    - `salesperson` string, nullable: Name of the salesperson
    - `date` string, date: Lead date (YYYY-MM-DD)
    - `up_type` string, nullable: UP type
    - `source` string, nullable: Lead source
    - `status` string, nullable: Lead status
    - `sub_status` string, nullable: Lead sub-status
    - `vehicle` Vehicle, nullable: Vehicle information
      - `vin` string, nullable: Vehicle Identification Number
      - `condition` string, nullable: Vehicle condition (e.g., new, used)
      - `year` string, nullable: Vehicle year
      - `make` string, nullable: Vehicle make
      - `model` string, nullable: Vehicle model
      - `trim` string, nullable: Vehicle trim
  - `adf_leads` ADFLead[]: Array of ADF leads
  - `marketing_engagement_score` string, nullable: Marketing engagement score
  - `loyalty_score` string, nullable: Loyalty score
  - `contacts` ContactDetail[]: Array of all contacts associated with the shopper (single shopper only)
    - `source` string, nullable: Source of the contact (e.g., crm_customer, website_conversion)
    - `first_name` string, nullable: First name
    - `middle_name` string, nullable: Middle name
    - `last_name` string, nullable: Last name
    - `full_name` string, nullable: Full name
    - `main_email_addresses` string, email, nullable: Main email address
    - `alternative_email_addresses` string, nullable: Alternative email addresses
    - `cell_phone` string, nullable: Cell phone number
    - `home_phone` string, nullable: Home phone number
    - `work_phone` string, nullable: Work phone number
    - `address` string, nullable: Street address
    - `city` string, nullable: City
    - `state` string, nullable: State
    - `zipcode` string, nullable: ZIP code
    - `timestamp` string, date-time, nullable: Timestamp when the contact was created/updated
    - `latitude` number, nullable: Latitude coordinate
    - `longitude` number, nullable: Longitude coordinate
    - `status` string, nullable: Contact status
    - `crm_link` string, uri, nullable: Link to CRM customer dashboard
    - `creation_date` string, date, nullable: Creation date (YYYY-MM-DD)
    - `external_customer_id` string, nullable: External customer identifier
    - `customer_type` string, nullable: Customer type
  - `location` Location, nullable: Location information for a shopper
    - `title` string, nullable: Full location title
    - `city` string, nullable: City
    - `state` string, nullable: State
    - `zipcode` string, nullable: ZIP code
    - `source` string, nullable: Source of the location data
    - `address` string, nullable: Street address
    - `distance_from_dealership` number, nullable: Distance from dealership (in miles or kilometers)
  - `score` integer, nullable: Shopper score (single shopper only)
  - `public_link` string, uri, nullable: Public link for the shopper (single shopper only)
  - `customer_lifetime_value` CustomerLifetimeValue, nullable: Customer lifetime value information
    - `sales` SalesServices: Sales or services summary
      - `count` integer: Number of sales/services
      - `total` number: Total value
      - `gross` number: Gross value
    - `services` SalesServices: Sales or services summary
      - `count` integer: Number of sales/services
      - `total` number: Total value
      - `gross` number: Gross value
    - `total_lifetime_value` number: Total lifetime value
  - `latest_sale_estimated_equity` number, nullable: Estimated equity from latest sale (single shopper only)
  - `household_flag` boolean, nullable: Whether this is a household shopper (single shopper only)
  - `customer_tags` string[]: Array of customer tags (single shopper only)
  - `is_enriched` boolean, nullable: Whether the shopper data has been enriched (single shopper only)
  - `salesperson` string, nullable: Assigned salesperson (single shopper only)
  - `group_shopper_id` string, nullable: Group shopper identifier (single shopper only)
  - `financial_durability_index` number, nullable: Financial durability index (single shopper only)
  - `aim_propensity_score` number, nullable: AIM propensity score (single shopper only)

## Other responses

- `401`: Unauthorized
- `404`: Shopper not found
- `500`: Server error

---

[API](https://skmtc.dev/fullpath/apis/fullpath-api-v1-openapi-3-0.md) - [All operations](https://skmtc.dev/fullpath/apis/fullpath-api-v1-openapi-3-0/llms.txt) - [OpenAPI document](https://skmtc.dev/fullpath/apis/fullpath-api-v1-openapi-3-0/revisions/4b73e1835a7e?raw)
