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

# Enrich Lead via Navigator

> Submit lead input (name and optional company, job title, location, etc.). Navigator searches for a matching X (Twitter) profile. If a match is found, returns the **full lead** (same structure as the add-lead-to-campaign JSON payload) and deducts **1 Navigator credit**. If no match is found, returns `match: null` and does **not** deduct any credit. The returned lead can be passed directly to Add lead to campaign (JSON import) if desired.

Submit lead input (either `fullName` or `firstName` + `lastName`, plus optional fields like company, job title, location, headline). Navigator searches for a matching X (Twitter) profile. If a match is found, the API returns the full lead in the same structure as the [Add lead to campaign](/api-reference/endpoint/add-lead-to-campaign) JSON payload, and one Navigator credit is deducted. If no match is found, the response has `match: null` and no credit is deducted.

The returned `match` object can be passed directly to Add lead to campaign (using `importType: "json"` and `json: match`) to add that lead to a campaign without a second lookup.

<Info>
  Navigator credits are deducted only when a match is returned. No match means no deduction.
</Info>


## OpenAPI

````yaml POST /navigator/enrich
openapi: 3.0.1
info:
  title: Drippi Public API
  description: API for accessing Drippi automation and lead management data
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://app.drippi.ai/api/v1
    description: Production API server
security:
  - apiKeyAuth: []
paths:
  /navigator/enrich:
    post:
      tags:
        - Navigator
      summary: Enrich lead via Navigator
      description: >-
        Submit lead input (name and optional company, job title, location,
        etc.). Navigator searches for a matching X (Twitter) profile. If a match
        is found, returns the **full lead** (same structure as the
        add-lead-to-campaign JSON payload) and deducts **1 Navigator credit**.
        If no match is found, returns `match: null` and does **not** deduct any
        credit. The returned lead can be passed directly to Add lead to campaign
        (JSON import) if desired.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnrichLeadRequest'
      responses:
        '200':
          description: >-
            Enrichment completed. match is the full lead when found, or null
            when no match. creditsUsed is 1 when a match was found (1 Navigator
            credit deducted); omitted when no match.
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success
                  match:
                    oneOf:
                      - $ref: '#/components/schemas/DrippiTwitterUser'
                      - type: object
                        nullable: true
                    description: >-
                      Full lead (same structure as add-lead-to-campaign json).
                      Null if no match.
                  creditsUsed:
                    type: integer
                    example: 1
                    description: >-
                      Navigator credits deducted (1 when match found; omitted
                      when no match).
        '400':
          description: Invalid request (e.g. missing firstName or lastName)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized - Invalid API key
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '402':
          description: Insufficient Navigator credits
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: >-
            Rate limit exceeded (1,000 requests per minute per key). Response
            includes code: RATE_LIMITED.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitError'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    EnrichLeadRequest:
      oneOf:
        - type: object
          required:
            - fullName
          properties:
            fullName:
              type: string
              description: >-
                Full name (first + last). Will be split into firstName/lastName
                internally.
            website:
              type: string
              description: Optional website URL
            company:
              type: string
              description: Optional company name
            jobTitle:
              type: string
              description: Optional job title
            location:
              type: string
              description: Optional location
            headline:
              type: string
              description: Optional headline/bio (can contain @handle for faster match)
        - type: object
          required:
            - firstName
            - lastName
          properties:
            firstName:
              type: string
              description: Lead first name
            lastName:
              type: string
              description: Lead last name
            website:
              type: string
              description: Optional website URL
            company:
              type: string
              description: Optional company name
            jobTitle:
              type: string
              description: Optional job title
            location:
              type: string
              description: Optional location
            headline:
              type: string
              description: Optional headline/bio (can contain @handle for faster match)
      description: Provide either fullName or firstName+lastName.
    DrippiTwitterUser:
      type: object
      required:
        - id
        - name
        - username
        - created_at
        - profile_image_url
        - public_metrics
      properties:
        id:
          type: string
          description: Twitter user ID
        name:
          type: string
          description: Display name
        username:
          type: string
          description: Twitter username
        created_at:
          type: string
          description: Account creation date (ISO 8601)
        protected:
          type: boolean
          nullable: true
        location:
          type: string
          nullable: true
        url:
          type: string
          nullable: true
        description:
          type: string
          nullable: true
        verified:
          type: boolean
          nullable: true
        entities:
          type: object
        profile_image_url:
          type: string
        public_metrics:
          type: object
          properties:
            followers_count:
              type: integer
            following_count:
              type: integer
            tweet_count:
              type: integer
            listed_count:
              type: integer
        pinned_tweet_id:
          type: string
          nullable: true
        gqlId:
          type: string
    Error:
      type: object
      properties:
        status:
          type: string
          example: error
        message:
          type: string
          example: Something went wrong
    RateLimitError:
      type: object
      properties:
        code:
          type: string
          example: RATE_LIMITED
        message:
          type: string
          example: Rate limit exceeded
        ratelimit:
          type: object
          properties:
            remaining:
              type: integer
              description: Remaining requests
            limit:
              type: integer
              description: Total limit
            duration:
              type: integer
              description: Duration in milliseconds
            reset:
              type: integer
              description: Reset timestamp
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication

````