openapi: 3.1.0
info:
title: RocketReach People Lookup API
version: 1.0.0
description: Look up an individual professional's email, phone, social, and full profile from name + employer, LinkedIn
URL, or RocketReach profile ID. Supports single, bulk, and combined person+company lookups, with status polling and webhook
delivery.
contact:
name: RocketReach Support
email: api@rocketreach.co
license:
name: Proprietary
termsOfService: https://rocketreach.co/legal/terms-of-use
servers:
- url: https://api.rocketreach.co/api/v2
description: RocketReach v2 API
- url: https://api.rocketreach.co/v1/api
description: RocketReach v1 API
security:
- RocketReachAPIKey: []
paths:
/person/lookup:
get:
operationId: create_person_lookup
description: Person Enrichment API
summary: People Lookup API
parameters:
- in: query
name: current_employer
schema:
type: string
minLength: 1
description: 'Current employer of the desired profile. Must specify along with `name`.
- Example: `RocketReach`'
- in: query
name: email
schema:
type: string
format: email
minLength: 1
description: 'An email address for the desired profile.
- Example: `jamie@rocketreach.co`'
- in: query
name: id
schema:
type: integer
description: 'RocketReach internal unique profile ID.
- Example: `123456`'
- in: query
name: linkedin_ext_url
schema:
type: string
pattern: ''
minLength: 1
description: linkedin_ext_url deprecated, please use `linkedin_url` instead
deprecated: true
- in: query
name: linkedin_url
schema:
type: string
pattern: ''
minLength: 1
description: 'LinkedIn URL of the desired profile.
- Example: `www.linkedin.com/in/jamesgullbrand`'
- in: query
name: lookup_type
schema:
enum:
- standard
- premium
- premium (feeds disabled)
- bulk
- phone
- enrich
- ''
- null
type:
- string
- 'null'
description: 'Lookup type for the request
* `standard` - standard
* `premium` - premium
* `premium (feeds disabled)` - premium (feeds disabled)
* `bulk` - bulk
* `phone` - phone
* `enrich` - enrich'
- in: query
name: name
schema:
type: string
minLength: 1
description: 'Name of the desired profile. Must specify along with `current_employer`.
- Example: `Jamie Gullbrand`'
- in: query
name: npi_number
schema:
type: integer
description: 'An NPI number for the desired profile (US healthcare professional).
- Example: `1234567890`'
- in: query
name: return_cached_emails
schema:
type: boolean
default: true
description: 'Controls whether cached emails are included in the initial response when `lookup status = progress`.
When set to `false`, all email fields will be null until the lookup is complete and all emails are fully verified.
Use /checkStatus or Webhooks to retrieve the completed response with fully verified emails (`status = complete`).
Defaults to `true`.
NOTE: Default will change to false on September 1st, 2026. No cached emails will be returned in the initial response.
Use /checkStatus or webhooks to retrieve fully verified emails.'
- in: query
name: title
schema:
type: string
minLength: 1
description: 'Job title of the desired profile.
- Example: `Product Manager`'
- in: query
name: webhook_id
schema:
type: integer
description: Your webhook's unique ID number. Find it in your API Usage & Settings page.
tags:
- People Data API
security:
- RocketReachAPIKey: []
responses:
'200':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
content:
application/json:
schema:
$ref: '#/components/schemas/ProfileAPICompiledCompany'
description: Success. Returns the profile data for the person lookup.
'400':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Bad Request. The request is malformed or missing required parameters.
'401':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Unauthorized. API Key is missing or invalid.
'403':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Forbidden. API Key lacks permission to perform this action.
'404':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
/person/checkStatus:
get:
operationId: check_person_lookup_status
description: Check Person Lookup Status
summary: People Lookup Status API
parameters:
- in: query
name: ids
schema:
type: array
items:
type: integer
description: List of Profile IDs
tags:
- People Data API
security:
- RocketReachAPIKey: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ProfileAPICompiledCompany'
description: Success. Returns the status and profile data of the requested profiles.
'400':
description: Bad Request. The request is malformed or missing required parameters.
'401':
description: Unauthorized. API Key is missing or invalid.
'403':
description: Forbidden. API Key lacks permission to perform this action.
'404':
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
/bulkLookup:
post:
operationId: create_person_bulk_lookup
description: Bulk People Lookup by Criteria
summary: Bulk People Lookup API
tags:
- People Data API
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/APIBulkLookupQuery'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/APIBulkLookupQuery'
multipart/form-data:
schema:
$ref: '#/components/schemas/APIBulkLookupQuery'
required: true
security:
- RocketReachAPIKey: []
responses:
'200':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Success. Bulk lookup request accepted
'400':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Bad Request. The request is malformed or missing required parameters.
'401':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Unauthorized. API Key is missing or invalid.
'403':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Forbidden. API Key lacks permission to perform this action.
'404':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
/profile-company/lookup:
get:
operationId: create_person_and_company_lookup
description: Person and Company Lookup
summary: People and Company Lookup API
parameters:
- in: query
name: current_employer
schema:
type: string
minLength: 1
description: 'Current employer of the desired profile. Must specify along with `name`.
- Example: `RocketReach`'
- in: query
name: email
schema:
type: string
format: email
minLength: 1
description: 'An email address for the desired profile.
- Example: `jamie@rocketreach.co`'
- in: query
name: id
schema:
type: integer
description: 'RocketReach internal unique profile ID.
- Example: `123456`'
- in: query
name: linkedin_ext_url
schema:
type: string
pattern: ''
minLength: 1
description: linkedin_ext_url deprecated, please use `linkedin_url` instead
deprecated: true
- in: query
name: linkedin_url
schema:
type: string
pattern: ''
minLength: 1
description: 'LinkedIn URL of the desired profile.
- Example: `www.linkedin.com/in/jamesgullbrand`'
- in: query
name: lookup_type
schema:
enum:
- standard
- premium
- premium (feeds disabled)
- bulk
- phone
- enrich
- ''
- null
type:
- string
- 'null'
description: 'Lookup type for the request
* `standard` - standard
* `premium` - premium
* `premium (feeds disabled)` - premium (feeds disabled)
* `bulk` - bulk
* `phone` - phone
* `enrich` - enrich'
- in: query
name: name
schema:
type: string
minLength: 1
description: 'Name of the desired profile. Must specify along with `current_employer`.
- Example: `Jamie Gullbrand`'
- in: query
name: npi_number
schema:
type: integer
description: 'An NPI number for the desired profile (US healthcare professional).
- Example: `1234567890`'
- in: query
name: return_cached_emails
schema:
type: boolean
default: true
description: 'Controls whether cached emails are included in the initial response when `lookup status = progress`.
When set to `false`, all email fields will be null until the lookup is complete and all emails are fully verified.
Use /checkStatus or Webhooks to retrieve the completed response with fully verified emails (`status = complete`).
Defaults to `true`.
NOTE: Default will change to false on September 1st, 2026. No cached emails will be returned in the initial response.
Use /checkStatus or webhooks to retrieve fully verified emails.'
- in: query
name: title
schema:
type: string
minLength: 1
description: 'Job title of the desired profile.
- Example: `Product Manager`'
- in: query
name: webhook_id
schema:
type: integer
description: Your webhook's unique ID number. Find it in your API Usage & Settings page.
tags:
- People Data API
- Company Data API
security:
- RocketReachAPIKey: []
responses:
'200':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
content:
application/json:
schema:
$ref: '#/components/schemas/ProfileAPISerializerWithCompiledCompany'
description: Success. Returns the profile data and company data for the person / company lookup.
'400':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Bad Request. The request is malformed or missing required parameters.
'401':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Unauthorized. API Key is missing or invalid.
'403':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Forbidden. API Key lacks permission to perform this action.
'404':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
/universal/person/lookup:
get:
operationId: create_universal_person_lookup
description: Person Enrichment API
summary: ⭐ Universal People Lookup API
parameters:
- in: query
name: current_employer
schema:
type: string
minLength: 1
description: 'Current employer of the desired profile. Must specify along with `name`.
- Example: `RocketReach`'
- in: query
name: email
schema:
type: string
format: email
minLength: 1
description: 'An email address for the desired profile.
- Example: `jamie@rocketreach.co`'
- in: query
name: id
schema:
type: integer
description: 'RocketReach internal unique profile ID.
- Example: `123456`'
- in: query
name: linkedin_ext_url
schema:
type: string
pattern: ''
minLength: 1
description: linkedin_ext_url deprecated, please use `linkedin_url` instead
deprecated: true
- in: query
name: linkedin_url
schema:
type: string
pattern: ''
minLength: 1
description: 'LinkedIn URL of the desired profile.
- Example: `www.linkedin.com/in/jamesgullbrand`'
- in: query
name: metadata
schema:
type:
- object
- 'null'
additionalProperties: {}
description: User metadata about the profile, such as external ids, tags, notes, etc.
- in: query
name: name
schema:
type: string
minLength: 1
description: 'Name of the desired profile. Must specify along with `current_employer`.
- Example: `Jamie Gullbrand`'
- in: query
name: npi_number
schema:
type: integer
description: 'An NPI number for the desired profile (US healthcare professional).
- Example: `1234567890`'
- in: query
name: return_cached_emails
schema:
type: boolean
default: true
description: 'Controls whether cached emails are included in the initial response when `lookup status = progress`.
When set to `false`, all email fields will be null until the lookup is complete and all emails are fully verified.
Use /checkStatus or Webhooks to retrieve the completed response with fully verified emails (`status = complete`).
Defaults to `true`.
NOTE: Default will change to false on September 1st, 2026. No cached emails will be returned in the initial response.
Use /checkStatus or webhooks to retrieve fully verified emails.'
- in: query
name: reveal_detailed_person_enrichment
schema:
type: boolean
default: false
description: Whether to reveal the detailed person enrichment data for the desired profile
- in: query
name: reveal_healthcare_enrichment
schema:
type: boolean
default: false
description: Whether to reveal the healthcare enrichment data for the desired profile
- in: query
name: reveal_personal_email
schema:
type: boolean
default: false
description: Whether to reveal the personal email enrichment data for the desired profile
- in: query
name: reveal_phone
schema:
type: boolean
default: false
description: Whether to reveal the phone enrichment data for the desired profile
- in: query
name: reveal_professional_email
schema:
type: boolean
default: false
description: Whether to reveal the professional email enrichment data for the desired profile
- in: query
name: title
schema:
type: string
minLength: 1
description: 'Job title of the desired profile.
- Example: `Product Manager`'
- in: query
name: webhook_id
schema:
type: integer
description: Your webhook's unique ID number. Find it in your API Usage & Settings page.
tags:
- People Data API
security:
- RocketReachAPIKey: []
responses:
'200':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
content:
application/json:
schema:
$ref: '#/components/schemas/UniversalCreditPersonLookupOutputWithOptionalMetadata'
description: Success. Returns the profile data for the person lookup.
'400':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Bad Request. The request is malformed or missing required parameters.
'401':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Unauthorized. API Key is missing or invalid.
'403':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Forbidden. API Key lacks permission to perform this action.
'404':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
/universal/person/bulk_lookup:
post:
operationId: create_universal_person_bulk_lookup
description: Bulk People Lookup by Criteria
summary: ⭐ Universal Bulk People Lookup API
tags:
- People Data API
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UniversalCreditAPIBulkLookupQuery'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UniversalCreditAPIBulkLookupQuery'
multipart/form-data:
schema:
$ref: '#/components/schemas/UniversalCreditAPIBulkLookupQuery'
required: true
security:
- RocketReachAPIKey: []
responses:
'200':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Success. Bulk lookup request accepted
'400':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Bad Request. The request is malformed or missing required parameters.
'401':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Unauthorized. API Key is missing or invalid.
'403':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Forbidden. API Key lacks permission to perform this action.
'404':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
headers:
RR-Request-ID:
schema:
type: string
format: uuid
description: Lookup unique identifier, will also be sent in the header of webhook.
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
/universal/person/check_status:
get:
operationId: check_universal_person_lookup_status
description: Check Universal Person Lookup Status
summary: ⭐ Universal People Lookup Status API
parameters:
- in: query
name: ids
schema:
type: array
items:
type: integer
description: List of Profile IDs
tags:
- People Data API
security:
- RocketReachAPIKey: []
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/UniversalCreditPersonLookupOutput'
description: Success. Returns the status and profile data of the requested profiles.
'400':
description: Bad Request. The request is malformed or missing required parameters.
'401':
description: Unauthorized. API Key is missing or invalid.
'403':
description: Forbidden. API Key lacks permission to perform this action.
'404':
description: Not Found. The requested resource (e.g., profile) does not exist.
'429':
description: Too Many Requests. API request limit reached -- slow down requests.
'500':
description: Internal Server Error. Unexpected error on RocketReach servers. Try again later.
components:
securitySchemes:
RocketReachAPIKey:
type: apiKey
name: Api-Key
in: header
description: RocketReach account API key. You can locate your API Key from the "My API Key" section of the [API account
page](https://rocketreach.co/account?section=nav_gen_api). Requests to the API are authenticated using the Api-Key
request header. Older clients may use an `api_key` query parameter, but this behavior is deprecated.
schemas:
EducationAPI:
type: object
properties:
major:
type:
- string
- 'null'
description: Primary field of study of the educational experience
school:
type:
- string
- 'null'
description: School/University of the educational experience
degree:
type:
- string
- 'null'
description: Degree obtained through the educational experience
start:
type:
- integer
- 'null'
description: Start date of the educational experience
end:
type:
- integer
- 'null'
description: End date of the educational experience
JobHistoryAPICompiledCompany:
type: object
properties:
start_date:
type:
- string
- 'null'
description: Start date of the work experience
end_date:
type: string
default: Present
description: End date of the work experience (Present if experience is current)
company:
type:
- string
- 'null'
description: Name of the company
company_name:
type: string
description: Name of the company
company_id:
type:
- integer
- 'null'
description: RocketReach internal unique company ID
company_linkedin_url:
type: string
readOnly: true
description: Linkedin URL of the company
company_city:
type: string
readOnly: true
description: City of the company's location
company_region:
type: string
readOnly: true
description: Region of the company's location
company_country_code:
type: string
readOnly: true
description: Country code of the company's location
department:
type: string
description: Department of the work experience
title:
type: string
description: Job title of the work experience
highest_level:
type: string
description: Highest level of the work experience
description:
type: string
description: Description of the work experience
last_updated:
type: string
format: date-time
description: Timestamp of the last update of this work experience
sub_department:
type:
- string
- 'null'
description: Sub-department of the work experience
is_current:
type: boolean
default: false
description: True if the experience is the profile's current role, False otherwise
ProfileAPICompiledCompany:
type: object
properties:
profile_list:
allOf:
- $ref: '#/components/schemas/ProfileListAPI'
readOnly: true
description: Profile List this contact was added to.
id:
type: integer
readOnly: true
description: RocketReach internal unique profile ID
status:
type: string
readOnly: true
description: Status of the profile lookup. Either "complete", "progress", "searching" or "not queued"
example: progress
name:
type:
- string
- 'null'
maxLength: 128
description: Name of the profile
profile_pic:
type:
- string
- 'null'
readOnly: true
description: URL containing this profile's picture (if available)
linkedin_url:
type:
- string
- 'null'
readOnly: true
description: LinkedIn URL of the profile
connections:
type: integer
description: Number of LinkedIn connections for this profile
links:
type: object
additionalProperties: {}
description: Social media links for the profile
location:
type:
- string
- 'null'
maxLength: 256
description: Location of the profile
current_title:
type:
- string
- 'null'
readOnly: true
description: Current job title of the profile
current_employer:
type:
- string
- 'null'
readOnly: true
description: Current employer of the profile
current_employer_id:
type: integer
description: RocketReach internal unique company ID
current_employer_domain:
type:
- string
- 'null'
description: Domain for the employer of the profile
current_employer_website:
type:
- string
- 'null'
description: Website for the employer of the profile
current_employer_linkedin_url:
type:
- string
- 'null'
description: LinkedIn URL for the employer of the profile
current_employer_industry:
type:
- string
- 'null'
description: This person's company's industry.
job_history:
type: array
items:
$ref: '#/components/schemas/JobHistoryAPICompiledCompany'
description: List of professional experiences for the profile
education:
type: array
items:
$ref: '#/components/schemas/EducationAPI'
description: List of educational experiences for the profile
skills:
type:
- array
- 'null'
items:
type: string
description: List of skills for the profile
birth_year:
type: integer
description: Year of birth of the profile
region_latitude:
type:
- number
- 'null'
format: double
description: Latitude of the region of the profile
region_longitude:
type:
- number
- 'null'
format: double
description: Longitude of the region of the profile
city:
type:
- string
- 'null'
maxLength: 128
description: City of the profile
region:
type:
- string
- 'null'
maxLength: 3
description: Region of the profile
country:
type: string
readOnly: true
description: Country of the profile
country_code:
type:
- string
- 'null'
maxLength: 2
description: Country code of the profile
npi_data:
type: object
description: List of NPI data objects for the profile
properties:
npi_number:
type: string
credentials:
type: string
license_number:
type: string
specialization:
type: string
readOnly: true
tags:
type: string
readOnly: true
return_cached_emails:
type: boolean
readOnly: true
description: Indicates if cached emails were returned in the initial synchronous response. If false, email fields
will be null until the lookup is complete.
linkedin_url_active:
type: boolean
description: 'Indicates if the LinkedIn profile exists or is no longer available.
* `True` = Active (as of last update)
* `False` = Unavailable (as of last update)'
readOnly: true
recommended_email:
type:
- string
- 'null'
readOnly: true
description: Recommended email for the profile
recommended_personal_email:
type:
- string
- 'null'
readOnly: true
description: Recommended personal email for the profile
recommended_professional_email:
type:
- string
- 'null'
readOnly: true
description: Recommended professional email for the profile
current_work_email:
type:
- string
- 'null'
readOnly: true
description: Current work email for the profile
current_personal_email:
type:
- string
- 'null'
readOnly: true
description: Current personal email for the profile
emails:
type: array
items:
$ref: '#/components/schemas/ProfileEmailAPI'
readOnly: true
description: List of email objects for the profile
phones:
type: array
items:
$ref: '#/components/schemas/ProfilePhoneAPI'
readOnly: true
description: List of phone number objects for the profile
ProfileEmailAPI:
type: object
properties:
email:
type: string
readOnly: true
description: 'The email address.
- Example: `info@rocketreach.co`'
example: info@rocketreach.co
smtp_valid:
type:
- string
- 'null'
readOnly: true
description: 'SMTP validation result. Options are `valid`, `invalid`, `accept-all`, or `unknown`.
- Example: `valid`'
example: valid
type:
type:
- string
- 'null'
readOnly: true
description: 'The type of email address. Options are `personal`, `professional`, `disposable`, or `role-based`.
- Example: `professional`'
example: professional
last_validation_check:
type:
- string
- 'null'
readOnly: true
description: 'Timestamp of the last validation check of the email address.
- Example: `2026-01-01T12:00:00Z`'
example: '2026-01-01T12:00:00Z'
grade:
type: string
readOnly: true
description: RocketReach internal grade for the email. See Email
Grades for details.
example: A-
ProfileListAPI:
type: object
properties:
id:
type: integer
readOnly: true
description: RocketReach internal unique profile list ID
example: 123456
name:
type: string
readOnly: true
description: Name of the profile list
example: Example List Name
ProfilePhoneAPI:
type: object
properties:
number:
type: string
description: 'The phone number in international format
- Example: `+1 234-555-6789`'
example: +1 234-555-6789
e164:
type:
- string
- 'null'
description: 'The phone number in E.164 format
- Example: `+12345556789`'
example: '+12345556789'
country_code:
type:
- string
- 'null'
description: 'The country code associated with the phone number
- Example: `1` for United States'
example: '1'
extension:
type:
- string
- 'null'
description: 'The phone extension, if applicable
- Example: `123`'
example: '123'
type:
type: string
default: unknown
description: 'The type of phone number. Options are `mobile`, `landline`, `work`, `unknown`, `home`, or `fax`.
- Example: `mobile`'
example: mobile
validity:
type: string
default: unknown
description: 'Indicates whether a phone number matches a valid numbering pattern for the country/region. Options
are valid or unknown. All invalid phones are removed
- Example: `valid`'
example: valid
recommended:
type: boolean
default: false
description: 'Indicates whether this is the recommended phone number to use as the best option for connecting with
the person.
- Example: `true`'
example: true
premium:
type: boolean
default: false
description: '`premium` deprecated'
deprecated: true
example: true
last_checked:
type: string
format: date-time
description: '`last_checked` deprecated'
deprecated: true
APIBulkLookupQuery:
type: object
properties:
queries:
type: array
items:
$ref: '#/components/schemas/ProfileMatch'
description: List of profile lookup queries for between 10 and 100 profiles
example: '[''linkedin_url'': ''https://www.linkedin.com/in/benioff''}, etc x10+]'
profile_list:
type: string
default: API Bulk Lookup
description: Name of a profile list to add looked up profiles to upon completion
example: API Bulk Lookup
webhook_id:
type: integer
description: Webhook ID to post lookup results to upon completion. Find your webhook ID [here](https://rocketreach.co/account?section=nav_gen_api).
example: 12345
LookupTypeEnum:
enum:
- standard
- premium
- premium (feeds disabled)
- bulk
- phone
- enrich
type: string
description: '* `standard` - standard
* `premium` - premium
* `premium (feeds disabled)` - premium (feeds disabled)
* `bulk` - bulk
* `phone` - phone
* `enrich` - enrich'
ProfileMatch:
type: object
properties:
id:
type: integer
description: 'RocketReach internal unique profile ID.
- Example: `123456`'
example: 123456
name:
type: string
description: 'Name of the desired profile. Must specify along with `current_employer`.
- Example: `Jamie Gullbrand`'
example: Jamie Gullbrand
current_employer:
type: string
description: 'Current employer of the desired profile. Must specify along with `name`.
- Example: `RocketReach`'
example: RocketReach
title:
type: string
description: 'Job title of the desired profile.
- Example: `Product Manager`'
example: Product Manager
linkedin_ext_url:
type: string
description: linkedin_ext_url deprecated, please use `linkedin_url`
pattern: ''
deprecated: true
linkedin_url:
type: string
description: 'LinkedIn URL of the desired profile.
- Example: `www.linkedin.com/in/jamesgullbrand`'
pattern: ''
example: www.linkedin.com/in/jamesgullbrand
email:
type: string
format: email
description: 'An email address for the desired profile.
- Example: `jamie@rocketreach.co`'
example: jamie@rocketreach.co
npi_number:
type: integer
description: 'An NPI number for the desired profile (US healthcare professional)
- Example: `1234567890`'
example: '1234567890'
lookup_type:
allOf:
- $ref: '#/components/schemas/LookupTypeEnum'
description: 'Lookup type for the request
* `standard` - standard
* `premium` - premium
* `premium (feeds disabled)` - premium (feeds disabled)
* `bulk` - bulk
* `phone` - phone
* `enrich` - enrich'
default: standard
example: standard
metadata:
type:
- object
- 'null'
additionalProperties: {}
description: User metadata about the profile, such as external ids, tags, notes, etc.
CompiledCompanyAPI:
type: object
description: Serializes purchased company fields when looked up.
properties:
id:
type: integer
description: RocketReach internal unique company ID
example: 123456
name:
type: string
description: Name of the company
domain:
type: string
description: Web domain for the company
email_domain:
type: string
description: Email domain for the company
website_domain:
type:
- string
- 'null'
readOnly: true
description: Website for the company
ticker_symbol:
type:
- string
- 'null'
description: Ticker symbol for the company (if available)
links:
type:
- object
- 'null'
properties:
facebook:
type: string
twitter:
type: string
linkedin:
type: string
readOnly: true
description: Social media links for the company
year_founded:
type:
- integer
- 'null'
readOnly: true
description: Year the company was founded
address:
$ref: '#/components/schemas/CompiledCompanyAddress'
description: Street address of the company
phone:
type:
- string
- 'null'
description: Phone number for the company
fax:
type:
- string
- 'null'
description: Fax number for the company
num_employees:
type:
- integer
- 'null'
description: Number of employees working at the company
revenue:
type:
- integer
- 'null'
description: Revenue of the company
funding_investors:
type: array
items:
type: string
description: List of names of founding investors for the company
industry:
type:
- string
- 'null'
readOnly: true
description: Industry of the company
sic_codes:
type: array
items:
type: integer
description: List of SIC codes for the company. Standard Industrial Classification (SIC) codes, are four-digit numerical
codes used to categorize businesses by their primary industry
rr_profile_url:
type: string
readOnly: true
description: URL of the RocketReach company profile page for the company
description:
type:
- string
- 'null'
description: Description of the company
industry_keywords:
type: array
items:
type: string
readOnly: true
description: List of industry keywords for the company
CompiledCompanyAddress:
type: object
properties:
description:
type: string
readOnly: true
description: Description of the company location
street:
type: string
readOnly: true
description: Street of the company address
city:
type: string
readOnly: true
description: City of the company address
region:
type: string
readOnly: true
description: Region of the company address
region_code:
type: string
readOnly: true
description: Region code of the company address
postal_code:
type: string
readOnly: true
description: Postal code of the company address
country:
type: string
readOnly: true
description: Country of the company address
country_code:
type: string
readOnly: true
description: Country code of the company address
ProfileAPISerializerWithCompiledCompany:
type: object
properties:
profile_list:
allOf:
- $ref: '#/components/schemas/ProfileListAPI'
readOnly: true
description: Profile List this contact was added to.
id:
type: integer
readOnly: true
description: RocketReach internal unique profile ID
status:
type: string
readOnly: true
description: Status of the profile lookup. Either "complete", "progress", "searching" or "not queued"
example: progress
name:
type:
- string
- 'null'
maxLength: 128
description: Name of the profile
profile_pic:
type:
- string
- 'null'
readOnly: true
description: URL containing this profile's picture (if available).
linkedin_url:
type:
- string
- 'null'
readOnly: true
description: LinkedIn URL of the profile
connections:
type: integer
description: Number of LinkedIn connections for this profile
links:
type: object
additionalProperties: {}
description: Social media links for the profile
location:
type:
- string
- 'null'
maxLength: 256
description: Location of the profile
current_title:
type:
- string
- 'null'
readOnly: true
description: Current job title of the profile
current_employer:
type:
- string
- 'null'
readOnly: true
description: Current employer of the profile
current_employer_id:
type: integer
description: RocketReach internal unique company ID
current_employer_domain:
type:
- string
- 'null'
description: This person's company's domain name.
current_employer_website:
type:
- string
- 'null'
description: This person's company's website.
current_employer_linkedin_url:
type:
- string
- 'null'
description: This person's company's LinkedIn URL.
current_employer_industry:
type:
- string
- 'null'
description: This person's company's industry.
job_history:
type: array
items:
$ref: '#/components/schemas/JobHistoryAPICompiledCompany'
description: List of professional experiences for the profile
education:
type: array
items:
$ref: '#/components/schemas/EducationAPI'
description: List of educational experiences for the profile
skills:
type:
- array
- 'null'
items:
type: string
description: List of skills for the profile
birth_year:
type: integer
description: Year of birth of the profile
region_latitude:
type:
- number
- 'null'
format: double
description: Latitude of the region of the profile
region_longitude:
type:
- number
- 'null'
format: double
description: Longitude of the region of the profile
city:
type:
- string
- 'null'
maxLength: 128
description: City of the profile
region:
type:
- string
- 'null'
maxLength: 3
description: Region of the profile
country:
type: string
readOnly: true
description: Country of the profile
country_code:
type:
- string
- 'null'
maxLength: 2
description: Country code of the profile
npi_data:
type: object
description: List of NPI data objects for the profile
properties:
npi_number:
type: string
credentials:
type: string
license_number:
type: string
specialization:
type: string
readOnly: true
tags:
type: string
readOnly: true
return_cached_emails:
type: boolean
readOnly: true
description: Indicates if cached emails were returned in the initial synchronous response. If false, email fields
will be null until the lookup is complete.
linkedin_url_active:
type: boolean
description: 'Indicates if the LinkedIn profile exists or is no longer available.
* `True` = Active (as of last update)
* `False` = Unavailable (as of last update)'
readOnly: true
recommended_email:
type:
- string
- 'null'
readOnly: true
description: Recommended email for the profile
recommended_personal_email:
type:
- string
- 'null'
readOnly: true
description: Recommended personal email for the profile
recommended_professional_email:
type:
- string
- 'null'
readOnly: true
description: Recommended professional email for the profile
current_work_email:
type:
- string
- 'null'
readOnly: true
description: Current work email for the profile
current_personal_email:
type:
- string
- 'null'
readOnly: true
description: Current personal email for the profile
emails:
type: array
items:
$ref: '#/components/schemas/ProfileEmailAPI'
readOnly: true
description: List of email objects for the profile
phones:
type: array
items:
$ref: '#/components/schemas/ProfilePhoneAPI'
readOnly: true
description: List of phone number objects for the profile
company:
$ref: '#/components/schemas/CompiledCompanyAPI'
description: Object representing the employer of the profile
UniversalCreditPersonLookupOutputWithOptionalMetadata:
type: object
properties:
profile_list:
allOf:
- $ref: '#/components/schemas/ProfileListAPI'
readOnly: true
description: Profile List this contact was added to.
id:
type: integer
readOnly: true
description: RocketReach internal unique profile ID
status:
type: string
readOnly: true
description: Status of the profile lookup. Either "complete", "progress", "searching" or "not queued"
example: progress
name:
type:
- string
- 'null'
maxLength: 128
description: Name of the profile
profile_pic:
type:
- string
- 'null'
readOnly: true
description: URL containing this profile's picture (if available).
linkedin_url:
type:
- string
- 'null'
readOnly: true
description: LinkedIn URL of the profile
connections:
type: integer
description: Number of LinkedIn connections for this profile
location:
type:
- string
- 'null'
maxLength: 256
description: Location of the profile
current_title:
type:
- string
- 'null'
readOnly: true
description: Current job title of the profile
current_employer:
type:
- string
- 'null'
readOnly: true
description: Current employer of the profile
current_employer_id:
type: integer
description: RocketReach internal unique company ID
current_employer_domain:
type:
- string
- 'null'
description: This person's company's domain name.
current_employer_website:
type:
- string
- 'null'
description: This person's company's website.
current_employer_linkedin_url:
type:
- string
- 'null'
description: This person's company's LinkedIn URL.
birth_year:
type: string
description: Year of birth of the profile
region_latitude:
type:
- number
- 'null'
format: double
description: Latitude of the region of the profile
region_longitude:
type:
- number
- 'null'
format: double
description: Longitude of the region of the profile
city:
type:
- string
- 'null'
maxLength: 128
description: City of the profile
region:
type:
- string
- 'null'
maxLength: 3
description: Region of the profile
country:
type: string
readOnly: true
description: Country of the profile
country_code:
type:
- string
- 'null'
maxLength: 2
description: Country code of the profile
return_cached_emails:
type: boolean
readOnly: true
description: Indicates if cached emails were returned in the initial synchronous response. If false, email fields
will be null until the lookup is complete.
linkedin_url_active:
type: boolean
description: 'Indicates if the LinkedIn profile exists or is no longer available.
* `True` = Active (as of last update)
* `False` = Unavailable (as of last update)'
readOnly: true
job_history:
type: array
items:
$ref: '#/components/schemas/JobHistoryAPICompiledCompany'
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] List of professional
experiences for the profile'
education:
type: array
items:
$ref: '#/components/schemas/EducationAPI'
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] List of educational
experiences for the profile'
skills:
type:
- array
- 'null'
items:
type: string
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] List of skills
for the profile'
links:
type: object
additionalProperties: {}
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] Social media
links for the profile'
npi_data:
type: object
description: '[`reveal_healthcare_enrichment=true` required or this field will not be returned] List of NPI data
objects for the profile'
properties:
npi_number:
type: string
credentials:
type: string
license_number:
type: string
specialization:
type: string
readOnly: true
recommended_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_personal_email OR reveal_professional_email=true` required or this field will not be returned]
Recommended email for the profile'
emails:
type: array
items:
$ref: '#/components/schemas/ProfileEmailAPI'
readOnly: true
description: '[`reveal_personal_email OR reveal_professional_email=true` required or this field will not be returned]
List of email objects for the profile'
recommended_personal_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_personal_email=true` required or this field will not be returned] Recommended personal email
for the profile'
current_personal_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_personal_email=true` required or this field will not be returned] Current personal email
for the profile'
recommended_professional_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_professional_email=true` required or this field will not be returned] Recommended professional
email for the profile'
current_work_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_professional_email=true` required or this field will not be returned] Current work email
for the profile'
phones:
type: array
items:
$ref: '#/components/schemas/ProfilePhoneAPI'
readOnly: true
description: '[`reveal_phone=true` required or this field will not be returned] List of phone number objects for
the profile'
metadata:
type: object
additionalProperties: {}
readOnly: true
description: User metadata associated with the profile lookup
UniversalCreditAPIBulkLookupQuery:
type: object
properties:
queries:
type: array
items:
$ref: '#/components/schemas/UniversalCreditPersonLookupInput'
description: Specify the lookup criteria for up to 100 people.
profile_list:
type: string
default: API Bulk Lookup
description: Add specified contacts to this profile list.
webhook_id:
type: integer
description: ID of the webhook to post lookup results upon completion.
UniversalCreditPersonLookupInput:
type: object
properties:
id:
type: integer
description: RocketReach internal unique profile ID
name:
type: string
description: Name of the desired profile. Must specify along with `current_employer`
current_employer:
type: string
description: Current employer of the desired profile. Must specify along with `name`
title:
type: string
description: Job title of the desired profile
linkedin_ext_url:
type: string
description: linkedin_ext_url deprecated, please use `linkedin_url`
pattern: ''
deprecated: true
linkedin_url:
type: string
description: LinkedIn URL of the desired profile
pattern: ''
email:
type: string
format: email
description: An email address for the desired profile
npi_number:
type: integer
description: An NPI number for the desired profile (US healthcare professional)
reveal_phone:
type: boolean
default: false
description: Whether to reveal the phone enrichment data for the desired profile
reveal_professional_email:
type: boolean
default: false
description: Whether to reveal the professional email enrichment data for the desired profile
reveal_personal_email:
type: boolean
default: false
description: Whether to reveal the personal email enrichment data for the desired profile
reveal_detailed_person_enrichment:
type: boolean
default: false
description: Whether to reveal the detailed person enrichment data for the desired profile
reveal_healthcare_enrichment:
type: boolean
default: false
description: Whether to reveal the healthcare enrichment data for the desired profile
metadata:
type:
- object
- 'null'
additionalProperties: {}
description: User metadata about the profile, such as external ids, tags, notes, etc.
UniversalCreditPersonLookupOutput:
type: object
properties:
profile_list:
allOf:
- $ref: '#/components/schemas/ProfileListAPI'
readOnly: true
description: Profile List this contact was added to.
id:
type: integer
readOnly: true
description: RocketReach internal unique profile ID
status:
type: string
readOnly: true
description: Status of the profile lookup. Either "complete", "progress", "searching" or "not queued"
example: progress
name:
type:
- string
- 'null'
maxLength: 128
description: Name of the profile
profile_pic:
type:
- string
- 'null'
readOnly: true
description: URL containing this profile's picture (if available).
linkedin_url:
type:
- string
- 'null'
readOnly: true
description: LinkedIn URL of the profile
connections:
type: integer
description: Number of LinkedIn connections for this profile
location:
type:
- string
- 'null'
maxLength: 256
description: Location of the profile
current_title:
type:
- string
- 'null'
readOnly: true
description: Current job title of the profile
current_employer:
type:
- string
- 'null'
readOnly: true
description: Current employer of the profile
current_employer_id:
type: integer
description: RocketReach internal unique company ID
current_employer_domain:
type:
- string
- 'null'
description: This person's company's domain name.
current_employer_website:
type:
- string
- 'null'
description: This person's company's website.
current_employer_linkedin_url:
type:
- string
- 'null'
description: This person's company's LinkedIn URL.
birth_year:
type: string
description: Year of birth of the profile
region_latitude:
type:
- number
- 'null'
format: double
description: Latitude of the region of the profile
region_longitude:
type:
- number
- 'null'
format: double
description: Longitude of the region of the profile
city:
type:
- string
- 'null'
maxLength: 128
description: City of the profile
region:
type:
- string
- 'null'
maxLength: 3
description: Region of the profile
country:
type: string
readOnly: true
description: Country of the profile
country_code:
type:
- string
- 'null'
maxLength: 2
description: Country code of the profile
return_cached_emails:
type: boolean
readOnly: true
description: Indicates if cached emails were returned in the initial synchronous response. If false, email fields
will be null until the lookup is complete.
linkedin_url_active:
type: boolean
description: 'Indicates if the LinkedIn profile exists or is no longer available.
* `True` = Active (as of last update)
* `False` = Unavailable (as of last update)'
readOnly: true
job_history:
type: array
items:
$ref: '#/components/schemas/JobHistoryAPICompiledCompany'
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] List of professional
experiences for the profile'
education:
type: array
items:
$ref: '#/components/schemas/EducationAPI'
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] List of educational
experiences for the profile'
skills:
type:
- array
- 'null'
items:
type: string
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] List of skills
for the profile'
links:
type: object
additionalProperties: {}
description: '[`reveal_detailed_person_enrichment=true` required or this field will not be returned] Social media
links for the profile'
npi_data:
type: object
description: '[`reveal_healthcare_enrichment=true` required or this field will not be returned] List of NPI data
objects for the profile'
properties:
npi_number:
type: string
credentials:
type: string
license_number:
type: string
specialization:
type: string
readOnly: true
recommended_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_personal_email OR reveal_professional_email=true` required or this field will not be returned]
Recommended email for the profile'
emails:
type: array
items:
$ref: '#/components/schemas/ProfileEmailAPI'
readOnly: true
description: '[`reveal_personal_email OR reveal_professional_email=true` required or this field will not be returned]
List of email objects for the profile'
recommended_personal_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_personal_email=true` required or this field will not be returned] Recommended personal email
for the profile'
current_personal_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_personal_email=true` required or this field will not be returned] Current personal email
for the profile'
recommended_professional_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_professional_email=true` required or this field will not be returned] Recommended professional
email for the profile'
current_work_email:
type:
- string
- 'null'
readOnly: true
description: '[`reveal_professional_email=true` required or this field will not be returned] Current work email
for the profile'
phones:
type: array
items:
$ref: '#/components/schemas/ProfilePhoneAPI'
readOnly: true
description: '[`reveal_phone=true` required or this field will not be returned] List of phone number objects for
the profile'
tags: []