Explorium Prospects API
Match, fetch, stat, autocomplete, and event/enrollment operations over the Explorium prospect dataset (v1).
Match, fetch, stat, autocomplete, and event/enrollment operations over the Explorium prospect dataset (v1).
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/explorium-prospects-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Partner Service Prospects API
version: 0.3.19
servers:
- url: https://api.explorium.ai
description: AgentSource Server
tags:
- name: Prospects
paths:
/v1/prospects/match:
post:
tags:
- Prospects
summary: Match Prospects
description: 'Match a list of prospects attributes to ids.
Returns a list of the same length and order as the input list, with the matched ids.'
operationId: match_prospects
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsMatchRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsMatchResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
/v1/prospects:
post:
tags:
- Prospects
summary: Fetch Prospects
operationId: fetch_prospects
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsFetchRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
anyOf:
- $ref: '#/components/schemas/ProspectsFetchResponse'
- $ref: '#/components/schemas/ProspectsFetchResponseV2'
title: Response Fetch Prospects
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
/v1/prospects/stats:
post:
tags:
- Prospects
summary: Prospect Fetch Stats
description: Fetch stats for businesses.
operationId: prospect_fetch_stats
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsStatsRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsStatsResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
/v1/prospects/events:
post:
tags:
- Prospects
summary: Fetch Prospects Events
description: Create events and fetch for prospects.
operationId: fetch_prospects_events
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEventsRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
/v1/prospects/autocomplete:
get:
tags:
- Prospects
summary: Autocomplete Prospects
description: Autocomplete prospects fields values by field name.
operationId: prospects_autocomplete
parameters:
- required: true
schema:
$ref: '#/components/schemas/AutocompleteType'
name: field
in: query
- required: false
schema:
type: string
title: Query
default: ''
name: query
in: query
- required: false
schema:
type: boolean
title: Semantic Search
default: false
name: semantic_search
in: query
responses:
'200':
description: Successful Response
content:
application/json:
schema:
items:
$ref: '#/components/schemas/AutoCompleteItem'
type: array
title: Response Prospects Autocomplete
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
/v1/prospects/events/enrollments:
get:
tags:
- Prospects
summary: Get Prospects Enrollments
description: Show prospects events enrollments records for user.
operationId: get_prospects_enrollments
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsGetResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
post:
tags:
- Prospects
summary: Add Prospects Enrollments
description: Add enrollments for prospects
operationId: add_prospects_enrollments
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsAddRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsAddResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
delete:
tags:
- Prospects
summary: Delete Prospects Enrollments
description: Delete events enrollments records
operationId: delete_prospects_enrollments
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsDeleteRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsDeleteResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
patch:
tags:
- Prospects
summary: Update Prospects Enrollments
description: Update enrollments for prospects
operationId: update_prospects_enrollments
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsUpdateRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ProspectsEnrollmentsUpdateResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
- APIKeyHeader: []
components:
schemas:
IncludesFilter_NumberOfLocations_:
properties:
negate:
type: boolean
title: Negate
values:
items:
$ref: '#/components/schemas/NumberOfLocations'
type: array
additionalProperties: false
type: object
required:
- values
title: IncludesFilter[NumberOfLocations]
ContactDetailsFilterValue:
type: string
enum:
- email
- phone
- email_or_phone
- email_and_phone
title: ContactDetailsFilterValue
description: An enumeration.
ProspectsEnrollmentsDeleteRequest:
properties:
request_context:
type: object
title: Request Context
marked_for_null_replacement: true
nullable: true
enrollment_id:
type: string
title: Enrollment Id
additionalProperties: false
type: object
required:
- enrollment_id
title: ProspectsEnrollmentsDeleteRequest
ProspectsFetchFilters:
properties:
prospect_id:
allOf:
- $ref: '#/components/schemas/IncludesFilter_ProspectId_'
title: Prospect ID
description: Filter prospects by specific Explorium prospect IDs
example:
values:
- edf268ac410ff3ba9ca9cc67b065664f38201984
- 5b486640efabe6f8bb8cf446e80169ba4a1c5ad8
nullable: true
has_email:
allOf:
- $ref: '#/components/schemas/ExistsFilter'
title: Has Email
description: 'Filter prospects by whether they have an email. Categories: [True, False]'
example:
value: true
has_phone_number:
allOf:
- $ref: '#/components/schemas/ExistsFilter'
title: Has Phone Number
description: 'Filter prospects by whether they have a phone number. Categories: [True, False]'
example:
value: true
has_contact_details:
allOf:
- $ref: '#/components/schemas/ContactDetailsFilter'
title: Has Contact Details
description: Filter prospects by email and phone availability.
example:
value: email_or_phone
job_level:
allOf:
- $ref: '#/components/schemas/IncludesFilter_JobSeniorityLevel_'
title: Job Level
description: 'Filter prospects by their job level. Categories: [director, manager, vp, partner, cxo, non-managerial, senior, entry, training, unpaid]'
example:
values:
- owner
- c-suite
- vice president
- director
- senior non-managerial
- manager
- partner
- non-managerial
- junior
- president
- senior manager
- advisor
- freelancer
- board member
- founder
- training
- unpaid
job_department:
allOf:
- $ref: '#/components/schemas/IncludesFilter_JobDepartment_'
title: Job Department
description: 'Filter prospects by their job department. Categories: [customer service, design, education, engineering, finance, general, health, sales, ...]'
example:
values:
- administration
- real estate
- healthcare
- partnerships
- c-suite
- design
- human resources
- engineering
- education
- strategy
- product
- sales
- r&d
- retail
- customer success
- security
- public service
- creative
- it
- support
- marketing
- trade
- legal
- operations
- procurement
- data
- manufacturing
- logistics
- finance
business_id:
allOf:
- $ref: '#/components/schemas/IncludesFilter_BusinessId_'
title: Business ID
description: 'Filter prospects by account. Use Explorium entity IDs. Maximum 10,000 items allowed. Example: [EXP_ENTITY_ID_1, EXP_ENTITY_ID_2]'
example:
values:
- 8adce3ca1cef0c986b22310e369a0793
- 340c8040bd50cbab9c7df718bbe51cc9
total_experience_months:
allOf:
- $ref: '#/components/schemas/RangeFilter_Int_'
title: Total Experience Months
description: Filter by total months of experience.
example:
gte: 1
lte: 10
country_code:
allOf:
- $ref: '#/components/schemas/IncludesFilter_CountryCodeAlpha2_'
title: Country Code
description: 'Filter prospects by country using alpha-2 codes. Example: [us, ca]'
example:
values:
- US
- CA
region_country_code:
allOf:
- $ref: '#/components/schemas/IncludesFilter_RegionCode_'
title: Region Country Code
description: 'Filter prospects by region using ISO 3166-2 codes. Example: [us-ut, us-ca]'
example:
values:
- US-CA
- IL-TA
current_role_months:
allOf:
- $ref: '#/components/schemas/RangeFilter_Int_'
title: Current Role Months
description: Filter by number of months in current role.
example:
gte: 1
lte: 10
company_size:
allOf:
- $ref: '#/components/schemas/IncludesFilter_NumberOfEmployeesRange_'
title: Company Size
description: 'Filter by company’s number of employees. Options: [1-10, 11-50, ..., 10001+]'
example:
values:
- 1-10
- 11-50
- 51-200
- 201-500
- 501-1000
- 1001-5000
- 5001-10000
- 10001+
company_revenue:
allOf:
- $ref: '#/components/schemas/IncludesFilter_RevenueRange_'
title: Company Revenue
description: 'Filter by company’s annual revenue. Options: [0-500K, 500K-1M, ..., 10B-100B]'
example:
values:
- 0-500K
- 500K-1M
- 1M-5M
- 5M-10M
- 10M-25M
- 25M-75M
- 75M-200M
- 200M-500M
- 500M-1B
- 1B-10B
- 10B-100B
- 100B-1T
- 1T-10T
- 10T+
company_age:
allOf:
- $ref: '#/components/schemas/IncludesFilter_CompanyAgeRange_'
title: Company Age
description: 'Filter by company age. Options: [0-3, 3-6, 6-10, 10-20, 20+]'
example:
values:
- 0-3
- 3-6
- 6-10
- 10-20
- 20+
company_number_of_locations:
allOf:
- $ref: '#/components/schemas/IncludesFilter_NumberOfLocations_'
title: Number Of Locations
description: 'Filter by company office count. Options: [0-1, 2-5, 6-20, 21-50, 51-100, 101-1000, 1001+]'
example:
values:
- 0-1
- 2-5
- 6-20
- 21-50
- 51-100
- 101-1000
- 1001+
google_category:
allOf:
- $ref: '#/components/schemas/IncludesFilter_StandardizedText_'
title: Google Category
description: 'Filter by company’s Google business category. Example: [Paving contractor, Retail]'
example:
values:
- construction
naics_category:
allOf:
- $ref: '#/components/schemas/IncludesFilter_NAICS_'
title: NAICS Category
description: 'Filter by NAICS code (2, 4, or full). Example: [23, 5611]'
example:
values:
- '541512'
linkedin_category:
allOf:
- $ref: '#/components/schemas/IncludesFilter_Text_'
title: LinkedIn Category
description: 'Filter by company’s LinkedIn business category. Example: [software development, investment banking]'
example:
values:
- retail
job_title:
allOf:
- $ref: '#/components/schemas/JobTitleFilter'
title: Job Title
description: 'Filter prospects by their job titles. Supports include_related_job_titles parameter. Example: [Sales Representative, SEO specialist, Technical Support Engineer]'
example:
values:
- Software Engineer
- Data Scientist
include_related_job_titles: false
skills:
allOf:
- $ref: '#/components/schemas/AnyMatchPhraseFilter_Text_'
title: Skills
description: 'Filter prospects by skills. Example: [python, project management]'
example:
values:
- python
- project management
nullable: true
interests:
allOf:
- $ref: '#/components/schemas/AnyMatchPhraseFilter_Text_'
title: Interests
description: 'Filter prospects by interests. Values should come from the interests autocomplete field. Example: [diy, travel]'
example:
values:
- diy
- travel
nullable: true
company_country_code:
allOf:
- $ref: '#/components/schemas/IncludesFilter_CountryCodeAlpha2_'
title: Company Country Code
description: 'Filter by company HQ country using alpha-2 codes. Example: [us, ca]'
example:
values:
- US
- CA
company_region_country_code:
allOf:
- $ref: '#/components/schemas/IncludesFilter_RegionCode_'
title: Company Region Country Code
description: 'Filter by company HQ region using ISO 3166-2 codes. Example: [us-ut, us-ca]'
example:
values:
- US-CA
- IL-TA
city_region_country:
allOf:
- $ref: '#/components/schemas/IncludesFilter_Text_'
title: City Region Country
description: Filter by city region country.
example:
values:
- Paris, FR
- Tel Aviv, IL
- Miami, FL, US
company_name:
allOf:
- $ref: '#/components/schemas/AnyMatchFilter_OrganizationName_'
title: Company Name
description: 'Filter by company name. Example: [Meta, Tesla]'
example:
values:
- Microsoft
- Google
has_website:
allOf:
- $ref: '#/components/schemas/ExistsFilter'
title: Has Website
description: 'Filter prospects by whether their company has a website. Categories: [True, False]'
example:
value: true
nullable: true
is_public_company:
allOf:
- $ref: '#/components/schemas/ExistsFilter'
title: Is Public Company
description: Filter prospects by whether their company is publicly traded.
example:
value: true
nullable: true
additionalProperties: false
type: object
title: ProspectsFetchFilters
example: {}
ProspectsFetchResponseV2:
properties:
response_context:
$ref: '#/components/schemas/ResponseContext'
data:
items:
$ref: '#/components/schemas/Prospect'
type: array
title: Data
description: List of prospects that match the filters.
default: []
total_results:
type: integer
minimum: 0.0
title: Total Results
description: The total number of prospects that match the filters.
default: 0
page:
allOf:
- $ref: '#/components/schemas/partner_service__models__prospects__requests__PageInfo'
title: Page
description: Page information including size and next cursor
type: object
required:
- response_context
- page
title: ProspectsFetchResponseV2
description: This is base response model for all responses in partner service.
JobSeniorityLevel:
type: string
enum:
- owner
- c-suite
- vice president
- director
- senior non-managerial
- manager
- partner
- non-managerial
- junior
- president
- senior manager
- advisor
- freelancer
- board member
- founder
- training
- unpaid
title: JobSeniorityLevel
description: 'The `JobSeniorityLevel` class is an enumeration that represents various levels of job seniority.
This enum is used to categorize jobs based on their seniority levels, such as:
- Entry-level positions
- Managerial roles
- Executive roles (e.g., C-Suite, VP)
These categories ensure consistent filtering and classification of job-related data across the application.'
ProspectMatchOutput:
properties:
input:
$ref: '#/components/schemas/ProspectMatchInput'
prospect_id:
type: string
pattern: ^[a-f0-9]{40}$
title: Prospect Id
type: object
required:
- input
title: ProspectMatchOutput
InternalEventIdentifier:
type: string
enum:
- prospect_changed_role
- prospect_changed_company
- prospect_job_start_anniversary
- ipo_announcement
- new_funding_round
- new_investment
- new_product
- new_office
- closing_office
- new_partnership
- merger_and_acquisitions
- hiring_in_creative_department
- hiring_in_education_department
- hiring_in_engineering_department
- hiring_in_finance_department
- hiring_in_health_department
- hiring_in_human_resources_department
- hiring_in_legal_department
- hiring_in_marketing_department
- hiring_in_operations_department
- hiring_in_professional_service_department
- hiring_in_sales_department
- hiring_in_support_department
- hiring_in_trade_department
- hiring_in_unknown_department
- increase_in_engineering_department
- increase_in_sales_department
- increase_in_marketing_department
- increase_in_operations_department
- increase_in_customer_service_department
- increase_in_all_departments
- decrease_in_engineering_department
- decrease_in_sales_department
- decrease_in_marketing_department
- decrease_in_operations_department
- decrease_in_customer_service_department
- decrease_in_all_departments
- employee_joined_company
- company_award
- outages_and_security_breaches
- cost_cutting
- lawsuits_and_legal_issues
title: InternalEventIdentifier
description: 'The `InternalEventIdentifier` class is an enumeration that defines internal event identifiers.
This enum is used to categorize and track internal events related to businesses and prospects.
All events are now handled internally through the event service.'
ProspectsFetchResponse:
properties:
response_context:
$ref: '#/components/schemas/ResponseContext'
data:
items:
$ref: '#/components/schemas/Prospect'
type: array
title: Data
description: List of prospects that match the filters.
default: []
total_results:
type: integer
minimum: 0.0
title: Total Results
description: The total number of Prospects that match the filters.
default: 0
page:
type: integer
minimum: 0.0
title: Page
description: The page number of the response.
default: 1
total_pages:
type: integer
minimum: 0.0
title: Total Pages
description: The total number of pages.
type: object
required:
- response_context
- total_pages
title: ProspectsFetchResponse
description: This is base response model for all responses in partner service.
IncludesFilter_StandardizedText_:
properties:
negate:
type: boolean
title: Negate
values:
items:
type: string
type: array
title: Values
additionalProperties: false
type: object
required:
- values
title: IncludesFilter[StandardizedText]
JobDepartment:
type: string
enum:
- administration
- real estate
- healthcare
- partnerships
- c-suite
- design
- human resources
- engineering
- education
- strategy
- product
- sales
- r&d
- retail
- customer success
- security
- public service
- creative
- it
- support
- marketing
- trade
- legal
- operations
- procurement
- data
- manufacturing
- logistics
- finance
title: JobDepartment
description: 'The `JobDepartment` class is an enumeration that represents various job departments.
This enum is used to categorize jobs based on their associated departments, such as:
- Engineering
- Marketing
- Sales
- Legal
- Customer Service
These categories ensure consistent filtering and classification of job-related data across the application.'
IncludesFilter_Text_:
properties:
negate:
type: boolean
title: Negate
values:
items:
type: string
type: array
title: Values
additionalProperties: false
type: object
required:
- values
title: IncludesFilter[Text]
ExistsFilter:
properties:
negate:
type: boolean
title: Negate
value:
type: boolean
title: Value
additionalProperties: false
type: object
required:
- value
title: ExistsFilter
IncludesFilter_NAICS_:
properties:
negate:
type: boolean
title: Negate
values:
items:
type: string
pattern: ^\d{2,6}$
type: array
title: Values
additionalProperties: false
type: object
required:
- values
title: IncludesFilter[NAICS]
RevenueRange:
type: string
enum:
- 0-500K
- 500K-1M
- 1M-5M
- 5M-10M
- 10M-25M
- 25M-75M
- 75M-200M
- 200M-500M
- 500M-1B
- 1B-10B
- 10B-100B
- 100B-1T
- 1T-10T
- 10T+
title: RevenueRange
description: The `RevenueRange` class is an enumeration that represents predefined ranges for the revenue of a company.
ResponseContext:
properties:
correlation_id:
type: string
title: Correlation Id
request_status:
$ref: '#/components/schemas/RequestStatus'
time_took_in_seconds:
type: number
title: Time Took In Seconds
type: object
required:
- correlation_id
- request_status
- time_took_in_seconds
title: ResponseContext
AutocompleteType:
enum:
- country
- country_code
- region_country_code
- google_category
- naics_category
- linkedin_category
- company_tech_stack_tech
- company_tech_stack_categories
- job_title
- company_size
- company_revenue
- number_of_locations
- company_age
- job_department
- job_level
- city_region_country
- company_name
- business_intent_topics
- city_region
- skills
- interests
title: AutocompleteType
description: Enum for autocomplete types.
ProspectsFetchRequest:
properties:
request_context:
type: object
title: Request Context
marked_for_null_replacement: true
nullable: true
mode:
allOf:
- $ref: '#/components/schemas/BaseFetchMode'
description: The mode of fetching prospects.
example: full
size:
type: integer
maximum: 60000.0
minimum: 1.0
title: Size
description: The maximum number of prospects to return. Max size is 60000 (which is the default value)
default: 60000
example: 3
page_size:
type: integer
maximum: 500.0
minimum: 1.0
title: Page Size
description: The maximum number of prospects in a page. Max limit is 500
example: 3
page:
type: integer
minimum: 1.0
title: Page
description: The page number to fetch.
default: 1
example: 1
nullable: true
exclude:
items:
type: string
pattern: ^[a-f0-9]{40}$
type: array
maxItems: 1000
title: Exclude
description: List of prospect ids to exclude from the response.
marked_for_null_replacement: true
nullable: true
filters:
allOf:
- $ref: '#/components/schemas/ProspectsFetchFilters'
title: Filters
example: {}
nullable: true
next_cursor:
type: string
title: Next Cursor
description: The sort values from the last document returned by the previous page. If provided, cursor pagination is used instead of page-based pagination. send "null" to start with next_cursor pagination from the beginning.
marked_for_null_replacement: true
nullable: true
additionalProperties: false
type: object
required:
- mode
- page_size
title: ProspectsFetchRequest
NumberOfLocations:
type: string
enum:
- 0-1
- 2-5
- 6-20
- 21-50
- 51-100
- 101-1000
- 1001+
title: NumberOfLocations
description: The `NumberOfLocations` class is an enumeration that represents predefined ranges
ProspectsEnrollmentsDeleteResponse:
properties:
response_context:
$ref: '#/components/schemas/ResponseContext'
status:
allOf:
- $ref: '#/components/schemas/RequestStatus'
default: success
type: object
required:
- response_context
title: ProspectsEnrollmentsDeleteResponse
description: This is base response model for all responses in partner service.
AnyMatchFilter_OrganizationName_:
properties:
negate:
type: boolean
title: Negate
values:
items:
type: string
maxLength: 256
type: array
title: Values
additionalProperties: false
type: object
required:
- values
title: AnyMatchFilter[OrganizationName]
IncludesFilter_JobSeniorityLevel_:
properties:
negate:
type: boolean
title: Negate
values:
items:
$ref: '#/components/schemas/JobSeniorityLevel'
type: array
additionalProperties: false
type: object
required:
- values
title: IncludesFilter[JobSeniorityLevel]
EntityType:
type: string
enum:
- business
- prospect
title: EntityType
description: "The `EntityType` class is an enumeration that defines the types of entities.\n\nThis enum is used to specify whether the entity is a business or a prospect.\nIt ensures consistent handling of entity types across the application.\n\nAttributes:\n BUSINESS: Represents a business entity.\n PROSPECT: Represents a prospect entity."
ProspectsMatchRequest:
properties:
request_context:
type: object
title: Request Context
marked_for_null_replacement: true
nullable: true
prospects_to_match:
items:
$
# --- truncated at 32 KB (145 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/explorium/refs/heads/main/openapi/explorium-prospects-api-openapi.yml