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

# Get a lane

> One lane in full: the counts from List lanes plus its audience, filters, every keyword (with its approval status and per-keyword counts) and the funnel.

`funnel` shows how many people each filter step keeps, on the industry path, the company-list path and both together; each number carries the last data day behind it (finals are checked daily, other steps weekly).

**Free.** This doesn't use any contacts from your plan.



## OpenAPI

````yaml /api-reference/openapi.json get /api/v1/lanes/{code}
openapi: 3.1.0
info:
  title: Intent Leads API
  version: '1.0'
  description: >-
    The Intent Leads API finds B2B people actively researching the topics you
    sell into, and exports them with contact details into your own tools.


    **Authentication.** Send an API key as a bearer token: `Authorization:
    Bearer il_live_…`. Keys belong to one organization. Standard keys work with
    everything except billing, team and key management, which need an admin key.


    **What costs contacts.** Only `POST /api/v1/exports` with `"dry_run": false`
    uses contacts from your plan. Quotes, counts, checks, samples and
    re-downloads are free.


    **Errors.** Every error is JSON: `{"error": "code", "message":
    "Plain-English explanation"}`. Codes are stable; messages may change.


    **Conventions.** JSON by default. Dates are `YYYY-MM-DD` and timestamps ISO
    8601, all in UTC. Lane codes (`L1`) are case-insensitive.
servers:
  - url: https://intentleads.si
security:
  - bearerAuth: []
tags:
  - name: Exports
    description: Quote (free) and buy new people from your lanes, then download them.
  - name: Leads
    description: Pull and re-download the leads you've exported, and list deliveries.
  - name: Lanes
    description: >-
      Create, inspect and tune lanes: keywords plus the companies and roles you
      want.
  - name: Keywords
    description: Add and remove a lane's keywords; each one is approved as its own topic.
  - name: Checks
    description: >-
      Free lane checks that size every filter step over 14 days, plus quick
      topic signals.
  - name: Company list
    description: >-
      The target-company list your lanes can narrow to or use instead of
      industries.
  - name: Suppressions
    description: People you exported who later asked to be removed.
  - name: Usage
    description: Contacts used and left this billing period.
  - name: Billing
    description: Plan, invoices and plan changes. Admin keys only.
  - name: Team
    description: Members and invite links. Admin keys only.
  - name: API keys
    description: Create, rename, rotate and revoke API keys. Admin keys only.
  - name: Account
    description: Check which organization a key belongs to and its role.
  - name: Reference
    description: Valid values for lane filters.
  - name: Activity
    description: A feed of changes and events in your organization.
paths:
  /api/v1/lanes/{code}:
    get:
      tags:
        - Lanes
      summary: Get a lane
      description: >-
        One lane in full: the counts from List lanes plus its audience, filters,
        every keyword (with its approval status and per-keyword counts) and the
        funnel.


        `funnel` shows how many people each filter step keeps, on the industry
        path, the company-list path and both together; each number carries the
        last data day behind it (finals are checked daily, other steps weekly).


        **Free.** This doesn't use any contacts from your plan.
      operationId: getLane
      parameters:
        - $ref: '#/components/parameters/LaneCode'
      responses:
        '200':
          description: The lane.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LaneDetail'
              example:
                code: L1
                name: Medical device distributors
                priority: 1
                min_strength: medium
                keywords_live: 8
                keywords_pending: 2
                researching_latest_day:
                  all: 1840
                  medium_plus: 620
                  high: 95
                  as_of: '2026-10-13'
                  deliverable: false
                  note: >-
                    Quick topic signal from a separate preview index for one
                    day, before any filter. Not people you could receive; use
                    after_filters for that.
                researching_14d:
                  all: 21450
                  medium_plus: 7310
                  data_window:
                    start: '2026-09-30'
                    end: '2026-10-13'
                after_filters:
                  all: 1265
                  medium_plus: 412
                  at_lane_strength: 412
                  filters_used: industries
                  data_window:
                    start: '2026-09-30'
                    end: '2026-10-13'
                  checked_at: '2026-10-14T06:12:41.528311+00:00'
                company_list_mode: 'off'
                audience: >-
                  Owners and sales leaders at US medical device distributors
                  with 20 to 300 staff
                filters:
                  countries:
                    - United States
                  headquarters_only: true
                  employees:
                    min: 20
                    max: 300
                  industries:
                    - medical equipment manufacturing
                    - wholesale
                  suggested_industries_not_applied: []
                  seniority:
                    - cxo
                    - vp
                    - director
                  titles_include: []
                  titles_exclude:
                    - intern
                    - assistant
                  industries_exclude: []
                  exclude_companies:
                    - staffing firms
                  exclusions:
                    left_out_by_filter: []
                    screened_before_export:
                      - staffing firms
                    note: >-
                      industries_exclude is applied wherever the lane's industry
                      list isn't (the company-list path, or a lane with no
                      industries). Screened items have no matching industry tag,
                      so DBEE checks them before export.
                  negative_topics:
                    - job openings
                keywords:
                  - position: 1
                    keyword: selling to group purchasing organizations
                    status: live
                    live_since: '2026-09-22'
                    researching_latest_day:
                      all: 310
                      medium_plus: 102
                      high: 14
                      as_of: '2026-10-13'
                      deliverable: false
                    after_filters:
                      all: 96
                      window_end: '2026-10-10'
                      note: >-
                        People on this keyword who pass the lane's US, size,
                        industry, seniority and title filters over 14 days, any
                        strength. Sized weekly.
                  - position: 2
                    keyword: hospital supply chain contracts
                    status: pending_approval
                    live_since: null
                    researching_latest_day:
                      all: null
                      medium_plus: null
                      high: null
                      as_of: null
                      deliverable: false
                    after_filters: null
                funnel:
                  checked_at: '2026-10-14T06:12:41.528311+00:00'
                  data_window:
                    start: '2026-09-30'
                    end: '2026-10-13'
                  unit: people
                  note: >-
                    Finals are checked daily, other steps weekly; window_end is
                    the last data day of the 14-day window behind each number.
                  filters_used: industries
                  industry_path:
                    intent:
                      all:
                        people: 21450
                        window_end: '2026-10-10'
                      medium_plus:
                        people: 7310
                        window_end: '2026-10-10'
                    us:
                      all:
                        people: 14200
                        window_end: '2026-10-13'
                      medium_plus:
                        people: 4905
                        window_end: '2026-10-10'
                    size:
                      all:
                        people: 6020
                        window_end: '2026-10-13'
                      medium_plus:
                        people: 2080
                        window_end: '2026-10-10'
                    industry:
                      all:
                        people: 2410
                        window_end: '2026-10-13'
                      medium_plus:
                        people: 815
                        window_end: '2026-10-10'
                    seniority:
                      all:
                        people: 1530
                        window_end: '2026-10-13'
                      medium_plus:
                        people: 498
                        window_end: '2026-10-10'
                    titles:
                      all:
                        people: 1265
                        window_end: '2026-10-13'
                      medium_plus:
                        people: 412
                        window_end: '2026-10-13'
                  company_list_path: null
                  both: null
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/LaneNotFound'
        '500':
          $ref: '#/components/responses/InternalError'
components:
  parameters:
    LaneCode:
      name: code
      in: path
      required: true
      description: Lane code, e.g. `L1`. Case-insensitive.
      schema:
        type: string
      example: L1
  schemas:
    LaneDetail:
      allOf:
        - $ref: '#/components/schemas/Lane'
        - type: object
          properties:
            audience:
              type:
                - string
                - 'null'
              description: Who you sell to in this lane.
            filters:
              $ref: '#/components/schemas/LaneFilters'
            keywords:
              type: array
              items:
                $ref: '#/components/schemas/Keyword'
              description: Every keyword except removed ones, in order.
            funnel:
              anyOf:
                - $ref: '#/components/schemas/Funnel'
                - type: 'null'
              description: Null until the lane's first check has results.
          required:
            - audience
            - filters
            - keywords
            - funnel
      example:
        code: L1
        name: Medical device distributors
        priority: 1
        min_strength: medium
        keywords_live: 8
        keywords_pending: 2
        researching_latest_day:
          all: 1840
          medium_plus: 620
          high: 95
          as_of: '2026-10-13'
          deliverable: false
          note: >-
            Quick topic signal from a separate preview index for one day, before
            any filter. Not people you could receive; use after_filters for
            that.
        researching_14d:
          all: 21450
          medium_plus: 7310
          data_window:
            start: '2026-09-30'
            end: '2026-10-13'
        after_filters:
          all: 1265
          medium_plus: 412
          at_lane_strength: 412
          filters_used: industries
          data_window:
            start: '2026-09-30'
            end: '2026-10-13'
          checked_at: '2026-10-14T06:12:41.528311+00:00'
        company_list_mode: 'off'
        audience: >-
          Owners and sales leaders at US medical device distributors with 20 to
          300 staff
        filters:
          countries:
            - United States
          headquarters_only: true
          employees:
            min: 20
            max: 300
          industries:
            - medical equipment manufacturing
            - wholesale
          suggested_industries_not_applied: []
          seniority:
            - cxo
            - vp
            - director
          titles_include: []
          titles_exclude:
            - intern
            - assistant
          industries_exclude: []
          exclude_companies:
            - staffing firms
          exclusions:
            left_out_by_filter: []
            screened_before_export:
              - staffing firms
            note: >-
              industries_exclude is applied wherever the lane's industry list
              isn't (the company-list path, or a lane with no industries).
              Screened items have no matching industry tag, so DBEE checks them
              before export.
          negative_topics:
            - job openings
        keywords:
          - position: 1
            keyword: selling to group purchasing organizations
            status: live
            live_since: '2026-09-22'
            researching_latest_day:
              all: 310
              medium_plus: 102
              high: 14
              as_of: '2026-10-13'
              deliverable: false
            after_filters:
              all: 96
              window_end: '2026-10-10'
              note: >-
                People on this keyword who pass the lane's US, size, industry,
                seniority and title filters over 14 days, any strength. Sized
                weekly.
          - position: 2
            keyword: hospital supply chain contracts
            status: pending_approval
            live_since: null
            researching_latest_day:
              all: null
              medium_plus: null
              high: null
              as_of: null
              deliverable: false
            after_filters: null
        funnel:
          checked_at: '2026-10-14T06:12:41.528311+00:00'
          data_window:
            start: '2026-09-30'
            end: '2026-10-13'
          unit: people
          note: >-
            Finals are checked daily, other steps weekly; window_end is the last
            data day of the 14-day window behind each number.
          filters_used: industries
          industry_path:
            intent:
              all:
                people: 21450
                window_end: '2026-10-10'
              medium_plus:
                people: 7310
                window_end: '2026-10-10'
            us:
              all:
                people: 14200
                window_end: '2026-10-13'
              medium_plus:
                people: 4905
                window_end: '2026-10-10'
            size:
              all:
                people: 6020
                window_end: '2026-10-13'
              medium_plus:
                people: 2080
                window_end: '2026-10-10'
            industry:
              all:
                people: 2410
                window_end: '2026-10-13'
              medium_plus:
                people: 815
                window_end: '2026-10-10'
            seniority:
              all:
                people: 1530
                window_end: '2026-10-13'
              medium_plus:
                people: 498
                window_end: '2026-10-10'
            titles:
              all:
                people: 1265
                window_end: '2026-10-13'
              medium_plus:
                people: 412
                window_end: '2026-10-13'
          company_list_path: null
          both: null
    Lane:
      type: object
      properties:
        code:
          type: string
          example: L1
          description: Lane code, e.g. `L1`.
        name:
          type: string
        priority:
          type: integer
          description: Order in which lanes are listed and filled (lower first).
        min_strength:
          $ref: '#/components/schemas/Strength'
        company_list_mode:
          type: string
          enum:
            - narrow
            - replace
            - 'off'
          description: >-
            How the lane uses your company list: `narrow` = lane industries and
            your list; `replace` = your list instead of industries; `off` =
            ignore the list.
        keywords_live:
          type: integer
          description: Keywords approved and in use.
        keywords_pending:
          type: integer
          description: Keywords waiting for approval.
        researching_latest_day:
          type: object
          properties:
            all:
              type:
                - integer
                - 'null'
            medium_plus:
              type:
                - integer
                - 'null'
            high:
              type:
                - integer
                - 'null'
            as_of:
              type:
                - string
                - 'null'
              format: date
              description: The data day these numbers are for.
            deliverable:
              type: boolean
              const: false
              description: 'Always false: these aren''t people you could export.'
            note:
              type: string
          required:
            - all
            - medium_plus
            - high
            - as_of
            - deliverable
            - note
          description: >-
            Quick one-day topic signal, before any filter. Not people you could
            export.
        researching_14d:
          description: >-
            People researching the lane's keywords over the data window, before
            any filter, from the latest check. Null until the first check
            finishes.
          anyOf:
            - type: object
              properties:
                all:
                  type:
                    - integer
                    - 'null'
                medium_plus:
                  type:
                    - integer
                    - 'null'
                data_window:
                  $ref: '#/components/schemas/DataWindow'
              required:
                - all
                - medium_plus
                - data_window
            - type: 'null'
        after_filters:
          description: >-
            People who pass every filter over the data window, from the latest
            check. Everyone already exported to you this billing period was left
            out when the check ran. This is what an export draws from. Null
            until the first check finishes.
          anyOf:
            - type: object
              properties:
                all:
                  type:
                    - integer
                    - 'null'
                  description: Any strength.
                medium_plus:
                  type:
                    - integer
                    - 'null'
                  description: Medium and high.
                high:
                  type:
                    - integer
                    - 'null'
                  description: >-
                    High only. Present only when the check sized it (lanes with
                    `min_strength` `high`).
                at_lane_strength:
                  type:
                    - integer
                    - 'null'
                  description: At the lane's `min_strength`.
                filters_used:
                  type: string
                  enum:
                    - industries
                    - company_list
                    - industries_and_company_list
                  description: >-
                    Which filters the lane's headline count uses: its
                    industries, your company list (company_list_mode `replace`),
                    or both (`narrow`).
                data_window:
                  $ref: '#/components/schemas/DataWindow'
                checked_at:
                  type:
                    - string
                    - 'null'
                  format: date-time
              required:
                - all
                - medium_plus
                - at_lane_strength
                - filters_used
                - data_window
                - checked_at
            - type: 'null'
      required:
        - code
        - name
        - priority
        - min_strength
        - company_list_mode
        - keywords_live
        - keywords_pending
        - researching_latest_day
        - researching_14d
        - after_filters
      example:
        code: L1
        name: Medical device distributors
        priority: 1
        min_strength: medium
        company_list_mode: 'off'
        keywords_live: 8
        keywords_pending: 2
        researching_latest_day:
          all: 1840
          medium_plus: 620
          high: 95
          as_of: '2026-10-13'
          deliverable: false
          note: >-
            Quick topic signal from a separate preview index for one day, before
            any filter. Not people you could receive; use after_filters for
            that.
        researching_14d:
          all: 21450
          medium_plus: 7310
          data_window:
            start: '2026-09-30'
            end: '2026-10-13'
        after_filters:
          all: 1265
          medium_plus: 412
          at_lane_strength: 412
          filters_used: industries
          data_window:
            start: '2026-09-30'
            end: '2026-10-13'
          checked_at: '2026-10-14T06:12:41.528311+00:00'
    LaneFilters:
      type: object
      properties:
        countries:
          type: array
          items:
            type: string
          description: '`["United States"]` when `us_only` is on, else empty.'
        headquarters_only:
          type: boolean
          description: >-
            True when `us_only` is on: the company's headquarters must be in the
            US.
        employees:
          description: Company size range, or null for any size.
          anyOf:
            - type: object
              properties:
                min:
                  type: integer
                max:
                  type: integer
              required:
                - min
                - max
            - type: 'null'
        industries:
          type: array
          items:
            type: string
        suggested_industries_not_applied:
          type: array
          items:
            type: string
          description: Industries DBEE suggests adding. Shown only, never applied.
        seniority:
          type: array
          items:
            type: string
        titles_include:
          type: array
          items:
            type: string
          description: Job title must contain one of these (lowercase).
        titles_exclude:
          type: array
          items:
            type: string
          description: Job title must not contain any of these (lowercase).
        industries_exclude:
          type: array
          items:
            type: string
          description: >-
            Industries left out where the lane's industry list isn't applied
            (the company-list path, or a lane with no industries).
        exclude_companies:
          type: array
          items:
            type: string
          description: Kinds of companies to leave out.
        exclusions:
          type: object
          properties:
            left_out_by_filter:
              type: array
              items:
                type: string
              description: Exclusions already covered by `industries_exclude`.
            screened_before_export:
              type: array
              items:
                type: string
              description: Exclusions DBEE screens for before export.
            note:
              type: string
          required:
            - left_out_by_filter
            - screened_before_export
            - note
        negative_topics:
          type: array
          items:
            type: string
          description: Topics to leave out (set with `topics_to_leave_out`).
      required:
        - countries
        - headquarters_only
        - employees
        - industries
        - suggested_industries_not_applied
        - seniority
        - titles_include
        - titles_exclude
        - industries_exclude
        - exclude_companies
        - exclusions
        - negative_topics
    Keyword:
      type: object
      properties:
        position:
          type: integer
        keyword:
          type: string
        status:
          type: string
          enum:
            - queued
            - pending_approval
            - approved
            - live
            - rejected
          description: >-
            `queued`: not sent for approval yet (retried automatically).
            `pending_approval`: sent, waiting for approval (usually about a
            day). `approved`: approved, going live. `live`: in use; people show
            up within 2 to 4 days of going live. `rejected`: not approved; try
            rewording it.
        live_since:
          type:
            - string
            - 'null'
          format: date
        researching_latest_day:
          type: object
          properties:
            all:
              type:
                - integer
                - 'null'
            medium_plus:
              type:
                - integer
                - 'null'
            high:
              type:
                - integer
                - 'null'
            as_of:
              type:
                - string
                - 'null'
              format: date
            deliverable:
              type: boolean
              const: false
          required:
            - all
            - medium_plus
            - high
            - as_of
            - deliverable
          description: >-
            One-day topic signal for this keyword, before filters. Not
            deliverable.
        after_filters:
          description: >-
            People on this keyword who pass the lane's filters over 14 days, any
            strength. Sized weekly. Null until sized.
          anyOf:
            - type: object
              properties:
                all:
                  type: integer
                window_end:
                  type:
                    - string
                    - 'null'
                  format: date
                  description: Last data day of the window behind the number.
                note:
                  type: string
              required:
                - all
                - window_end
                - note
            - type: 'null'
      required:
        - position
        - keyword
        - status
        - live_since
        - researching_latest_day
        - after_filters
    Funnel:
      type: object
      properties:
        checked_at:
          type:
            - string
            - 'null'
          format: date-time
        data_window:
          $ref: '#/components/schemas/DataWindow'
        unit:
          type: string
          const: people
        note:
          type: string
        filters_used:
          type: string
          enum:
            - industries
            - company_list
            - industries_and_company_list
          description: >-
            Which filters the lane's headline count uses: its industries, your
            company list (company_list_mode `replace`), or both (`narrow`).
        industry_path:
          type:
            - object
            - 'null'
          additionalProperties:
            $ref: '#/components/schemas/FunnelStage'
          description: >-
            Steps when filtering by industries, cumulatively: `intent`
            (researching your keywords), `us`, `size`, `industry`, `seniority`,
            `titles` (final).
        company_list_path:
          type:
            - object
            - 'null'
          additionalProperties:
            $ref: '#/components/schemas/FunnelStage'
          description: >-
            Steps when using your company list instead of industries: `list`,
            `seniority`, `titles` (final). Null without a company list.
        both:
          type:
            - object
            - 'null'
          additionalProperties:
            $ref: '#/components/schemas/FunnelStage'
          description: >-
            Lane industries and your company list together: `titles` (final).
            Only for `narrow` lanes with a company list.
      required:
        - checked_at
        - data_window
        - unit
        - note
        - filters_used
        - industry_path
        - company_list_path
        - both
      description: >-
        How many people each filter step keeps. Finals are checked daily, other
        steps weekly.
    Error:
      type: object
      properties:
        error:
          type: string
          example: lane_not_found
          description: Stable machine-readable code, e.g. `lane_not_found`.
        message:
          type: string
          example: No lane L9.
          description: Plain-English explanation you can show to a person.
      required:
        - error
        - message
      description: Every error has this shape.
    Strength:
      type: string
      enum:
        - low
        - medium
        - high
      description: >-
        Intent strength. As a minimum: `low` = any strength, `medium` = medium
        and high, `high` = high only.
    DataWindow:
      type: object
      properties:
        start:
          type: string
          format: date
          description: First data day (inclusive), UTC.
        end:
          type: string
          format: date
          description: Last data day (inclusive), UTC.
      required:
        - start
        - end
      description: >-
        The 14-day data window a count covers. It can be shorter when fewer
        consecutive data days are ready.
      example:
        start: '2026-09-30'
        end: '2026-10-13'
    FunnelStage:
      type: object
      properties:
        all:
          type: object
          properties:
            people:
              type:
                - integer
                - 'null'
            window_end:
              type:
                - string
                - 'null'
              format: date
              description: Last data day of the 14-day window behind this number.
          required:
            - people
            - window_end
        medium_plus:
          type: object
          properties:
            people:
              type:
                - integer
                - 'null'
            window_end:
              type:
                - string
                - 'null'
              format: date
              description: Last data day of the 14-day window behind this number.
          required:
            - people
            - window_end
        high:
          type: object
          properties:
            people:
              type:
                - integer
                - 'null'
            window_end:
              type:
                - string
                - 'null'
              format: date
              description: Last data day of the 14-day window behind this number.
          required:
            - people
            - window_end
      required: []
      description: >-
        People left at one filter step, per strength. A strength is present only
        when it was sized.
  responses:
    Unauthorized:
      description: Missing, malformed, unknown or revoked API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            unauthorized:
              value:
                error: unauthorized
                message: 'Send a valid API key as: Authorization: Bearer il_live_…'
    LaneNotFound:
      description: No lane with that code.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            lane_not_found:
              value:
                error: lane_not_found
                message: No lane L9.
    InternalError:
      description: >-
        Unexpected server error. Safe to retry reads; retry an export only with
        the same `idempotency_key`.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          examples:
            internal_error:
              value:
                error: internal_error
                message: Something went wrong. Try again.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: il_live_…
      description: >-
        An Intent Leads API key, e.g. `il_live_` followed by 32 letters and
        digits. Create one on the API and CLI page of the dashboard.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.