# Leadsforge LinkedIn profile finder in batch

Request linkedin profile finding. Takes client request id, people, person ids and more, all optional.

Request linkedin profile finding. Two input modes (mutually exclusive): (1) personIDs - array of IDs obtained from POST /search, (2) people - array of objects, each with either linkedinURL (e.g. "https://www.linkedin.com/in/john-doe") or firstName + lastName + company name (e.g. "Salesforge", not a URL). Max 500 items. Original input fields are echoed back on each result for correlation. People array entries are deduplicated by normalized linkedinURL or by case-insensitive firstName+lastName+company; only one result is returned per unique person, so duplicate entries (e.g. two CRM records pointing at the same person with different externalIDs) will lose the externalIDs of the duplicates - send unique people if you need each externalID echoed back. Each person in the people array may include an optional externalID (max 128 chars), a pure passthrough value persisted with the result and echoed back in the webhook payload and GET /results response for client-side correlation; externalID is not supported in personIDs mode. Example with people: {"people": [{"linkedinURL": "https://www.linkedin.com/in/john-doe", "externalID": "crm-42"}, {"firstName": "Jane", "lastName": "Smith", "company": "Salesforge"}], "webhookURL": "https://example.com/webhook"}. Example with personIDs: {"personIDs": ["p_abc123", "p_def456"]}. Agentik values credits at $0.011125 (account plan $89/8,000 credits). Reserve the maximum; charge only observed successful results/consumed credits. Failed lookups are free. Returns an Agentik RUNNING operation. Poll get_run for settlement, and use the corresponding get-*-results tool with jobID for paginated data.

- Tool ID: `leadsforge/find-linkedin-batch`
- Name in the catalog: Find linkedin profiles
- Provider: [Leadsforge](/providers/leadsforge.md)
- Capability: [LinkedIn profile & company enrichment](/tools/b2b-data/profile-enrichment.md)
- Price: usage based, the maximum is shown before a run
- Authentication: an authorised Agentik workspace is required for execution, including zero-price tools.

## Pricing contract

Billed at the cost the provider reports for the call, never above $5.5625. Your agent sees the maximum before running.


```json
{
  "model": "reported",
  "costPath": "",
  "costTerms": [
    {
      "path": "consumedCredits",
      "usd": 0.011125
    }
  ],
  "maxUsdDefault": 0,
  "maxUsdCap": 5.5625,
  "multipliers": [
    {
      "addUsdPer": {
        "field": "people",
        "usd": 0.011125,
        "max": 500
      }
    },
    {
      "addUsdPer": {
        "field": "personIDs",
        "usd": 0.011125,
        "max": 500
      }
    }
  ],
  "requireCost": true
}
```

Pricing source: [https://www.leadsforge.ai/pricing](https://www.leadsforge.ai/pricing). Account subscription confirmed by Emmanuel on 2026-09-15: USD 89 / 8,000 monthly credits = USD 0.011125/credit at full utilization. API /balance verifies channel credit costs. Not the public entry-plan rate..

Price verification date: 2026-10-08.

## Complete input schema


```json
{
  "type": "object",
  "properties": {
    "clientRequestID": {
      "type": "string",
      "maxLength": 128
    },
    "people": {
      "type": "array",
      "maxItems": 500,
      "minItems": 1,
      "items": {
        "type": "object",
        "properties": {
          "company": {
            "type": "string",
            "maxLength": 2048,
            "minLength": 1
          },
          "companyDomain": {
            "type": "string",
            "maxLength": 2048,
            "minLength": 1
          },
          "externalID": {
            "type": "string",
            "maxLength": 128
          },
          "firstName": {
            "type": "string",
            "maxLength": 2048,
            "minLength": 1
          },
          "lastName": {
            "type": "string",
            "maxLength": 2048,
            "minLength": 1
          },
          "linkedinURL": {
            "type": "string",
            "maxLength": 2048,
            "minLength": 1,
            "pattern": "^https://(?:www\\.)?linkedin\\.com/in/[^\\s]+$"
          }
        },
        "additionalProperties": false,
        "anyOf": [
          {
            "required": [
              "linkedinURL"
            ]
          },
          {
            "required": [
              "firstName",
              "lastName",
              "company"
            ]
          },
          {
            "required": [
              "firstName",
              "lastName",
              "companyDomain"
            ]
          }
        ]
      }
    },
    "personIDs": {
      "type": "array",
      "maxItems": 500,
      "minItems": 1,
      "items": {
        "type": "string",
        "maxLength": 256,
        "minLength": 1
      },
      "uniqueItems": true
    },
    "saveToList": {
      "type": "boolean",
      "default": false
    },
    "webhookURL": {
      "type": "string",
      "maxLength": 2048,
      "format": "uri",
      "pattern": "^https://[^\\s]+$"
    }
  },
  "additionalProperties": false,
  "oneOf": [
    {
      "required": [
        "people"
      ],
      "not": {
        "required": [
          "personIDs"
        ]
      }
    },
    {
      "required": [
        "personIDs"
      ],
      "not": {
        "required": [
          "people"
        ]
      }
    }
  ]
}
```

## Published example

This is the provider tool’s published example. Replace example values with the user’s requested inputs, respecting the schema; do not execute an example merely to test a connection.


```json
{
  "tool_id": "leadsforge/find-linkedin-batch",
  "input": {
    "people": [
      {
        "firstName": "Frank",
        "lastName": "Sondors",
        "company": "Salesforge"
      }
    ]
  }
}
```

## Execute and retrieve

Inspect again before execution, explain the price and obtain the required authority. Use MCP run_tool or POST /v1/run with this tool ID, valid input and an idempotency key. Save the returned run ID and follow the actual state. If Agentik answers that the tool is temporarily unavailable, do not retry it blindly; use discovery to propose an alternative.

This tool uses deferred settlement. Follow its returned task/run instructions; preserve the existing reservation until the result is reconciled.

A partial or uncertain result can still have consumed provider resources. Consult [billing](/docs/billing.md), [idempotency](/docs/idempotency.md) and [asynchronous results](/docs/async.md).

Licence: Provider data use is subject to the Leadsforge agreement; redistribution terms must cover Agentik..

[Provider documentation](https://api.leadsforge.ai/public/swagger/index.html)

[REST inspection](https://api.agentik.cc/v1/tools/leadsforge/find-linkedin-batch) · [OpenAPI](/openapi.json) · [Connection guide](/connect.md)

---

[HTML page](/providers/leadsforge/find-linkedin-batch) · [Agent index](/llms.txt)
