Hunter · Capability

Hunter Leads API

Hunter Leads API. 6 operations covering full CRUD plus upsert and list. Lead operation: Hunter Create Lead.

Hunter Leads API is a Naftiko capability published by Hunter, one of 8 capabilities the APIs.io network indexes for this provider. It bundles 6 operations across the GET, POST, PUT, PATCH, and DELETE methods rooted at /v1/leads.

The capability includes 2 read-only operations and 4 state-changing operations. Lead operation: Hunter List Leads. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Hunter, Leads, and CRM.

Run with Naftiko HunterLeadsCRM

What You Can Do

GET
Listleads — Hunter List Leads
/v1/leads
POST
Createlead — Hunter Create Lead
/v1/leads
PUT
Upsertlead — Hunter Upsert Lead
/v1/leads
GET
Getlead — Hunter Get Lead
/v1/leads/{id}
PATCH
Updatelead — Hunter Update Lead
/v1/leads/{id}
DELETE
Deletelead — Hunter Delete Lead
/v1/leads/{id}

MCP Tools

hunter-list-leads

Hunter List Leads

read-only idempotent
hunter-create-lead

Hunter Create Lead

hunter-upsert-lead

Hunter Upsert Lead

idempotent
hunter-get-lead

Hunter Get Lead

read-only idempotent
hunter-update-lead

Hunter Update Lead

hunter-delete-lead

Hunter Delete Lead

idempotent

Capability Spec

leads.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Hunter Leads API
  description: 'Hunter Leads API. 6 operations covering full CRUD plus upsert and list. Lead operation: Hunter Create
    Lead.'
  tags:
  - Hunter
  - Leads
  - CRM
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    HUNTER_API_KEY: HUNTER_API_KEY
capability:
  consumes:
  - type: http
    namespace: leads
    baseUri: https://api.hunter.io
    description: Hunter Leads business capability.
    resources:
    - name: leads
      path: /v2/leads
      operations:
      - name: listLeads
        method: GET
        description: Hunter List Leads
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: leads_list_id
          in: query
          type: integer
        - name: email
          in: query
          type: string
        - name: query
          in: query
          type: string
        - name: limit
          in: query
          type: integer
        - name: offset
          in: query
          type: integer
      - name: createLead
        method: POST
        description: Hunter Create Lead
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
      - name: upsertLead
        method: PUT
        description: Hunter Upsert Lead
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
    - name: leads-by-id
      path: /v2/leads/{id}
      operations:
      - name: getLead
        method: GET
        description: Hunter Get Lead
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
      - name: updateLead
        method: PATCH
        description: Hunter Update Lead
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
        - name: body
          in: body
          type: object
          required: true
      - name: deleteLead
        method: DELETE
        description: Hunter Delete Lead
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: integer
          required: true
    authentication:
      type: apikey
      key: api_key
      value: '{{env.HUNTER_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: leads-rest
    port: 8080
    description: REST adapter for Hunter Leads.
    resources:
    - path: /v1/leads
      name: leads
      description: REST surface for leads collection.
      operations:
      - method: GET
        name: listLeads
        description: Hunter List Leads
        call: leads.listLeads
        with:
          leads_list_id: rest.query.leads_list_id
          email: rest.query.email
          query: rest.query.query
          limit: rest.query.limit
          offset: rest.query.offset
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createLead
        description: Hunter Create Lead
        call: leads.createLead
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: upsertLead
        description: Hunter Upsert Lead
        call: leads.upsertLead
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/leads/{id}
      name: leads-by-id
      description: REST surface for individual leads.
      operations:
      - method: GET
        name: getLead
        description: Hunter Get Lead
        call: leads.getLead
        with:
          id: rest.path.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateLead
        description: Hunter Update Lead
        call: leads.updateLead
        with:
          id: rest.path.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteLead
        description: Hunter Delete Lead
        call: leads.deleteLead
        with:
          id: rest.path.id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: leads-mcp
    port: 9090
    transport: http
    description: MCP adapter for Hunter Leads.
    tools:
    - name: hunter-list-leads
      description: Hunter List Leads
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: leads.listLeads
      with:
        leads_list_id: tools.leads_list_id
        email: tools.email
        query: tools.query
        limit: tools.limit
        offset: tools.offset
      outputParameters:
      - type: object
        mapping: $.
    - name: hunter-create-lead
      description: Hunter Create Lead
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: leads.createLead
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: hunter-upsert-lead
      description: Hunter Upsert Lead
      hints: { readOnly: false, destructive: false, idempotent: true }
      call: leads.upsertLead
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: hunter-get-lead
      description: Hunter Get Lead
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: leads.getLead
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: hunter-update-lead
      description: Hunter Update Lead
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: leads.updateLead
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: hunter-delete-lead
      description: Hunter Delete Lead
      hints: { readOnly: false, destructive: true, idempotent: true }
      call: leads.deleteLead
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.