> ## Documentation Index
> Fetch the complete documentation index at: https://storeinspect.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Search contacts

> Searches preview-safe contact records at Shopify stores using role, seniority, location, technology, and store ICP filters.



## OpenAPI

````yaml /openapi.json post /contacts/search
openapi: 3.1.0
info:
  title: StoreInspect API
  version: 1.0.0
  description: >-
    Database-backed Shopify store and contact intelligence API. V1 access
    requires a paid StoreInspect plan.
servers:
  - url: https://storeinspect.com/api/v1
security: []
tags:
  - name: usage
    x-displayName: Usage
    x-group: Usage
    description: >-
      API access state, request quotas, search-row quota, and shared
      contact-credit usage.
  - name: taxonomy
    x-displayName: Taxonomy
    x-group: Taxonomy
    description: >-
      Filter values, labels, and metadata used by store and contact search
      requests.
  - name: stores
    x-displayName: Stores
    x-group: Stores
    description: >-
      Store lookup, store search, and batch domain enrichment for Shopify
      accounts.
  - name: contacts
    x-displayName: Contacts
    x-group: Contacts
    description: Contact preview search and credit-based contact reveal workflows.
paths:
  /contacts/search:
    post:
      tags:
        - contacts
      summary: Search contacts
      description: >-
        Searches preview-safe contact records at Shopify stores using role,
        seniority, location, technology, and store ICP filters.
      operationId: searchContacts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContactSearchRequest'
      responses:
        '200':
          description: >-
            A cursor-paginated list of contact previews matching the supplied
            filters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactPreviewListResponse'
        '400':
          description: Invalid filters, limit, or cursor.
        '401':
          description: Missing or invalid API key.
        '403':
          description: The account does not have API access.
      security:
        - bearerAuth: []
components:
  schemas:
    ContactSearchRequest:
      type: object
      additionalProperties: false
      properties:
        person:
          $ref: '#/components/schemas/ContactPersonFilters'
        store:
          $ref: '#/components/schemas/ContactStoreFilters'
        max_contacts_per_store:
          type: integer
          minimum: 1
          maximum: 10
          default: 1
        limit:
          type: integer
          minimum: 1
          maximum: 100
          default: 25
        cursor:
          type:
            - string
            - 'null'
          pattern: ^cur_[A-Za-z0-9_-]+$
          default: null
    ContactPreviewListResponse:
      type: object
      properties:
        object:
          type: string
          const: list
        data:
          type: array
          items:
            $ref: '#/components/schemas/ContactPreview'
        has_more:
          type: boolean
        next_cursor:
          type:
            - string
            - 'null'
        request_id:
          type: string
      required:
        - object
        - data
        - has_more
        - next_cursor
        - request_id
    ContactPersonFilters:
      type: object
      additionalProperties: false
      properties:
        roles_any:
          type: array
          items:
            type: string
          maxItems: 50
        seniority_any:
          type: array
          items:
            type: string
          maxItems: 50
        has_verified_email:
          type: boolean
        has_phone:
          type: boolean
        has_linkedin:
          type: boolean
    ContactStoreFilters:
      type: object
      additionalProperties: false
      properties:
        categories:
          type: array
          items:
            type: string
          maxItems: 50
        countries:
          type: array
          items:
            type: string
          maxItems: 50
        traffic_tiers:
          type: array
          items:
            type: string
          maxItems: 50
        revenue_tiers:
          type: array
          items:
            type: string
          maxItems: 50
        shopify_plus:
          type: boolean
        apps:
          $ref: '#/components/schemas/StoreTechnologyFilter'
        pixels:
          $ref: '#/components/schemas/StoreTechnologyFilter'
        themes:
          type: object
          additionalProperties: false
          properties:
            types:
              type: array
              items:
                type: string
                enum:
                  - free
                  - paid
                  - custom
              maxItems: 50
        meta_ads:
          type: object
          additionalProperties: false
          properties:
            active_ads_min:
              type: integer
              minimum: 0
              maximum: 100000
    ContactPreview:
      type: object
      properties:
        id:
          type: string
          pattern: ^ct_[A-Za-z]+_[A-Za-z]{16}$
        object:
          type: string
          const: contact_preview
        first_name:
          type:
            - string
            - 'null'
        last_name_obfuscated:
          type:
            - string
            - 'null'
        role:
          type:
            - string
            - 'null'
        seniority:
          type: string
          enum:
            - executive
            - decision_maker
            - other
        title:
          type:
            - string
            - 'null'
        has_verified_email:
          type: boolean
        has_phone:
          type: boolean
        has_linkedin:
          type: boolean
        revealed:
          type: boolean
        store:
          type: object
          properties:
            id:
              type: string
              pattern: ^st_[A-Za-z]+_[A-Za-z]{16}$
            domain:
              type: string
            name:
              type: string
            category:
              type:
                - string
                - 'null'
            traffic_tier:
              type:
                - string
                - 'null'
            technologies:
              type: object
              properties:
                apps:
                  type: array
                  items:
                    type: string
                pixels:
                  type: array
                  items:
                    type: string
    StoreTechnologyFilter:
      type: object
      additionalProperties: false
      properties:
        any:
          type: array
          items:
            type: string
          maxItems: 50
        none:
          type: array
          items:
            type: string
          maxItems: 50
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: StoreInspect API key

````