Signals

List a signal's leads

Read the leads a signal has delivered — the prospects and companies it found, with their enriched contact and company details — without running a webhook receiver. Use it to review what a signal produced yesterday, to back-fill a CRM after an outage, or to let an AI assistant answer "show me my new leads".

Input: signalId in the path; optional since (ISO-8601 timestamp: only leads produced at or after it), limit (1-100, default 25) and offset (default 0) to page through the results.

Output: signalId, total (matching leads across all pages), limit, offset, hasMore, and leads — newest first, each in exactly the shape the signal's webhook delivers (nested signal / contact / company, snake_case, see outputFields in GET /api/v1/signal-types). For an Account Watchlist, the leads of every enabled source are returned under the watchlist's own id. A company-level lead (a funding round, a deal, a job posting delivered without persona targeting) has contact set to the empty string "", not an object, so it carries no contact.lead_id.

Reading leads is free: a lead is charged once, when it is produced. Leads that did not pass your filters, and watchlist changes still waiting for your review, are not returned.

get/api/v1/signals/{signal_id}/leads

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/signals/{signal_id}/leads
  • Auth: HTTP bearer

Path parameters

signal_idstring required

Query parameters

sincestring date-time nullable

Only leads produced at or after this ISO-8601 timestamp.

Example:2026-10-07T00:00:00+00:00
limitinteger

Leads per page, 1 to 100; default 25.

offsetinteger

Leads to skip (pagination).

Response

Successful Response

signalIdstring required

The signal's id.

totalinteger required

Leads matching the request, across all pages.

limitinteger required

Page size used for this response.

offsetinteger required

Leads skipped before this page.

hasMoreboolean required

True when another page follows.

leadsobject[] required

The leads, newest first. Each one is the exact object the signal's webhook delivers: nested signal, contact and company objects with snake_case fields (contact is the empty string "" for a company-level lead, for example a funding round delivered without persona targeting). The fields per signal type are listed in outputFields of GET /api/v1/signal-types.

Example response

{
  "hasMore": true,
  "leads": [
    {
      "company": {
        "hq_city": "Paris",
        "hq_country_code": "FR",
        "industry": "Software Development",
        "linkedin_url": "https://www.linkedin.com/company/doctolib",
        "location": "Paris, France",
        "name": "Doctolib",
        "phone": "",
        "website": "https://doctolib.fr"
      },
      "contact": {
        "city": "Paris",
        "country_code": "FR",
        "created_at": "2026-10-07T09:12:00+00:00",
        "email": "marie.dupont@doctolib.fr",
        "first_name": "Marie",
        "last_name": "Dupont",
        "lead_id": "b2c3d4e5-f6a7-8901-bcde-f23456789012",
        "linkedin_profile_url": "https://www.linkedin.com/in/marie-dupont",
        "location": "Paris, France",
        "matched_persona": "Sales Director",
        "phone": "",
        "sales_navigator_profile_url": "",
        "title": "VP Sales"
      },
      "signal": {
        "heat_score": 50,
        "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
        "last_signal": "Job Changes",
        "last_signal_date": "2026-10-07",
        "name": "New sales leaders in French SaaS",
        "tracked_company": "",
        "type": "job_changes"
      }
    },
    {
      "company": {
        "hq_city": "Montpellier",
        "hq_country_code": "FR",
        "industry": "Software Development",
        "linkedin_url": "https://www.linkedin.com/company/acme",
        "location": "Montpellier, France",
        "name": "Acme",
        "phone": "+33199001234",
        "website": "https://acme.com"
      },
      "contact": "",
      "signal": {
        "announcement_date": "2026-09-20",
        "funding_amount": 3000000,
        "funding_amount_usd": 3443700,
        "funding_currency": "EUR",
        "funding_type": "seed",
        "heat_score": 50,
        "id": "c3d4e5f6-a7b8-9012-cdef-345678901234",
        "investors": [
          "Example Ventures"
        ],
        "last_signal": "Watched Company Raised",
        "last_signal_date": "2026-10-15",
        "name": "Funding at my target accounts",
        "type": "fundraising_watchlist"
      }
    }
  ],
  "limit": 25,
  "offset": 0,
  "signalId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "total": 42
}

Changes

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