List leads
/v1/leadsLeads in your organization, newest first. Filter by campaign, revenue range, employee count, industry, title or a search term, and page through the results with limit and offset.
Headers
AuthorizationstringRequiredBearerfollowed by a space and your API key, for exampleBearer vk_….
Query parameters
campaign_idstring · uuid or nullFilter by campaign ID
min_revenueinteger or nullMinimum annual revenue filter
≥ 0max_revenueinteger or nullMaximum annual revenue filter
≥ 0min_employeesinteger or nullMinimum employee count filter
≥ 0max_employeesinteger or nullMaximum employee count filter
≥ 0industrystring or nullFilter by industry (case-insensitive match)
at most 200 characterstitlestring or nullFilter by job title (case-insensitive partial match)
at most 200 characterssearchstring or nullUp to 5 words, separated by spaces. Every word must match at least one of the lead's email, first name, last name or company.
at most 200 characterspageintegerPage number (1-indexed). Prefer
offset, which every list route supports≥ 1Default1limitintegerResults per page (max 100)
≥ 1≤ 100Default20offsetinteger or nullRows to skip before this page. Takes precedence over
pagewhen both are sent.≥ 0
Response
200
totalintegerRequiredTotal rows matching the query, across all pages
limitintegerRequiredPage size that was applied
offsetintegerRequiredRows skipped before this page
has_morebooleanRequiredWhether a further page exists
leadsarray of objectsRequiredArray of leads
Show 17 child attributesHide child attributes
idstringRequiredLead UUID
Example"a1b2c3d4-e5f6-7890-abcd-ef1234567890"created_atstring · date-timeRequiredWhen the lead was created
Example"2024-01-15T10:30:00+00:00"annual_revenueinteger or nullCompany annual revenue in dollars
Example5000000companystring or nullCompany name
Example"Acme Corp"company_websitestring or nullLead's company website URL
Example"https://acmecorp.com"custom_fieldsobject or nullCustom fields as key-value pairs
delivered_atstring · date-time or nullWhen a lead-database result was delivered to your workspace; null for leads from other sources
Example"2026-09-01T09:00:00+00:00"emailstring or nullLead's email address
Example"sarah.johnson@acmecorp.com"employeesinteger or nullNumber of employees at the company
Example150first_namestring or nullLead's first name
Example"Sarah"industrystring or nullIndustry sector
Example"Technology"last_namestring or nullLead's last name
Example"Johnson"linkedin_urlstring or nullLead's LinkedIn profile URL
Example"https://linkedin.com/in/sarahjohnson"phone_numberstring or nullPhone number
Example"+1-555-123-4567"qualification_scorenumber or nullLead qualification score (0-100)
Example85.5sourcestring or nullWhere the lead came from:
lead_databasefor a licensed lead-database result,csvfor an upload,manualfor one entered by hand,linkedin_searchfor a LinkedIn search; null for leads recorded before sources were trackedExample"lead_database"titlestring or nullJob title
Example"VP of Sales"
countintegerRequiredLeads in this page
pageintegerRequiredCurrent page number. Prefer
offset, which every list route returnssuccessbooleanDefaulttrue
Errors
Errors share one JSON body: success, error, message, optional details, and request_id.
| Status | Code | Meaning |
|---|---|---|
| 400 | VALIDATION_ERROR | The request didn't match the endpoint's schema: a missing or malformed field, a bad query parameter, or a value out of range. |
| 401 | UNAUTHORIZED | The |
| 401 | API_KEY_EXPIRED | The API key is past its expiry date. Create a new key in the Victoria AI app. |
| 403 | INSUFFICIENT_SCOPE | The API key doesn't have the scope this endpoint requires, such as |
| 403 | ORGANIZATION_DEACTIVATED | The organization that owns this API key has been deactivated. |
| 429 | RATE_LIMITED | Too many requests for this API key: more than 100 a minute to one endpoint, or 600 a minute in total. Retry after the number of seconds in the |
| 500 | INTERNAL_ERROR | Something failed on our side. The response never includes internal details; quote its |
| 503 | UPSTREAM_TIMEOUT | A service the API depends on timed out. The request is safe to retry. |
| 503 | AUTH_UNAVAILABLE | The API key couldn't be checked because the authentication service was unavailable. The request is safe to retry. |
Response headers
| Header | Description |
|---|---|
X-Request-ID | Correlation ID for the request, also returned as |
RateLimit-Limit | Requests allowed to this endpoint per minute. |
RateLimit-Remaining | Requests you can still send to this endpoint right now. |
RateLimit-Reset | Seconds until the endpoint's full limit is available again. |
Retry-After | On a |