Enrichment

Poll an async people-search request

Check the status and retrieve results of an async people-search request—use when your webhook receiver was temporarily unavailable or you prefer polling over webhooks.

Input: requestId (the ID from your initial async POST response).

Output: job status (pending/completed/failed); when complete, search results in your configured format (batch: full page of results; per-result: page metadata only, with individual results already streamed to your webhook one-by-one); webhookDeliveredCount and webhookFailedCount show successful and failed webhook POSTs so you can detect partial failures and decide whether to refetch.

get/api/v1/enrichment/people-search/{request_id}

Request

  • Base URL: https://api.rodz.io (the document declares no server; this is the origin it was published from)
  • URL: https://api.rodz.io/api/v1/enrichment/people-search/{request_id}
  • Auth: HTTP bearer

Path parameters

request_idstring required

Response

Job state. Inspect status to know whether to consume result (completed) or error (failed) or wait (pending).

requestIdstring required
statusstring required

One of: pending, completed, failed

errorstring nullable

Set only when status=failed. Short, human-readable reason the lookup could not complete.

webhookDeliveredCountinteger nullable

Number of webhook POSTs that landed (2xx response). For batch jobs this is 0 or 1; for per_result jobs it counts successful per-item deliveries. null when no webhook was configured.

webhookFailedCountinteger nullable

Number of webhook POSTs that errored (non-2xx, timeout, or connection refused). Use to detect partial delivery and decide whether to refetch via this GET endpoint. null when no webhook was configured.

Example response

{
  "requestId": "1f3c2a7e-9b5d-4d2a-8f4b-9a0e7c1d3b22",
  "result": {
    "aiValidationStatus": "ok",
    "count": 2,
    "hasMore": true,
    "metadata": [
      {
        "campaign": "q3-france-founders",
        "rowId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
      }
    ],
    "page": 1,
    "results": [
      {
        "currentPositions": [
          {
            "companyLinkedinUrl": "https://www.linkedin.com/company/lemlist/",
            "companyName": "Lemlist",
            "startedOnMonth": 3,
            "startedOnYear": 2024,
            "title": "VP of Sales"
          }
        ],
        "firstName": "Jane",
        "lastName": "Doe",
        "linkedinUrl": "https://www.linkedin.com/in/jane-doe-vp-sales/",
        "location": "Paris, Île-de-France, France",
        "openProfile": false,
        "premium": true,
        "qualificationReason": "title 'VP of Sales' matches jobTitles",
        "qualificationStatus": "QUALIFIED"
      },
      {
        "currentPositions": [
          {
            "companyLinkedinUrl": "https://www.linkedin.com/company/lemlist/",
            "companyName": "Lemlist",
            "startedOnMonth": 9,
            "startedOnYear": 2023,
            "title": "Marketing Director"
          }
        ],
        "firstName": "John",
        "lastName": "Smith",
        "linkedinUrl": "https://www.linkedin.com/in/john-smith-marketing/",
        "location": "Brussels, Belgium",
        "openProfile": true,
        "premium": false,
        "qualificationReason": "title 'Marketing Director' not in jobTitles (VP of Sales, Head of Marketing)",
        "qualificationStatus": "DISQUALIFIED"
      }
    ],
    "total": 87,
    "totalPages": 4
  },
  "status": "completed",
  "webhookDeliveredCount": 25,
  "webhookFailedCount": 0
}

Changes

No recorded changes to this operation across all 1 revision of this API.